第2章 操作系统(1--2讲)
- 格式:ppt
- 大小:437.00 KB
- 文档页数:66
操作系统第⼆章进程的描述与控制题⽬1-1. 下⾯对进程的描述中,错误的是。
A.进程是动态的概念B. 进程执⾏需要处理机C.进程是有⽣命周期的D. 进程是指令的集合【答案】D动态的,有⽣命周期的。
【解析】【解析】程序是指令的集合。
⽽进程是程序的⼀次执⾏,是动态的,有⽣命周期的。
1-2. 分配到必要的资源并获得处理机时的进程状态是 ()A. 就绪状态B. 执⾏状态C. 阻塞状态D. 撤消状态【答案】B【解析】分配到必要地资源获得处理机时的进程状态是执⾏状态。
1-3.程序的顺序执⾏通常在①的⼯作环境中,具有以下特征②。
程序的并发执⾏在③的⼯作环境中,具有如下特征④。
A. 单道程序B.多道程序C. 程序的可再现性D. 资源共享【答案】①A ②C ③B ④D。
【解析】程序的顺序执⾏通常在单道程序的⼯作环境中,具有程序结果的可再现性特征;程序的并发执⾏在多道程序的⼯作环境中,具有共享资源的特征。
1-4. 下列进程状态变化中,变化是不可能发⽣的A. 运⾏——就绪B.运⾏—— 等待C. 等待——运⾏D. 等待——就绪【答案】C【解析】当调度程序为某就绪状态的进程分配了处理机时,该进程便由就绪状态变为执⾏状态;正在执⾏的进程因等待发⽣某事件⽽⽆法执⾏时,该进程由执⾏状态变为等待状态;当处于等待状态的进程所等待的事件发⽣时,该进程由等待状态变为就绪状态;正在执⾏的进程如因时间⽚⽤完⽽暂停执⾏,该进程由执⾏状态变为就绪状态。
等待——运⾏不可能发⽣,就绪—— 等待不可能发⽣。
运⾏不可能发⽣,就绪唯⼀的双向箭头是运⾏运⾏——就绪,就绪——运⾏唯⼀的双向箭头是1-5. 当时,进程从执⾏状态转变为就绪状态。
A. 进程被调度程序选中B. 时间⽚到C. 等待某⼀事件D.等待的事件发⽣【答案】B。
【解析】正在执⾏的进程,如因时间⽚⽤完⽽暂停执⾏,则该进程由执⾏状态转变为就绪状态。
就绪——运⾏ C. 等待某⼀事件运⾏—— 阻塞 D.等待的事件发⽣等待——就绪A. 进程被调度程序选中,进程被调度程序选中,就绪1-6. 如果系统中有n个进程,则就绪队列中进程的个数最多为。
计算机操作系统(第四版)课后习题答案第二章第二章1. 什么是前趨圖?為什么要引入前趨圖?答:前趨圖(Precedence Graph)是一個有向無循環圖,記為DAG(Directed Acyclic Graph),用于描述進程之間執行的前后關系。
2. 畫出下面四條詫句的前趨圖:S1=a:=x+y;S2=b:=z+1;S3=c:=a-b;S4=w:=c+1;答:其前趨圖為:3. 為什么程序并發執行會產生間斷性特征?程序在并發執行時,由于它們共享系統資源,以及為完成同一項任務而相互合作,致使在這些并發執行的進程之間,形成了相互制約的關系,從而也就使得進程在執行期間出現間斷性。
4. 程序并發執行時為什么會失去封閉性和可再現性?因為程序并發執行時,是多個程序共享系統中的各種資源,因而這些資源的狀態是由多個程序來改變,致使程序的運行失去了封閉性。
而程序一旦失去了封閉性也會導致其再失去可再現性。
GAGGAGAGGAFFFFAFAF5. 在操作系統中為什么要引入進程概念?它會產生什么樣的影響?為了使程序在多道程序環境下能并發執行,并能對并發執行的程序加以控制和描述,從而在操作系統中引入了進程概念。
影響: 使程序的并發執行得以實行。
6. 試從動態性,并發性和獨立性上比較進程和程序?a. 動態性是進程最基本的特性,可表現為由創建而產生,由調度而執行,因得不到資源而暫停執行,以及由撤銷而消亡,因而進程由一定的生命期;而程序只是一組有序指令的集合,是靜態實體。
b. 并發性是進程的重要特征,同時也是OS的重要特征。
引入進程的目的正是為了使其程序能和其它建立了進程的程序并發執行,而程序本身是不能并發執行的。
c. 獨立性是指進程實體是一個能獨立運行的基本單位,同時也是系統中獨立獲得資源和獨立調度的基本單位。
而對于未建立任何進程的程序,都不能作為一個獨立的單位來運行。
7. 試說明PCB的作用?為什么說PCB是進程存在的唯一標志?a. PCB是進程實體的一部分,是操作系統中最重要的記錄型數據結構。
第一章引论第一节什么是操作系统(识记)1.计算机系统定义:是按用户的要求接收和存储信息,自动进行数据处理并输出结果信心的系统2.计算机系统构成:硬件系统和软件系统3.硬件系统组成:中央处理器(CPU),主存储器,辅助存储器,各种输入/输出设备二.操作系统1.操作系统定义:是一种管理计算机系统资源,控制程序执行,改善人机界面和为其它软件提供支持的系统软件操作系统的两个主要设计原则2.能使得计算机系统使用方便.3.能使得计算机高效的工作第二节操作系统的形成1.控制台:早期,程序的装入,调试以及控制程序的运行都是程序员通过控制台上的开关来实现2.原始汇编系统:用汇编语言编写的程序称为源程序,它不能直接在机器上执行,只有通过汇编语言解释程序把源程序转换成用机器指令序列表示的目标程序后才能在计算机上运行.3.设备驱动程序:是最原始的操作系统.是一种控制设备工作的程序4.管理程序:是初级的操作系统.是一种能对计算机硬件和软件进行管理和调度的程序5.操作系统:采用了SPOOLING的处理形式SPOOLING又称”斯普林”.从本质上说,SPOOLING是把磁盘作为一个巨大的缓冲器.在一个计算问题开始之前,把计算所需要的程序和数据从读卡机或其它输入设备上预先输入到磁盘上读取程序和数据,同样,对于计算的结果也是先在磁盘上缓冲存放,待计算完成后,再从打印机上打印出该计算问题的所有计算结果第三节操作系统的基本类型按照操作系统提供的服务进行分类,可分为批处理操作系统,分时操作系统,实时操作系统,网络操作系统,分布式操作系统,多机操作系统和嵌入式操作系统等.其中批处理操作系统,分时操作系统,实时操作系统是基本的操作系统一批处理操作系统1.定义:用户为作业准备好程序和数据后,再写一份控制作业执行的说明书.然后把作业说明书连同相应的程序和数据一起交给操作员.操作员将收到一批作业的有关信息输入到计算机系统中等待处理,由操作系统选择作业,并按其操作说明书的要求自动控制作业的执行.采用这种批量化处理作业的操作系统称为批处理操作系统.2.分类●批处理单道系统:一次只选择一个作业装入计算机系统的主存储器运行.批处理多道系统:允许多个作业同时装入主存储器,使中央处理器轮流的执行各个作业,各个作业可以同时使用各自所需要的外围设备3.批处理多道系统优点多道作业并行减少了处理器的空闲时间,既提高了处理器的利用率作业调度可以按一定的组合选择装入主存储器的作业,只要搭配合理作业执行过程中,不再访问低速的设备,而是直接从高速的磁盘上存取信息,从而缩短了作业执行时间,使单位时间内的处理能力得到提高作业成批输入,自动选择和控制i作业执行,减少了人工操作时间和作业交接时间,有利于提高系统的吞吐率●分时操作系统1.定义:能使用户通过与计算机相连的终端来使用计算机系统,允许多个用户同时与计算机系统进行①系列的交互,并使得每个用户感到好像自己独占一台支持自己请求服务的计算机系统.具有这种功能的操作系统称为分时操作系统,简称分时系统2.分时技术:既把CPU时间划分成许多时间片,每个终端用户每次可以使用一个由时间片规定的CPU时间.这样,多个用户就轮流的使用CPU时间,如果某个用户在规定的一个时间片内还没有完成它的全部工作,这时也要把CPU让给其他用户,等待下一轮再使用一个时间片的时间,循环轮转,直至结束.3.分时系统主要特点:同时性.允许多个终端用户同时使用一个计算机系统独立性:用户在各自的终端上请求系统服务,彼此独立,互不干扰及时性:对用户的请求能在较短的时间内给出应答交互性:采用人机对话的方式工作实时操作系统定义:能使计算机系统接受到外部信息后及时处理,并且在严格的规定时间内处理结束,再给出反馈信号的操作系统称为实时操作系统,简称为实时系统1.设计实时系统注意点要及时响应,快速处理实时系统要求高可靠性和安全性,不强求系统资源的利用率第四节操作系统的发展1.单用户微机操作系统:是指早期的微型计算机上运行的操作系统每次只允许一个用户使用计算机2.网络操作系统:为计算机网络配置的操作系统称为网络操作系统.网络操作系统把计算机网络中各台计算机系统有机的联合起来,为用户提供一种统一,经济而有效的使用各台计算机系统的方法,可使各台计算机系统相互间传送数据,实现各台计算机系统之间的通信以及网络中各种资源的共享3.分布式操作系统:为分布式计算机系统配置的操作系统称为分布式操作系统.分布式操作系统能使系统中若干计算机相互协作完成一个共同的任务,或者说把一个计算问题可以分成若干个子计算,每个子计算可以在计算机系统中的各计算机上并行执行4.多机操作系统:为多处理器系统配置的操作系统称为多机操作系统5.嵌入式操作系统:是指运行在嵌入式系统中对各种部件,装置等资源进行统一协调,处理和控制的系统软件(主要特点是微型化和实时性)第五节Unix操作系统简介1.诞生Unix的第一个版本version 1 是AT&TTA公司下属的Bell实验室里两位程序员Ken Thompson和Dennis Ritchie凭兴趣和爱好1969年在一台闲置的PDP-7上开发的.2.特点Unix是一个交互式的分时操作系统Unix系统的源代码公开第六节操作系统的功能1.操作系统的功能:(从资源管理的角度来分)]处理器管理:对CPU进行管理存储管理:对主存储器进行管理文件管理:通过对磁盘进行管理,实现对软件资源进行管理设备管理:对各类输入.输出设备进行管理2.操作系统为用户提供的使用接口程序员接口:通过”系统调用使用操作系统功能(开发者)操作员接口:通过操作控制命令提出控制要求.第二章计算机系统结构简介第一节计算机系统结构一层次结构1.计算机系统构成:硬件系统和软件系统硬件系统构成:中央处理器(cpu),存储器,输入,输出控制系统和各种输入/输出设备软件系统组成:系统软件,支撑软件,应用软件2.层次结构:最内层是硬件系统,最外层是使用计算机系统的人,人与硬件系统之间是软件系统.软件系统又依次为系统软件-支撑软件应用软件二.系统工作框架1.引导程序:进行系统初始化,把操作系统中的核心程序装入主存储器,并让操作系统的核心程序占用处理器执行.2.操作系统核心程序:完成自身的初始工作后开始等待用户从键盘或鼠标输入命令,每接受一条命令就对该命令进行处理第二节硬件环境一. CPU与外设的并行工作在现代的通用计算机系统中,为提高计算机的工作效率,均允许中央处理器和外设并行工作.当执行到一条启动外设的指令时,就按指令中给定的参数启动指定的设备,并把控制移交给输入/输出控制系统,由输入/输出控制系统控制外围设备与主存储器之间的信息传送,外围设备独立工作,不再需要中央处理器干预,于是中央处理器可继续执行其它程序二. 存储体系1.寄存器:是处理器的组成部分,用来存放处理器的工作信息.存取速度快,但造价高.●通用寄存器:存放参加运算的操作数.指令的运算结构等●指令寄存器:存放当前从主存储器读出的指令●控制寄存器:存放控制信息以保证程序的正确执行和系统的安全程序状态字寄存器:存放当前程序执行时的状态.中断字寄存器:记录出现的事件基址寄存器:设定程序执行时可访问的主存空间的开始地址限长寄存器:设定程序执行时可访问的主存空间的长度2.主存储器:以字节为单位进行编址.主存储器容量较大,能被处理器直接访问,但断电会丢失数据.3.高速缓冲存储器:也称cache,位于处理器和主存储器之间起到缩短存储时间和缓冲存储的作用4.辅助存储器:最常用的辅助存储器有磁盘和磁带.优点是容量大且能永久保存信息,但不能被中央处理器直接访问.三. 保护措施一般是硬件提供保护手段和保护装置,操作系统利用这些设施配合硬件实现保护1.指令分类●特权指令:不允许用户程序中直接执行的指令.如:启动i/o,设置时钟,设置控制器等●非特权指令:允许用户程序中直接执行的指令2.cpu工作状态●管态:可执行包括特权指令在内的一切机器指令.一般是操作系统程序占用中央处理器时,cpu处于管态●目态:不允许执行特权指令.一般是用户程序占用中央处理器时,CPU处于目态.3.存储保护:不同的存储管理方式有不同的实现保护方法,如可变分区存储管理方式中:基址寄存器的值<=访问地址<=基址寄存器的值+限长寄存器的值第三节操作系统结构一设计目标●正确性:能充分估计和把握各种不确定的情况,使操作系统不仅能保证正确性,且易于验证其正确性●高效性:减少操作系统的开销从而提高计算机系统的效率,尤其对常驻主存储器的核心程序部分更要精心设计●维护性:当系统发现错误或为提高效率而对算法进行调整等工作时,应使操作系统容易维护●移植性:移植性是指能否方便的把操作系统从一个硬件环境移植到另一个新的硬件环境之中.在结构设计时,应尽量减少与硬件直接有关的程序量,且将其独立封装.二. 操作系统的层级结构1.设计方法:无序模块法,内核扩充法,层次结构法,管理设计法等2.层次结构法:最大特点是把整体问题局部化.一个大型复杂的操作系统被分解成若干单向依赖的层次,由各层的正确性来保证整个操作系统的正确性.采用层次结构不仅结构清晰,而且便于调试,有利于功能的增加,删减和修改3.操作系统层次结构:处理器管理要对中断事件进行处理,要为程序合理的分配中央处理器的工作事件,它是操作系统的核心程序,是与硬件直接有关的部分,因而把它放在最内层.以后的各层依次存放的是存储管理,设备管理和文件管理.即:硬件-处理器管理-存储管理-设备管理-文件管理主要优点:有利于系统的设计和调试主要困难:层次的划分和安排三 .Unix系统的结构1.Unix层次结构:内核层和外壳层●内核层:是unix操作系统的核心.它具有存储管理,文件管理,设备管理,进程管理以及为外壳层提供服务的系统调用等功能●外壳层:为用户提供各种操作命令和程序设计环境2.外壳层组成:由shell解释程序,支持程序设计的各种语言,编译程序,解释程序,使用程序和系统库等组成.其中其它模块归shell解释程序调用,shell解释程序用来接收用户输入的命令并进行执行.3.内核层组成:内核程序用C语言和汇编语言编写.按编译方式可分为:汇编语言文件,C语言文件和C语言全局变量文件.4.程序运行环境:用户态和核心态.外壳层的程序在用户态运行,内核层的程序在核心态运行.用户态运行的程序称为用户程序,核心态运行的程序称为系统程序(外壳层的用户程序在执行时可通过系统调用来请求内核层的支持)第四节操作系统与用户的接口一. 操作控制命令●联机用户:操作控制命令●批处理系统用户:作业控制语言,用来编制作业控制说明书二. 系统调用1.系统调用定义:既系统功能调用程序,是指操作系统编制的许多不同功能的供程序执行中调用的子程序.2.执行模式:系统调用在管态下运行,用户程序在目态下运行,用户程序可以通过”访管指令:实现用户程序与系统调用程序之间的转换.(访管指令本身是一条在目态下执行的指令)3.系统调用分类:文件操作类,资源申请类,控制类,信息维护类.第五节 Unix的用户接口一. shell命令1.注册和注销●注册:用户可通过login输入用户名和通过password输入口令,系统注册成功后在shell解释程序控制下,出现提示符(采用C shell 提示符:%)以交互方式为用户服务.●注销:输入logout或同时按下crtl +D键2.常见的shell命令Mkdir:请求系统建立一个新的文件目录Rmdir:请求系统删除一个空目录Cd:切换当前的工作目录Pwd:显示用户的当前目录Ls:显示用户一个目录中的文件名.Cp:复制一个文件Mv:对文件重新命名Rm:删除一个指定的文件Cat:显示用ascll码编写的文本文件More:分屏显示文件内容,按空格键显示下一屏3.后台执行的shll命令方法:在请求后台执行的命令末尾输入字符”&”.特点:Unix把一个程序转入后台执行后,不等该程序执行完就显示可以输入新命令的提示符.因此,允许多个任务在后台执行,也允许后台任务和前台任务同时执行4.shell文件●定义:用shell命令编辑成的文件称为shell文件●执行shell文件:csh shell文件名●把shell文件改成可执行文件:chmod+ x shell 文件名-以后就可直接在提示符后面直接输入文件名就可执行二 Unix系统调用1.常用的系统调用●有关文件操作的系统调用Create:建立文件 open:打开文件Read:读文件 write:写文件Close:关闭文件 link:链接一个文件Unlink:解除文件的链接 lseek:设定文件的读写位置Chmod:改变对文件的访问权限 rename:更改文件名●有关控制类的系统调用Fork:创建一个子进程 wait:父进程等待子进程终止Exit:终止子进程的执行 exec:启动执行一个指定文件●有关信号与时间的系统调用:Unix把出现的异常情况或异步事件以传送信号的方式进行Kill:把信号传送给一个或几个相关的进程Sigaction:声明准备接收信号的类型Sigreturn:从信号返回,继续执行被信号中断的操作Stime:设置日历时间 time:获取日历时间Times:获取执行所花费的时间2.trap指令:是unix系统中的访管指令3.系统调用程序入口表●作用:实现对系统功能调用程序的统一管理和调度●构成:系统调用编号,系统调用所带参数个数,系统调用处理程序入口地址,系统调用名称.4.系统调用实现过程●步骤一:当处理器执行到trap指令时便形成一个中断事件.此时将暂停当前用户程序的执行,而由unix系统内核的”trap处理子程序来处理这个中断事件●步骤二:trap处理子程序根据trap指令中的系统调用编号查系统调用程序入口表,得到该系统调用所带的参数个数和相应的处理程序的入口地址.然后,把参数传送到内核的系统工作区,再按处理程序入口地址转向该系统调用的处理程序执行●步骤三:当系统调用程序完成处理后,仍需返回到trap处理子程序,由trap处理子程序对被暂停的用户程序进行状态恢复等后续处理,再返回用户程序执行.第三章处理器管理一.什么是多道程序设计1.定义:让多个计算问题同时装入一个计算机系统的主存储器并行执行,这种程序设计称为多道程序设计.这种计算机系统称为多道程序设计系统.2.注意事项●存储保护:必须提供必要的手段使得在主存储器中的各道程序只能访问自己的区域,避免相互干扰●程序浮动:是指程序可以随机的从主存储器的一个区域移动到另一个区域,程序被移动后,仍丝毫不影响它的执行(可集中分散的空闲区,提高主存空间的利用率)●资源的分配和调度:多道程序竞争使用处理器和各种资源时,多道程序设计的系统必须对各种资源按一定的策略进行分配和调度.二.为什么要采用多道程序设计1.程序的顺序执行:处理器和外围设备,外围设备之间都得不到高效利用2.程序的并行执行:让程序的各个模块可独立执行,并行工作,从而发挥外围设备之间的并行能力3.多道并行执行:在一个程序各个模块并行工作的基础上,允许多道程序并行执行,进一步提高处理器与外围设备之间的并行工作能力,具体表项在:●提高了处理器的利用率●充分利用外围设备资源.●发挥了处理器与外围设备之间的并行能力三.采用多道程序设计应注意的问题1.可能延长程序执行时间:多道程序设计能提高资源使用效率,增加单位时间的算题量.但是对每个计算问题来说,从算题开始到全部完成所需的计算时间可能要延长2.并行工作道数与系统效率不成正比;并不是并行工作的道数越多,系统的效率就越高,而要根据系统配置的资源和用户对资源的要求而定⏹主存储器空间的大小限制了可同时装入的程序数量⏹外围设备的数量也是一个制约条件⏹多个程序同时要求使用同一资源的情况也会经常发生第二节进程概述一.进程的定义1.程序:具有独立功能的一组指令或一组语句的集合,或者说是指出处理器执行操作的步骤2.进程:是指一个程序在一个数据集上的一次执行3.程序和进程的区别:程序是静态的文本,进程动态的过程.进程包括程序和数据集.二.为什么要引入进程1.提高资源的利用率:一个程序被分成若干个可独立执行的程序模块,每个可独立执行的程序模块的一次执行都可看作一个进程,通过进程的同步可提高资源的利用率.2.正确描述程序的执行情况:可以方便描述一个程序被执行多次时,各自的执行进度.三. 进程的属性1.进程的基本属性●进程的动态性●多个不同的进程可以包含相同的程序●进程可以并发执行●进程的三种基本状态等待态就绪态运行态2.进程的状态变化:运行态-等待态等待态-就绪态运行态--就绪态就绪态-运行态3.进程特性: 动态性,并发性,异步性第三节进程队列一. 进程控制块1.进程控制块作用:既PCB,是进程存在的标识2.进程控制块构成⏹标识信息:用来标识进程的存在和区分各个进程.进程名⏹说明信息:用于说明本进程的情况.包括:进程状态,等待原因,进程程序存放位置,进程数据存放位置⏹现场信息:用来当进程由于某种原因让出处理器时,记录与处理器有关的各种现场信息,包括:通用寄存器内容,控制寄存器内容,程序状态字寄存器内容⏹管理信息:用来对进程进行管理和调度的信息.包括进程优先级,队列指针二. 进程的创建和撤销1.进程创建:当系统为一个程序分配一个工作区(存放程序处理的数据集)和建立一个进程控制块后就创建了一个进程,刚创建的进程其状态为就绪状态(若执行过程中还缺少资源可以再将其转为等待状态).2.进程的撤销:当一个进程完成了特定的任务后,系统收回这个进程所占的工作区和取消该进程控制块,就撤销了该进程.3.原语:是操作系统设计用来完成特定功能且不可中断的过程,包括创建原语,撤销原语,阻塞原语,唤醒原语.三 . 进程队列的链接1.进程队列概念:为了管理方便,进程把处于相同状态的进程链接在一起,称为进程队列2.进程队列分类⏹就绪队列:把若干个等待运行的进程(就绪)进程按一定的次序链接起来的队列.⏹等待队列:是指把若干个的等待资源或等待某些事件的进程按一定的次序链接起来的队列.等待队列:是把若干个等待资源或等待某些事件的进程按一定的额次序链接起来的队列3.对列实现方法:只需将状态相同的进程控制块链接起来就可以.链接的方式包括单向链接和双向链接.4.队列管理:是指系统中负责进程入队和出队的工作⏹入队:是指一个进程进入到指定的队列从队首入队成为新的队首进程从队尾入队成为新的队尾进程插入到队列中某两个进程之间⏹出队:是指一个进程从所在的队列中退出,也存在三种情况第四节 unix系统中的进程一.unix进程的特点Unix中的进程执行用户程序时在用户态执行,执行操作系统程序时在核心态执行.在用户态执行的进程请求系统功能调用时,便转换到核心态执行操作系统程序,当一次系统调用结束时,该进程从核心态的执行返回到用户态执行用户程序二.Unix进程的组成1.进程控制块:⏹进程基本控制块:用来记录进程调度时必须使用的一些信息,常驻主存储器.把进程基本控制块的数据结构称为proc结构标识信息:包括用户标识(分为实际用户标识号和设置用户标识号)和进程标识.有关进程非常驻主存部分的信息:用来建立信息在主存与磁盘之间传送.包括:非常驻主存部分的=所在的地址,长度和一些必要的指针.有关进程调度的信息:包括:进程状态,标志,优先数以及调度有关的其他信息.其它信息:用于管理和控制的信息,如进程扩充控制块的地址,进程共享正文段和共享主存段的管理信息,进程接收的信号.⏹进程扩充控制块:随用户程序和数据装入主存储器或调出主存储器.把进程扩充控制块的数据结构称为user结构.包括:标识,现场保护,主存管理,文件读写,系统调用,进程控制与管理等.2,正文段:是指Unix中可供多个进程共享的程序.系统中设置了一张正文表TEXT[],用来指正该正文段在主存和磁盘上的位置,段的大小和调用该正文段的进程数等钱情况3.数据段:包括进程执行的非共享程序和程序执行时用到的数据.⏹用户zhai区:是进程在用户态执行时的工作区,主要用于函数调用的参数传递,现场保护,存放返回地址,存放局部变量等.⏹用户数据区:存放进程执行中的非共享程序和用户工作数据.⏹系统工作区:核心zhai:是进程在核心态执行时的工作区,主要用于函数调用的参数传递,现场保护,存返回地址,存放局部变量等 user区:存放进程扩充控制块.三 .Unix进程的状态运行状态,就绪状态,睡眠状态,创建状态,僵死状态.四.unix进程的创建和终止1.unix的进程树:0号进程(也称交换进程,是系统启动后unixde核心程序完成初始化后创建的第一个进程,在核心态运行.用来进行进程调度和让进程在主存与磁盘上进行交换-1号进程(页称初始化进程,由0号进程创建,在用户态运行,用来为终端用户请求注册时创建login进程-login进程(用来处理用户的登录过程,登录成功后创建shell进程-shell进程(等待用户输入命令).2.进程的创建:在unix中,除了0号进程和1号进程外,其他的进程总是使用系统调用fork来创建新进程,形成父子进程.子进程时父进程的一个印像,除了进程的状态,标识和时间有关的控制项外,全部复制父进程的。
第二章:操作系统复习题(含答案)一、单项选择:1.对操作系统的说法中错误的是______A.按运行环境将操作系统分为实时操作系统和分时操作系统和批处理操作系统B.分时操作系统具有多个终端C.实时操作系统是对外来信号及时做出反应的操作系统D.批处理操作系统指利用CPU的空余时间处理成批的作业2.MS-DOS是基于____的操作系统.A.多用户多任务(UNIX家族)B.单用户多任务(WINDOWS系列)C.单用户单任务(DOS)D.多用户单任务(基本没有)3.以下配置中,_____不是安装Windows XP硬件的最低要求。
A.Intel 80486DX、或PentiumCPU的计算机B.至少64M以上的内存C.至少1.5GB的硬盘空间D.4MB显存以上的PCI、AGP显卡4.通常情况下,Windows XP用户可以通过_______,从弹出的菜单中选取相应命令来创建快捷方式。
A.单击鼠标左键B.单击鼠标右键C.双击鼠标左键D.双击鼠标右键5.下列有关在Windows XP下查找文件或文件夹的说法,不正确的是______。
A.可以根据文件的位置进行查找B.可以根据文件的只读属性进行查找C.可以根据文件的内容进行查找D.可以根据文件的修改日期进行查找6.Windows XP提供了各种系统工具来帮助用户管理系统,其中的____可以检查、诊断和修复各种类型的磁盘损坏的错误。
A.磁盘扫描程序B.磁盘空间管理C.磁盘碎片整理程序D.备份程序7.在Windows XP资源管理器中,要查看磁盘的总容量、已用空间和可用空间等磁盘信息,通常可选择______菜单下属性功能。
A.文件B.编辑C.查看D.工具8.在WindowsXP中,当桌面上有多个窗口时,__________是当前窗口。
A.可以有多个窗口B.只有一个固定窗口C.被其它窗口盖住的窗口D.一个标题栏的颜色与众不同的窗口9.双击扩展名为.A VI的文件(音视频文件)后,WindowsXP将打开__________窗口。
1.1:存储程序式计算机的主要特点是:集中顺序过程控制(1)过程性:模拟人们手工操作(2)集中控制:由CPU集中管理(3)顺序性:程序计数器1.2:a:批处理系统的特点:早期批处理有个监督程序,作业自动过渡直到全部处理完,而脱机批处理的特点:主机与卫星机并行操作。
b:分时系统的特点:(1):并行性。
共享一台计算机的众多联机用户可以在各自的终端上同时处理自己的程序。
(2):独占性。
分时操作系统采用时间片轮转的方法使一台计算机同时为许多终端上同时为许多终端用户服务,每个用户的感觉是自己独占计算机。
操作系统通过分时技术将一台计算机改造为多台虚拟计算机。
(3):交互性。
用户与计算机之间可以进行“交互会话”,用户从终端输入命令,系统通过屏幕(或打印机)将信息反馈给用户,用户与系统这样一问一答,直到全部工作完成。
c:分时系统的响应比较快的原因:因为批量操作系统的作业周转时间较长,而分时操作系统一般采用时间片轮转的方法,一台计算机与许多终端设备连接,使一台计算机同时为多个终端用户服务,该系统对每个用户都能保证足够快的响应时间,并提供交互会话功能。
1.3:实时信息处理系统和分时系统的本质区别:实时操作系统要追求的目标是:对外部请求在严格时间范围内做出反应,有高可靠性和完整性。
其主要特点是资源的分配和调度首先要考虑实时性然后才是效率。
此外,实时操作系统应有较强的容错能力,分时操作系统的工作方式是:一台主机连接了若干个终端,每个终端有一个用户在使用。
用户交互式地向系统提出命令请求,系统接受每个用户的命令,采用时间片轮转方式处理服务请求,并通过交互方式在终端上向用户显示结果。
用户根据上步结果发出下道命。
分时操作系统将CPU 的时间划分成若干个片段,称为时间片。
操作系统以时间片为单位,轮流为每个终端用户服务。
每个用户轮流使用一个时间片而使每个用户并不感到有别的用户存在。
分时系统具有多路性、交互性、“独占”性和及时性的特征。
系统架构设计师教程(第3版)第 1 章操作系统本章主要介绍操作系统的基本概念及其形成、发展历史和主要类型,并指出操作系统的5大管理功能。
掌握操作系统原理的关键在于深入理解"一个观点、两条线索".一个观点是以资源管理的观点来定义操作系统;两条线索是操作系统如何管理计算机各类资源和控制程序的执行。
操作系统如何实现对这些资源的管理,其内涵、设计和实现是本章的主要内容。
1.1 操作系统的类型与结构计算机系统由硬件和软件两部分组成。
操作系统是计算机系统中最基本的系统软件,它既管理计算机系统的软、硬件资源,又控制程序的执行。
操作系统随着计算机研究和应用的发展进步形成并日趋成熟,它为用户使用计算机提供了一个良好的环境,从而使用户能充分利用计算机资源,提高系统的效率。
操作系统的基本类型有:批处理操作系统、分时操作系统和实时操作系统。
从资源管理的观点看,操作系统主要是对处理器、存储器、文件、设备和作业进行管理。
1.1.1 操作系统的定义系统中的硬件和软件资源,合理地组织计算机工作流程和有效地利用资源,在计算机与用户之间起接口的作用。
操作系统与硬件/软件的关系如图1-1所示。
图1-1 操作系统与硬件/软件的关系1.1.2 操作系统分类按照操作系统的功能划分,操作系统的基本类型有批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统、嵌入式操作系统等。
1.批处理操作系统在批处理操作系统(Batch Processing Operating System,BPOS)中,系统操作员将作业成批地输入计算机,由操作系统选择作业调入内存加以处理,最后由操作员将运行结果交给用户。
批处理操作系统有两个特点:一是"多道",指系统内可同时容纳多个作业;二是"成批",指系统能成批自动运行多个作业,在运行过程中不允许用户与其作业发生交互作用。
所以,合理地调度和管理系统资源是操作系统的主要任务。
第二章操作系统基础大学计算机基础教程操作系统基础操作系统是最重要的计算机系统软件,计算机发展到今天,从微型机到高性能计算机,无一例外都配置了一种或多种操作系统,操作系统已经成为现代计算机系统不可分割的重要组成部分。
本章主要内容包括:操作系统的基本概念和主要功能;中文Windows7操作系统的基本操作、文件管理、系统管理等。
2.1 操作系统概述计算机系统由硬件和软件两部分组成,操作系统(Operating System,OS)是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。
它在计算机系统中占据了特别重要的地位,而其他的诸如汇编程序、编译程序、数据库管理系统等系统软件,以及大量的应用软件,将都依赖于操作系统的支持,取得它的服务。
操作系统已成为现代计算机系统(大、中、小及微型机)中都必须配置的软件。
2.1.1操作系统的基本概念操作系统是一组控制和管理计算机软硬件资源,为用户提供便捷使用计算机的程序的集合。
它是配置在计算机硬件上的第一层软件,是对硬件功能的扩充。
操作系统在计算机中具有极其重要的地位,它不仅是硬件与其他软件的接口,也是用户和计算机之间进行“交流”的界面。
操作系统在计算机系统中特别重要,汇编程序、编译程序、数据库管理系统等系统软件,以及大量的应用软件,都依赖于操作系统的支持,取得它的服务。
操作系统已成为现代计算机系统中必须配置的软件。
没有安装软件的计算机称为裸机,而裸机无法进行任何工作;它不能从键盘、鼠标接收信息和操作命令,也不能在显示器屏幕上显示信息,更不能运行可以实现各种操作的应用程序。
图2-1给出了操作系统与计算机软件、硬件的层次关系。
图2-1操作系统与计算机软件和硬件的层次关系2.1.2操作系统的功能操作系统通过内部极其复杂的综合处理,为用户提供友好、便捷的操作界面,以便用户无需了解计算机硬件或系统软件的有关细节就能方便地使用计算机。
操作系统的主要任务是有效管理系统资源、提供友好便捷的用户接口。
第2章进程和线程的管理习题及解答例题解析例2.2.1 试说明进程和程序之间的区别和联系。
解进程和程序是既有区别又有联系的两个概念。
(1)进程是动态的,程序是静态的。
程序是一组有序的指令集合,是一个静态的概念;进程则是程序及其数据在计算机上的一次执行,是一个动态的集合。
离开了程序,进程就失去了存在的意义,但同一程序在计算机上的每次运行将构成不同的进程。
程序可看作是电影的胶片,进程可以看作电影院放电影的过程。
(2)一个进程可以执行多个程序,如同一个电影院的一场电影可放映多部影片。
(3)一个程序可被多个进程执行,如同多个影院同时利用一个电影的胶片放映同一部电影。
(4)程序可以长期保存,进程只能存在于一段时间。
程序是永久存在的,而进程有从被创建到消亡的生命周期。
例2.2.2 举例说明多道程序系统失去了封闭性和再现性。
解例如,有两个循环程序A和B,共享一个变量N。
程序A每执行一次时,都要做N:=N+1操作;程序B则每执行一次时,都要执行print(N)操作,然后再将N的值置成“0”。
程序A和B在多道程序系统中同时运行。
假定某时刻变量N的值为n,可能出现下述三种情况:(1)N:=N+1 在print(N)和N:=0之前,此时得到N值变化过程为n+1、n+1、0;(2)N:=N+1 在print(N)和N:=0之后,此时得到N值变化过程为n 、 0 、1;(3)N:=N+1 在print(N)之后和N:=0之前,此时得到N值变化过程为n、n+1、0。
所以,在A、B程序多次执行过程中,虽然其每次执行时的环境和初始条件都相同,但每次得到的结果却不一定相同。
例 2.2.3 为什么将进程划分成执行、就绪和阻塞三个基本状态?解根据多道程序执行的特点,进程的运行是走走停停的。
因此进程的初级状态应该是执行和等待状态。
处于执行状态的进程占用处理机执行程序,处于等待状态的进程正在等待处理机或者等待其它某种事件的发生。
但是,当处理机空闲时,并不是所有处于等待状态的进程都能放到处理机上执行,有的进程即使分配给它处理机,它也不能执行,因为它的执行的条件没有得到满足。
第二章进程管理1.操作系统主要是对计算机系统全部 (1) 进行管理,以方便用户、提高计算机使用效率的一种系统软件。
它的主要功能有:处理机管理、存储管理、文件管理、 (2) 管理和设备管理等。
Windows和Unix是最常用的两类操作系统。
前者是一个具有图形界面的窗口式的 (3) 系统软件,后者是一个基本上采用 (4) 语言编制而成的的系统软件。
在 (5) 操作系统控制下,计算机能及时处理由过程控制反馈的信息并作出响应。
供选答案:(1): A. 应用软件 B. 系统软硬件C. 资源D. 设备(2): A. 数据 B. 作业C. 中断D. I/O(3): A. 分时 B. 多任务C. 多用户D. 实时(4): A. PASCAL B. 宏C. 汇编D. C(5): A. 网络 B. 分时C. 批处理D. 实时答案:CBBDD2.操作系统是对计算机资源进行的 (1) 系统软件,是 (2) 的接口。
在处理机管理中,进程是一个重要的概念,它由程序块、 (3) 和数据块三部分组成,它有3种基本状态,不可能发生的状态转换是 (4) 。
虚拟存储器的作用是允许程序直接访问比内存更大的地址空间,它通常使用 (5) 作为它的一个主要组成部分。
供选答案:(1): A. 输入和输出 B. 键盘操作C. 管理和控制D. 汇编和执行(2): A. 软件和硬件 B. 主机和外设C. 高级语言和机器语言D. 用户和计算机(3): A. 进程控制块 B. 作业控制块C. 文件控制块D. 设备控制块(4): A. 运行态转换为就绪态 B. 就绪态转换为运行态C. 运行态转换为等待态D. 等待态转换为运行态(5): A. 软盘 B. 硬盘C. CDROMD. 寄存器答案:CDADB3.在计算机系统中,允许多个程序同时进入内存并运行,这种方法称为 D。
A. Spodling技术B. 虚拟存储技术C. 缓冲技术D. 多道程序设计技术4.分时系统追求的目标是 C。
第二章进程管理2. 试画出下面4条语句的前趋图:S2: b:=z+1;S3: c:=a-b;S4: w:=c+1;3.程序在并发执行时,由于它们共享系统资源,以及为完成同一项任务而相互合作,致使在这些并发执行的进程之间,形成了相互制约的关系,从而也就使得进程在执行期间出现间断性。
4. 程序并发执行时为什么会失去封闭性和可再现性?因为程序并发执行时,是多个程序共享系统中的各种资源,因而这些资源的状态是由多个程序来改变,致使程序的运行失去了封闭性。
而程序一旦失去了封闭性也会导致其再失去可再现性。
5. 在操作系统中为什么要引入进程概念?它会产生什么样的影响?为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制和描述,从而在操作系统中引入了进程概念。
影响: 使程序的并发执行得以实行。
6. 试从动态性,并发性和独立性上比较进程和程序?a. 动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只是一组有序指令的集合,是静态实体。
b. 并发性是进程的重要特征,同时也是OS的重要特征。
引入进程的目的正是为了使其程序能和其它建立了进程的程序并发执行,而程序本身是不能并发执行的。
c. 独立性是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位。
而对于未建立任何进程的程序,都不能作为一个独立的单位来运行。
7. 试说明PCB的作用?为什么说PCB是进程存在的唯一标志?a. PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。
PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息。
因而它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程。
b. 在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的,所以说,PCB是进程存在的唯一标志。
第二章用户界面2.1 知识点汇总1、作业及作业步图2-1 作业及作业步2、系统调用:用户程序中对操作系统的调用称为系统调用。
使用户程序通过简单的调用,来实现一些硬件相关,应用无关的工作,从而简化了用户程序。
独立程序:不需要操作系统帮助的程序(包括程序的启动和结束)非独立程序:需要操作系统帮助的程序图2-2 系统调用的执行过程系统调用的特点:(1)系统调用指令是由硬件决定的(即:CPU中的中断向量表)。
CPU的指令集中都有一条系统调用指令,又称访管指令但系统调用具体实现的功能由操作系统决定(即:操作系统中的,系统调用分支表,及系统调用代码)。
因此:同一种计算机上的不同操作系统,系统调用指令是相同的。
同一操作系统,在不同的计算机上,系统调用指令是不同的。
(2)系统调用是动态连接的静态连接:程序在编译时,将被调用的程序嵌入到自身中。
如:库函数调用动态连接:程序在执行的过程中,执行到调用指令时,才连接到被调用的程序并执行。
如:动态连接库(dynamic link library,DLL),系统调用。
由于操作系统是动态连接的,所以,缩短了用户程序,使用户程序和操作系统提供的系统调用功能相互独立。
(3)系统调用的调用地址和返回地址不是固定的。
系统调用的地址,由系统启动装载操作系统时,存放系统调用代码的位置决定,每次开机都可能存放在不同的位置上。
返回地址,由用户程序中系统调用指令的位置决定。
(4)安全接口在执行系统调用和从系统调用中返回时,要分别保存和恢复程序状态字PSW,并设置PSW中的系统态/用户态标志位,进行系统态和用户态的切换。
执行系统调用时,进入系统态。
从系统调用中返回用户程序时,进入用户态。
状态切换的目的:某些特权指令只能在系统态下执行。
一些地址,只能在系统态下访问。
从而限制了用户程序不能随意地进入操作系统区域,读写操作系统的内部代码,也限制了用户程序不能随意进入其它用户程序的区域。
中断:是指计算机在执行程序的过程中,当遇到需要立即处理的事件时,立即暂停当前正在运行的程序,转去执行有关服务程序,处理完后自动返回原程序。
注意:1)“本章要点”部分,用红字标注的不是期末考试出题范围。
2)“习题部分”用蓝字标注的是重点习题,期末考试50%的题目是这些习题的原题。
红字标注的习题期末考试不考,仅供考研的同学参考。
3)大部分习题答案只给出要点,同学们可以自行适当补充,但一定要简明扼要。
4)如“本章要点”部分用红字标注的非考试内容,在“习题”部分有相关的重点习题,则对该部分内容只需做该习题即可。
------------------------------------------------------------第二章要点这一章和第3章是本课程最重要的两章。
2.1 进程的基本概念本小节重点内容是进程的概念、进程的三种状态及转换(围绕P38图2-5理解)、进程控制块FCB的概念及作用、进程就绪队列和阻塞(等待)队列的概念。
其它内容作一般性的了解即可。
2.2 进程控制掌握原语的概念。
其它内容作一般性的了解即可。
2.3 进程同步这一小节是至关重要的,也是相当难的。
(1)P47-50,临界资源问题、临界区的概念、同步机制应遵循的规则。
(2)P50,整型信号量原语的含义,及其缺点。
(3)P51,记录型信号量原语的含义,特点,及其优点(与整形信号量对比)。
(4)P52-53 AND型信号量和信号量集,一般性了解。
(5)P53 2.3.3 信号量的应用,一般性了解。
(6)P55 管程,一般性了解。
只有凭借毅力,坚持到底,才有可能成为最后的赢家。
这些磨练与考验使成长中的青少年受益匪浅。
在种2.4 经典进程的同步问题熟练掌握用记录型信号量解生产者—消费者、哲学家进餐、读者--写者问题。
其它解法(AND信号量、信号量集、管程等)可以不看。
2.5 进程通信:一般性了解。
2.6 线程概念性的掌握什么是线程、线程与进程主要的异同、线程的状态、内核线程、用户线程。
对于软件班和数学班的同学,上述概念将结合实验考核,二学历班的同学无此要求。
教材习题1 什么是前驱图?为什么要引入前驱图?答:P35。