【中国海洋大学】操作系统随堂测试1整理
1.操作系统是什么?
答1:一组能有效地组织和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。
答2:操作系统是管理计算机硬件与软件资源的计算机程序。操作系统需要处理如管理与配置内存、决定系统资源供需的有限次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户操作的界面。
本题要点:
- 操作系统是硬件上的第一层软件
- 操作系统是对硬件的首次扩充
- 操作系统是用户与硬件之间的接口
2.单道批处理系统中运行的是:
答:程序
注:
- 什么叫单道:内存中始终只保持一个作业运行
- 什么叫批处理:成批处理作业
3.多道批处理系统中运行的是:
答:进程
【补充】多道批处理系统的性质
多道性:
- 内存中同时存放多个作业,并发执行;
- 宏观上并行运行
- 微观上串行运行:各作业交替使用CPU
无序性:
- 先进入内存的作业未必先执行完成
调度性:
- 作业要经历两次调度:作业调度、进程调度
【补充】如何区分进程和程序?
进程和程序的本质区别是:
- 执行状态,进程具备执行能力,程序没有主动的执行能力;
- 资源分配,进程需要操作系统为其分配资源,程序只是一份静态的代码,不需要分配额外的资源;
- 生命周期,进程具有创建,执行,暂停,恢复和终止等阶段,程序的生命周期只是指它的存在时间;
- 上下文切换,进程之间的切换需要保存和恢复上下文信息,程序只是代码的集合,没有上下文切换的概念;
- 通信和同步等等。
4.在单处理系统中,怎样理解并发?
答:在宏观上并发,在微观上串行。
【理解】几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。
5.进程的组成结构三要素?
答:
- 程序
- 数据
- 进程控制块(PCB)
6.微内核架构中有三项关键技术是哪些?
答:
- 采用面向对象技术(面向对象的编程)
- 基于客户/服务器模式
- 应用机制与策略分离原则(或“微内核”)
【补充】微内核
参考:https://baike.baidu.com/item/%E5%BE%AE%E5%86%85%E6%A0%B8/3856137?fr=ge_ala
微内核,是一种能够提供必要服务的操作系统内核;其中这些必要的服务包括任务,线程,交互进程通信以及内存管理等等。所有服务(包括设备驱动)在用户模式下运行,而处理这些服务同处理其他的任何一个程序一样。因为每个服务只是在自己的地址空间运行,所以这些服务之间彼此之间都受到了保护。
7.进程的基本状态转换图(7种)?
【理解】基本状态-3种(活动就绪、活动阻塞、执行)+2静止(静止就绪、静止阻塞)+创建/终止
8.操作系统的虚拟技术(列举两种)?
答:
- 时分复用技术
- 空分复用技术
9.for循环语句的程序前驱图是有向循环图吗?为什么?
答:不是。因为在编译for循环语句时是顺序执行的。
【理解】for语句在这个层面可以仅仅理解为是一种代码简写
10.PCB的核心功能是什么?(列出2条以上)
答:
- 作为独立运行基本单位的标志
- 能实现间断性运行的方式
- 提供进程管理所需要的信息
- 提供进程调度所需要的信息
- 实现与其它进程的同步与通信
- 记录进程的执行情况
【补充】PCB(进程管理块)
参考:https://baike.baidu.com/item/PCB/16067368?fr=aladdin
为了描述控制进程的运行,系统中存放进程的管理和控制信息的数据结构称为进程控制块(PCB Process Control Block),它是进程实体的一部分,是操作系统中最重要的记录性数据结构。它是进程管理和控制的最重要的数据结构,每一个进程均有一个PCB,在创建进程时,建立PCB,伴随进程运行的全过程,直到进程撤消而撤消。
11.PCB是工作在内核还是用户?
答:内核(因为PCB属于操作系统自己的一个对象)
12.中断程序是工作在内核态还是用户态?
答:内核态(中断非常贴近硬件)
13.用户态向内核态转换的两种形式是什么?
答:
- 系统调用
- 中断
14.进程对内存资源的争抢会造成进程进入哪种状态?
答:挂起
15.阻塞状态的进程获得I/O或其所请求资源后会转入哪种状态?
答:就绪
16.内存空间不足时,阻塞、执行、就绪哪种状态下的进程容易被挂起?
答:阻塞(理解:本来这个进程就没准备好,挂起它对整个的操作影响最小)
17.画一下以下程序的前驱图
S1: x = a + b
S2: y = x + a
S3: z = y + b
S4: z = z + x
S5: h = y + z
答:S1->S2->S3->S4->S5 (每个Si上面有圈)
注:不需要S1到S4的箭头,因为可以通过路径S1->S2->S3->S4传输x的值。
18.分时系统是为了满足哪种需求而提出的?实现分时系统需要解决的两大关键挑战是什么?
答:满足UI交互的需求
关键挑战:1)及时接收 2)及时处理
19.飞机系统是否属于OS?是哪一种?
答:属于;实时操作系统
20.进程阻塞和唤醒的原语是什么?挂起和激活的原语是什么?
答:
- 阻塞:block
- 唤醒:wakeup
- 挂起:suspend
- 激活:active