(1)要求理解的内容包括:操作系统的概念、设计目标、功能及特征,操作系统运行硬件基础,操作系统接口分类及组成,操作系统内核用典型数据结构; (2)要求掌握的内容包括:系统调用实现机制,操作系统启动引导过程。
1.1 操作系统的概念、设计目标、功能及特征
概念 操作系统是控制和管理计算机系统内各种硬件和软件资源、有效地组织多道程序运统软件(或程序集合),是用户和计算机之间的接口。
设计目标
【2012】方便性和有效性是设计操作系统的两个主要目标,以两种操作系统的技术位例,分别说明它们是如何实现这两个目标的(一个实现方便性的例子,一个实现有效性的例子) 方便性:操作系统提供了良好的用户接口,用户按需要输入命令,操作系统按命令去控制程序的执行;用户也可以在程序中调用操作系统的功能模块完成相应服务,而不必了解硬件的物理特性。 有效性:提高系统资源利用率,提高系统工作效率。 ①有效地管理和分配硬件、软件资源,提高系统工作效率; ②操作系统扩充硬件的功能,使硬件的功能发挥的更好; ③操作系统使用户合理共享资源,防止各用户间的相互干扰; ④操作系统合理地自主计算机的工作流程,使用户程序能顺利完成。
【2013】列举三种操作系统实现有效性的方法和三种实现方便性的方法。 方便性: ①虚拟处理机 ②虚拟存储器 ③操作系统提供了良好的用户接口,用户按需要输入命令,操作系统按命令去控制程序的执行;用户也可以在程序中调用操作系统的功能模块完成相应服务,而不必了解硬件的物理特性。 有效性: ①有效地管理和分配硬件、软件资源,提高系统工作效率; ②操作系统扩充硬件的功能,使硬件的功能发挥的更好; ③操作系统使用户合理共享资源,防止各用户间的相互干扰; ④操作系统合理地自主计算机的工作流程,使用户程序能顺利完成。
方便性:在计算机硬件上配置了OS,系统可以用编译命令将用户采用高级语言书写的程序翻译成机器代码,或者直接通过OS所提供的命令操纵计算机系统,方便用户,易学易用。
有效性:提高系统资源的利用率和吞吐量
可扩充性:微内核结构能方便增添新的功能和模块,以及对原有的功能和模块进行修改,具有良好的可扩充性。
开放性:指系统能遵循世界标准规范,特别是遵循开放系统互联OSI国际标准。
- 功能
作为用户和计算机硬件系统之间的接口
作为计算机系统资源的管理者
实现了对计算机资源的抽象
- 特征
- 并行与并发
并行性是指两个或多个事件在同一时刻发生。进程并行需要多处理机支持。 并发性是指两个或多个事件在同一时间间隔内发生。宏观上在一段时间内有多道程序在同时运行,而微观上这些程序只是在交替运行。
在单处理机系统中: 进程和进程并发 处理机和设备并行 处理机和通道并行 通道和通道并行 设备和设备并行
共享(复用) 系统中的资源可供内存中多个并发执行的进程共同使用 互斥共享方式 同时访问方式
虚拟
【2011】虚拟性是操作系统的特性之一,请问什么是虚拟性?操作系统的虚拟性是如何体现的?(至少谈3个方面) 虚拟是指通过某种技术把一个物理上的实体变为若干个逻辑上的对应物。物理实体是指实际存在的实体,而逻辑上的对应物是虚的,是用户感觉上存在的实体,用于实现虚拟的技术。 操作系统中利用了多种虚拟技术,如虚拟处理器,虚拟内存,虚拟外部设备等。 (1)虚拟存储器技术中,是通过多道程序设计技术,让多道程序并发执行的方法来分时使用一个处理器的。利用多道程序设计技术把一个物理上的CPU虚拟成多个逻辑上的CPU,称为虚拟存储器。 (2)虚拟存储技术中,将一台机器的物理存储器变为虚拟存储器,以便从逻辑上扩充存储器的容量。此时用户感觉的内存容量是虚的。我们把用户所感觉到的存储器称为虚拟存储器。 (3)虚拟设备技术,将一台物理I/O设备虚拟为多台逻辑上的I/O设备,这样便可以使原来仅允许在一段时间内由一个用户访问的设备变为一段时间内允许多个用户同时访问的共享设备技术。
通过某种技术将一个物理实体变为若干个逻辑上的对应物的功能 时分复用技术 空分复用技术
- 异步(不确定性) 进程是以人们不可预知的速度向前推进的。多道程序设计中,各程序都存在直接或者间接的联系,程序推进的速度受到其他程序的影响。
1.2 操作系统运行硬件基础


