第一章1、存储程序式计算机的特点存储程序式计算机的结构包括中央处理器(CPU)、存储器和输入/输出设备特点是集中顺序过程控制。其计算是过程性的,完全模拟手工操作过程,即首先取原始数据,执行一个操作,将中间结果保存起来,再取一个数,与中间结果一起执行下一个操作,如此计算下去,直到计算完成。系统中的程序计数器体现其顺序性(在单CPU的计算机系统中只有一个程序计数器),计算机根据程序设定的顺序依次执行每一个操作。集中控制是指机器各部件的工作由CPU集中管理和指挥。2、操作系统发展的几个阶段的名称及特点(1)手工操作阶段特点:无任何软件、由人工干预、独占性、串行性(2)批处理阶段联机批处理特点:监督程序、作业自动过渡脱机批处理特点:主机与卫星机并行操作(3)执行系统主机、外设并行操作;增强了保护能力。3、多道程序设计技术定义及特征在计算机主存中同时存放几道相互独立的程序。这些程序在管理程序控制之下,相互穿插地运行。当某道程序因某种原因不能继续运行下去时(如等待外部设备传输数据),管理程序便将另一道程序投入运行。特征:(1)多道:计算机主存中同时存放几道相互独立的程序(2)宏观上并行:同时进入系统的几道程序都处于运行过程中,即它们都开始运行,但都未运行完毕。(3)微观上串行:从微观上看,主存中的多道程序轮流或分时地占用处理机,交替执行。4、操作系统定义和特征操作系统是一个大型的程序系统,它负责计算机的全部软、硬资源的分配、调度工作,控制和协调并发活动,实现信息的存取和保护。它提供用户接口,使用户获得良好的工作环境。特征:(1)并发:并发性是指处理多个同时性活动的能力。(2)共享:共享是指多个计算任务对系统资源的共同享用。(3)不确定性:操作系统能处理大量的、随机的事件序列,使个用户的计算任务正确地完成。5、操作系统的资源管理功能(1)处理机管理制订调度策略(调度原则):解决将CPU先分给哪个用户程序,它占用多长时间,下一个又该轮到哪个程序运行等问题。给出进程调度算法;具体的实施处理机分派:在调度时机到来时,进行处理机分派。(2)存储器管理存储分配和存储无关性:确定各应用程序在主存中的位置及所占区域的大小;应用程序无需关心存储细节,由存储管理模块提供地址重定位能力。存储保护:系统提供基址、界限寄存器等存储保护方法,使各应用程序相互隔离。存储扩充:系统提供虚拟存储技术,扩大逻辑主存。(3)设备管理设备无关性:用户向系统申请和使用的设备与实际操作的设备无关,以达到方便用户、提高设备利用率的目的。设备分配:为各个应用程序和运行实体分配各种设备。设备分配通常采用三种基本技术:独享、共享及虚拟技术。设备的传输控制:启动设备、中断处理、结束处理等。(4)信息管理(文件系统)为用户提供一种简便的、统一的存取和管理信息的方法,并要解决信息的共享、数据的存取控制和保密等问题。6、操作系统的基本技术:多道程序设计技术、分时技术7、操作系统的基本类型(四个:批量、分时、实时和分布式)第二章操作系统结构和硬件支持1、操作系统虚拟机的指令系统{操作系统虚拟机:在裸机上配置了操作系统程序后就构成了操作系统虚拟机;操作系统的核心在裸机上运行;用户程序在扩充后的机器上运行。在裸机的指令系统是机器指令。}(1)操作命令(命令接口)作业控制语言、键盘命令和图形化用户界面(2)系统功能调用(程序接口)2、操作系统的层次结构{操作系统的4种设计方法:一体化结构、模块化结构、可扩展内核结构和层次化结构}操作系统在逻辑上分为若干层次,每一层调用下层的功能,又为上层提供服务。3、处理机的状态管态:又称为系统态,是操作系统的管理程序执行时机器所处的状态。在此状态下中央处理机可以使用全部机器指令,包括一组特权指令,可以使用所有的资源,允许访问整个存储区。用户态:又称为目态,是用户程序执行时机器所处的状态。在此状态下禁止使用特权指令,不能直接取用资源与改变机器状态,并且只允许用户程序访问自己的存储区域。特权指令:改变机器状态的指令;修改特殊寄存器的指令;涉及外部设备的输入/输出指令4、中断定义,分类,中断过程描述(1)所谓中断是指某个事件(例如电源掉电、定点加法溢出或I/O传输结束等)发生时,系统中止现行程序的运行、引出处理事件程序对该事件进行处理,处理完毕后返回断点,继续执行。(2)分类:按中断功能分类输入输出中断:I/O传输结束或出错终端外中断:时钟中断、操作员控制台中断、通信中断等机器故障中断:电源故障、主存取指令错等程序性中断:定点溢出、用户态下用核态指令、非法操作等访管中断:对操作系统提出某种需求时所发出的中断按中断方式分类强迫性中断:不是正在运行的程序所期待的中断,如输入输出中断、外中断、机器故障中断、程序性中断自愿中断:是运行程序所期待的事件,如访管中断按中断来源分类中断:由处理机外部事件引起的中断俘获:由处理机内部事件引起的中断(3)中断过程描述(一)中断响应现场:在中断的那一刻能够保证程序能够继续运行的有关信息;(后继指令所在主存的单元号;程序运行所处的状态;指令执行情况;程序执行的中间结果等)保护现场:当中断发生时,必须立即把现场信息保存在主存中,这一工作称为保护现场。恢复现场:程序重新运行之前,把保留的该程序现场信息从主存中送至相应的指令计数器、通用寄存器或一些特殊的寄存器中,完成这些工作称为恢复现场。中断响应是当中央处理机发现已有中断请求时,中止现行程序的执行,并自动引出中断处理程序的过程。实质是交换用户程序和处理该中断事件的中断处理程序的指令执行地址和处理器状态。中断响应过程:保留程序断点及处理机有关信息---------自动转入相应的中断处理程序执行。第三章用户接口1、操作系统的生成与系统初启过程描述所谓系统生成,就是指为了满足物理设备的约束和需要的系统功能,通过组装一批模块来产生一个清晰的、使用方便的操作系统的过程。系统生成的内容包括:根据硬件部件确定系统构造的参数,编辑系统模块的参数,并且连接系统模块成为一个可执行的程序。系统初启又叫系统引导。它的任务是将操作系统的必要部分装入主存并使系统运行,最终处于命令接收状态。系统引导分为三个阶段:(1)初始引导:把系统核心装入主存中的指定位置,并在指定地址启动(2)核心初始化:执行系统核心的初启子程序,初始化系统核心数据(3)系统初始化:为用户使用系统做准备独立引导方式(滚雪球方式)的过程(1)初始引导系统加电;执行初始引导程序,对系统硬件和配置进行自检,保证系统没有硬件错误;从硬件中读入操作系统引导程序,并将控制权交给该程序模块(2)引导程序执行引导程序执行,将操作系统核心文件读入内存,并将控制交给核心的初始化程序(3)核心初始化初始化系统数据结构及参数:系统加电建立进程有关的数据结构;获得自由存储空间的容量,建立存储管理的数据结构;建立系统设备和文件系统的数据结构;初始化时钟。(4)系统初始化完善OS的操作环境,装载命令处理程序(或图形用户界面),并初始化;在多用户系统中,为每个终端建立命令解释进程,使系统处于命令接收状态。2、应用程序加工处理的步骤(1)编辑(修改)建立一个新文件,或对已有的文件中的错误进行修改(2)编译将源程序翻译成浮动的目标代码。(3)连接主程序和其他所需要的子程序和例行程序连接装配在一起,使之成为一个可执行的、完整的主存映像文件。(4)运行将主存映像文件调入主存,并启动运行,最后得出计算结果。3、操作系统用户接口分类(1)操作界面(命令接口)用户使用这个操作界面来组织工作流程和控制程序的运行(2)系统功能服务界面(程序接口)用户程序在其运行过程中,使用系统功能调用来请求操作系统的服务4、系统功能调用的定义及实现过程系统功能调用是用户在程序一级请求操作系统服务的一种手段,它是带有一定功能号的“访管指令”。其功能是由操作系统中的程序完成的,即由软件方法实现的自愿。在用户程序中,需要请求操作系统服务的地方安排一条系统调用。这样,当程序执行到这一条命令时,就会发生中断,系统由用户态转为管态,操作系统的访管中断处理程序得到控制权,它将按系统调用的功能号,借助例行子程序入口地址表转到相应的例行程序去执行,在完成了用户所需要的服务功能后,退出中断,返回到用户程序的断点继续执行。第四章进程及进程管理1、顺序程序特点一个计算的若干操作必须按照严格的先后次序顺序地执行,这类计算过程就是程序的顺序执行过程。(1)顺序性:处理机的操作按照严格程序所规定的顺序执行(2)封闭性:程序一旦开始执行,其计算结果不受外界因素的影响(3)可再现性:程序执行的结果与它的执行速度无关(即与时间无关),而只与初始条件有关。2、程序的并发执行定义及并发程序的特点若干个程序段同时在系统中运行,这些程序段的执行在时间上是重叠的,一个程序段的执行尚未结束,另一个程序段的执行已经开始,即时这种重叠是很小的一部分,也称这几个程序段是并发执行的。(1)失去程序的封闭性和可再现性:若一个程序的执行可以改变另一个程序的变量,那么,后者的输出就可能有赖于各程序执行的相对速度,即失去了程序的封闭性特点。(2)程序与计算不再一一对应:一个程序可以对应多个计算(3)程序并发执行的相互制约:间接的相互制约关系——资源共享;直接的相互制约关系——公共变量与时间有关的错误:程序并发执行时若共享了公共变量,其执行结果将与并发程序执行的相对速度有关,即给定相同的初始条件,也可能会得到不同的结果,此为与时间有关的错误。3、进程定义,进程与程序的区别与联系所谓进程,就是一个程序在给定活动空间和初始环境下,在一个处理机上的执行过程。(1)程序是指令的有序集合,是一个静态的概念;而进程是程序在处理机上的一次执行程序,是一动态概念。(2)进程是一个能独立运行的单位(3)进程是竞争系统资源的基本单位联系:一个程序可以对应多个进程;一个进程至少包含一个程序4、进程的基本状态及状态变迁图运行状态:该进程已获得运行所必须的资源,它的程序正在处理机上执行等待状态:进程正等待着某一事件的发生而暂时停止执行。这时,即使给它CPU控制权,它也无法执行,则称该进程处于等待状态就绪状态:进程已获得除CPU之外的运行所必须的资源,一旦得到CPU控制权,立即可以执行。5、线程的定义及特点线程是比进程更小的活动单位,它是进程中的一个执行路径线程可以这样来描述:(1)进程中的一条执行路径(2)它有自己私有的堆栈和处理机执行环境(3)它与父进程共享分配给父进程的主存(4)它是单个进程所创建的许多个同时存在的线程中的一个特点:(1)创建一个线程比创建一个进程开销要小得多;(2)实现线程间通信十分方便,因为一个进程创建的多个线程可以共享地址区域和数据。6、临界资源、临界区的含义一次仅允许一个进程使用的资源称为临界资源。在每个进程中,访问临界资源的那段程序能够从概念上分离出来,称为临界区或临界段。它就是进程中对公共变量(或存储区)进行审查与修改的程序段,称为相对于该公共变量的临界区。7、同步、互斥的概念及区别在操作系统中,当某一进程正在访问某以存储区域时,就不允许其他进程来读出或者修改存储区的内容,否则,就会发生后果无法估计的错误。进程间的这种相互制约关系称为互斥。同步,就是并发进程在一些关键点上可能需要互相等待与互通消息,这种相互制约的等待与互通消息称为进程同步。互斥:是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。但互斥无法限制访问者对资源的访问顺序,即访问是无序的。同步:是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。在大多数情况下,同步已经实现了互斥,特别是所有写入资源的情况必定是互斥的。少数情况是指可以允许多个访问者同时访问资源。8、能够灵活的应用锁、信号灯同步机构实现同步和互斥第5章资源分配与管理1、资源管理的具体内容批处理系统的顾客分为作业和进程两级。而在分时操作系统和个人计算机操作系统中,用户任务提交给系统时建立相应的进程,所以请求资源的顾客是进程。资源管理应达到的目标是:(1)保证资源的高利用率;(2)在“合理”时间内使所有顾客有获