1.3 操作系统接口分类及组成
【2018】请阐述用户和计算机系统之间的接口及其相互间的关系,并说明各类接口分别适用于什么情况? 为了方便用户使用操作系统,操作系统向用户提供了用户与操作系统解救,该接口一般可以分为两大类: (1)用户接口:他是提供给用户使用的接口,用户可以通过该接口取得操作系统的服务。该接口又可以进一步分为联机用户接口、脱机用户接口和图形用户接口。其中图形用户接口是普通用户使用操作系统时最常接触到的接口。 (2)程序接口:他是提供给程序员在编程时使用的接口,是用户程序取得操作系统服务的唯一途径。
用户接口 联机用户接口 脱机用户接口 图形用户接口
程序接口 由一组系统调用命令组成,提供一组系统调用命令供用户程序使用。
1.4 操作系统内核用典型数据结构
1.5 系统调用实现机制
系统调用:调用程序一定是运行在用户态,被调用程序一定是运行在系统态。
过程调用:调用程序和被调用程序运行在相同的状态下,可以同时是用户态,也可以同时是系统态。
【2011】某些操作系统有rename系统调用,用于改变文件名,在效果上用户完全可以将源文件拷贝成另外一个文件,然后删除源文件,也能够达到更改文件名的效果,请问这两种方式有什么区别? 系统调用就是用户在程序中调用操作系统所提供的一些子功能,凡是与资源有关的操作都必须通过系统调用方式向操作系统提出服务请求,并由操作系统代为完成。系统使用rename系统调用,工作在核心态,可以保证系统的稳定性和安全性,防止用户随意更改或访问系统的数据或命令。 系统调用与过程调用: ①代码层次不同,过程调用不属于操作系统的一部分;系统调用是操作系统的一部分。 ②运行状态不同,过程调用只能在用户态下进行,不能进入核心态;系统调用在核心态运行。 ③进入方式不同,过程调用在用户程序中调用,会产生异常事件;实现处理机状态,从用户态到核心态的转变,从而进入操作系统核心空间区执行系统调用的代码。


- 启动某设备指令、设置时钟指令、控制中断屏蔽的某些指令、清内存指令、建立存储保护指令如果允许用户随便使用,就有可能使系统陷入混乱。故这些指令只能在核心态下由操作系统执行。
题目中涉及到的:
不是特权指令的有:写程序计数器、读日历钟、写指令寄存器
是特权指令的有:停机指令、置PSW指令、中断操作指令(开中断、关中断、屏蔽中断)、输入输出指令。

访管指令本身不是特权指令,其基本功能是让程序有自愿进管的手段,从而引起访管中断
自愿中断事件(软件中断)是正在运行的程序正在期待的事件。这种事件正是由于执行了一条访管指令而引起,它表示正在运行的程序对操作系统有某种需求。一旦机器执行这一中断,便自愿停止现行程序而转入访管中断处理程序处理。例如,要求操作系统协助启动外围设备工作。
1.6 操作系统启动引导过程(王道书P29)
常见的操作系统引导过程如下:
激活CPU。激活的CPU读取ROM中的boot程序,将指令寄存器置为BIOS(基本输入/输出系统)的第一条指令即开始执行BIOS的指令。
硬件自检。启动BIOS程序后,先进行硬件自检,检查硬件是否出现故障。如有故障,主板会发出不同含义的蜂鸣,启动中止;如无故障,屏幕会显示CPU、内存、硬盘等信息
加载带有操作系统的硬盘
加载主引导记录MBR。硬盘以特定的标识符区分别引导硬盘和非引导硬盘。如果发现一个存储设备不是可引导盘,则检查下一个存储设备;如无其他启动设备,就会死机。主引导记录MBR的作用就是告诉CPU去硬盘的哪个主分区去找操作系统。
扫描硬盘分区表,并加载硬盘活动分区。
加载分区引导记录PBR。读取活动分区的第一个扇区,这个扇区称为分区引导记录PBR,其作用是寻找并激活分区根目录下用于引导操作系统的程序(启动管理器)。
加载启动管理器。
加载操作系统。