计算机操作系统复习总结-汤子瀛知识讲解
汤子瀛《计算机操作系统》复习笔记和课后习题考研真题及其详解(输入输出系统)【圣才出品】
第6章输入输出系统6.1 复习笔记一、I/O系统的功能、模型和接口1.I/O系统的基本功能(1)隐藏物理设备的细节。
(2)与设备的无关性。
(3)提高处理机和I/O设备的利用率。
(4)对I/O设备进行控制。
(5)确保对设备的正确共享。
(6)错误处理。
2.I/O系统的层次结构和模型(1)I/O软件的层次结构如图6-1所示为I/O系统的层次结构,图中的箭头表示I/O的控制流:图6-1 I/O系统的层次结构(2)I/O系统中各种模块之间的层次视图如图6-2所示,I/O系统中各种I/O模块之间的层次视图。
图6-2 I/O系统中各种模块之间的层次视图3.I/O系统接口在I/O系统与高层之间的接口中,根据设备类型的不同,又进一步分为:(1)块设备接口。
(2)流设备接口(字符设备接口)。
(3)网络通信接口。
二、I/O设备和设备控制器1.I/O设备(1)I/O设备的类型①按使用特性分类I/O设备按照使用特性分为存储设备和I/O设备,其中I/O设备又可分为输入设备、输出设备和交互式设备。
②按传输速率分类从设备的传输速率上I/O设备又分为低速设备、中速设备和高速设备。
③信息交换的单位I/O设备按照信息交换的单位分为块设备和字符设备。
(2)设备与控制器之间的接口设备并不是直接与CPU进行通信,而是与设备控制器通信,因此,在I/O设备中应含有与设备控制器间的接口,在该接口中有三种类型的信号(见图6-3所示),各对应一条信号线。
三种信号线中只有数据线是双向的。
图6-3 设备与控制器间的接口2.设备控制器(1)设备控制器的基本功能①接收和识别命令。
②数据交换。
③标识和报告设备的状态。
④地址识别。
⑤数据缓冲区。
⑥差错控制。
(2)设备控制器的组成设备控制器的组成如图6-4所示,包括:①设备控制器与处理机的接口。
②设备控制器与设备的接口。
③I/O逻辑。
图6-4 设备控制器的组成3.I/O通道(1)I/O通道设备的引入①定义I/O通道是专门负责输入/输出的处理机。
计算机操作系统复习总结-汤子瀛
操作系统的定义:操作系统是以一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。
1.1.1操作系统的目标:1.方便性2.有效性3.可扩充性4.开放性2.1.2 操作系统的作用:1.os作为用户与计算机硬件系统之间的接口2.os作为计算机系统资源的管理者3.os用作扩充机器1.1.3 推动操作系统发展的主要动力:1.不断提高计算机资源利用率2.方便用户3.器件的不断更新换代4.计算机体系结构的不断发展1.2操作系统的发展过程:1.2.1无操作系统的计算机系统:1.人工操作方式2.脱机输入输出(Off-Line I/O)方式1.2.2单道批处理系统(特征:自动性;顺序性;单道性)1.2.3多道批处理系统:1.多道程序设计的基本概念:(1)提高CPU的利用率)(2)可提高内存和I/O设备利用率(3)增加系统吞吐量2.多道批处理系统的特征:(1)多道性(2)无序性(3)调度性3.多道批处理系统的优缺点:(1)资源利用率高(2)系统吞吐量大(3)平均周转时间长(4)无交互能力4.多道批处理系统需要解决的问题:(1)处理机管理问题(2)内存管理问题(3)I/O设备管理问题(4)文件管理问题(5)作业管理问题1.2.4分时系统:分时系统是指,在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中的资源。
1.分时系统的产生:推动分时系统形成和发展的主要动力,是用户的需求(需要的具体表现:人-机交互、共享主机、便于用户上机)2.分时系统实现中的关键问题:(1)及时接收(2)及时处理3.分时系统的特征:(1)多路性(2)独立性(3)及时性(4)交互性1.2.5实时系统:实时系统是指系统能及时(或即时)响应外部事件的请求,在规定的时间内对该事件的处理,并控制所有实时任务协调一致地运行。
1.应用需求:(1)实时控制(2)实时信息处理2.实时任务:1)按任务执行时是够呈现周期性来划分:(1)周期性实时任务(2)非周期性实时任务2)根据对截至时间的要求来划分:(1)硬实时任务(2)软实时任务3. 实时系统与分时系统特征的比较:(1)多路性(2)独立性(3)及时性(4)交互性:仅限于访问系统中某些特定的专用服务程序,它不像分时系统那样能向终端用户提供数据处理、资源共享等服务(5)可靠性:实时系统要求更高P111.3操作系统的基本特性:1.3.1并发:并行性是指两个或多个事件在同一时刻发生;而并发性是指两个或多个时间在同一时间间隔内发生。
汤子瀛计算机操作系统第4版知识点总结笔记课后答案
第1章操作系统引论1.1复习笔记一、操作系统的目标和作用1.操作系统的目标在计算机系统上配置操作系统的主要目标是方便性、有效性、可扩充性和开放性。
(1)方便性配置操作系统(OS)后,系统可以使用编译命令将用户采用高级语言书写的程序翻译成机器代码,用户可以直接通过OS所提供的各种命令操纵计算机系统,使计算机变得易学易用。
(2)有效性① 提高系统资源利用率早期未配置OS的计算机系统,各种资源无法得到充分利用,配置OS后,能有效分配各种设备的工作状态,提高系统资源的利用率。
② 提高系统的吞吐量OS可以通过合理地组织计算机的工作流程,加速程序的运行,缩短程序的运行周期,从而提高系统的吞吐量。
(3)可扩充性OS必须具有很好的可扩充性,才能适应计算机硬件、体系结构以及应用发展的要求。
(4)开放性开放性是指系统能遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。
开放性是衡量一个新推出系统或软件能否被广泛应用的至关重要的因素。
2.操作系统的作用操作系统(Operating System,OS)是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。
其主要作用是管理好这些设备,提高它们的利用率和系统的吞吐量,并为用户和应用程序提供一个简单的接口,便于用户使用。
可以从以下几个方面讨论它的作用:(1)OS作为用户与计算机硬件系统之间的接口OS处于用户与计算机硬件系统之间,用户通过OS来使用计算机系统。
图1-1是OS作为接口的示意图。
图1-1 OS作为接口的示意图从图中可以看出,用户可以通过命令方式、系统调用方式和图标—窗口方式来实现与操作系统的通信,并取得它的服务。
(2)OS作为计算机系统资源的管理者① 管理处理器,用于分配和控制处理器;② 管理存储器,主要负责内存的分配与回收;③ 管理I/O设备,负责I/O设备的分配与操纵;④ 管理文件,负责文件的存取、共享和保护。
注意:当一台计算机系统同时供多个用户使用时,则用户对系统中共享资源的需求有可能发生冲突,因此,操作系统必须对使用资源的请求进行授权,已协调用户对共享资源的使用。
汤子瀛《计算机操作系统》复习笔记和课后习题考研真题及其详解(保护和安全)【圣才出品】
第12章保护和安全12.1 复习笔记一、安全环境1.实现“安全环境”的主要目标和面临的威胁实现“安全环境”的主要目标和威胁如表12-1所示。
表12-1 “安全环境”的目标与威胁2.系统安全的特征(1)多面性主要有三个方面:①物理安全。
②逻辑安全。
③安全管理。
(2)动态性①信息的时效性。
②攻击手段的不断翻新。
(3)层次性为了简化系统安全的复杂性,系统安全通常采用层次-模块化结构方法。
(4)适度性即根据实际需要提供适度的安全目标加以实现。
3.计算机安全的分类在“可信任计算机系统评价标准”中将计算机系统的安全程度划分为:D、C、B、A四类。
共分为D1、C1、C2、B1、B2、B3和A1七个等级,其安全性依次提高。
二、数据加密技术1.数据加密原理(1)数据加密模型数据加密模型主要包括明文、密文、加密(解密)算法E(D)、密钥K。
(2)基本加密方法①易位法易位法是按照一定的规则,重新安排明文中的比特或字符的顺序来形成密文,而字符本身保持不变。
其中比特易位实现方法简单易行,并可用硬件实现,主要用于数字通信中;而字符易位法是利用密钥对明文进行易位后形成密文。
②置换法置换法是按照一定的规则,用一个字符去置换另一个字符来形成密文。
2.对称加密算法与非对称加密算法(1)对称加密算法在对称加密算法中,在加密算法和解密算法之间存在着一定的相依关系,即加密和解密算法往往使用相同的密钥;或者在知道了加密密钥Ke后,就很容易推导出解密密钥Kd。
(2)非对称加密算法非对称加密算法的加密密钥Ke和解密密钥Kd不同,而且难以从Ke推导出Kd来,故而可将其中的一个密钥公开而成为公开密钥,故该算法也可称为公开密钥算法。
3.数字签名和数字证明书(1)数字签名在利用计算机网络传送报文时,可将公开密钥法用于电子(数字)签名,来代替传统的签名。
(2)数字证明书(Certificate)数字证明书是由一个大家都信得过的认证机构CA(Certification Authority)为公开密钥发放的一份公开密钥证明书,用于证明通信请求者的身份。
汤子瀛《计算机操作系统》(第4版)笔记和课后习题考研真题详解
汤子瀛《计算机操作系统》(第4版)笔记和课后习题(含考研真题)详解完整版>精研学习wang>无偿试用20%资料
全国547所院校视频及题库资料
考研全套>视频资料>课后答案>往年真题>职称考试
第1章操作系统引论
1.1复习笔记
1.2课后习题详解
1.3考研真题详解
第2章进程的描述与控制
2.1复习笔记
2.2课后习题详解
2.3考研真题详解
第3章处理机调度与死锁
3.1复习笔记
3.2课后习题详解
3.3考研真题详解
第4章存储器管理
4.1复习笔记
4.2课后习题详解
4.3考研真题详解
第5章虚拟存储器
5.1复习笔记
5.2课后习题详解
5.3考研真题解
第6章输入输出系统
6.1复习笔记
6.2课后习题详解
6.3考研真题详解
第7章文件管理
7.1复习笔记
7.2课后习题详解
7.3考研真题详解
第8章磁盘存储器的管理
8.1复习笔记
8.2课后习题详解
8.3考研真题详解
第9章操作系统接口
9.1复习笔记
9.2课后习题详解
9.3考研真题详解
第10章多处理机操作系统10.1复习笔记
10.2课后习题详解10.3考研真题详解
第11章多媒体操作系统11.1复习笔记
11.2课后习题详解11.3考研真题详解
第12章保护和安全12.1复习笔记
12.2课后习题详解12.3考研真题详解。
汤子瀛《计算机操作系统》复习笔记和课后习题考研真题及其详解(操作系统接口)【圣才出品】
第9章操作系统接口9.1 复习笔记一、用户接口1.字符显示式联机用户接口(1)命令行方式该方式是以行为单位,输入和显示不同的命令。
每行长度一般不超过256个字符,一般情况下,以回车符作为一个命令的结束标记。
通常,命令的执行采用的是间断式的串行执行方式,即后一个命令的输入一般需等到前一个命令执行结束。
简单命令的一般形式为:Command arg1 arg2 …argn其中Command是命令名,又称命令动词,其余为该命令所带的执行参数,有些命令可以没有参数。
(2)批命令方式操作系统都支持一种称为批命令的特别命令方式,允许用户预先把一系列命令组织在一种称为批命令文件的文件中,一次建立,多次执行。
使用这种方式可减少用户输入命令的次数,既节省了时间,减少了出错概率,又方便了用户。
通常批命令文件都有特殊的文件扩展名,如MS-DOS系统的.BAT文件。
2.图形化联机用户接口字符显示式用户接口要牢记各种命令的动词和参数,必须严格按规定的格式输入命令,而且不同操作系统所提供的命令语言的词法、语法、语义及表达形式是不一样的,这样既不方便又花费时间。
于是,图形化用户接口GUI(Graphics User Interface)便应运而生。
3.联机命令的类型(1)系统访问类(2)文件操作命令①显示文件命令type。
②拷贝文件命令copy。
③文件比较命令comp。
④重新命名命令Rename。
⑤删除文件命令erase。
(3)目录操作命令①建立子目录命令mkdir。
②显示目录命令dir。
③删除子目录命令rmdir。
④显示目录结构命令tree。
⑤改变当前目录命令chdir。
(4)其他命令①输入输出重定向命令。
②管道连接。
③过滤命令。
④批命令。
二、Shell命令语言1.简单命令简介(1)简单命令的格式简单命令的格式比较自由,包括命令名字符的个数及用于分隔命令名、选项、各参数间的空格数等,都是任意的。
一条命令可有多个选项,用于改变命令执行动作的类型。
汤子瀛计算机操作系统第4版知识点总结笔记课后答案
汤子瀛计算机操作系统第4版知识点总结笔记课后答案第1章操作系统引论1.1复习笔记一、操作系统的目标和作用1.操作系统的目标在计算机系统上配置操作系统的主要目标是方便性、有效性、可扩充性和开放性。
(1)方便性配置操作系统(OS)后,系统可以使用编译命令将用户采用高级语言书写的程序翻译成机器代码,用户可以直接通过OS所提供的各种命令操纵计算机系统,使计算机变得易学易用。
(2)有效性① 提高系统资源利用率早期未配置OS的计算机系统,各种资源无法得到充分利用,配置OS后,能有效分配各种设备的工作状态,提高系统资源的利用率。
② 提高系统的吞吐量OS可以通过合理地组织计算机的工作流程,加速程序的运行,缩短程序的运行周期,从而提高系统的吞吐量。
(3)可扩充性OS必须具有很好的可扩充性,才能适应计算机硬件、体系结构以及应用发展的要求。
(4)开放性开放性是指系统能遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。
开放性是衡量一个新推出系统或软件能否被广泛应用的至关重要的因素。
2.操作系统的作用操作系统(Operating System,OS)是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。
其主要作用是管理好这些设备,提高它们的利用率和系统的吞吐量,并为用户和应用程序提供一个简单的接口,便于用户使用。
可以从以下几个方面讨论它的作用:(1)OS作为用户与计算机硬件系统之间的接口OS处于用户与计算机硬件系统之间,用户通过OS来使用计算机系统。
图1-1是OS作为接口的示意图。
图1-1 OS作为接口的示意图从图中可以看出,用户可以通过命令方式、系统调用方式和图标—窗口方式来实现与操作系统的通信,并取得它的服务。
(2)OS作为计算机系统资源的管理者① 管理处理器,用于分配和控制处理器;② 管理存储器,主要负责内存的分配与回收;③ 管理I/O设备,负责I/O设备的分配与操纵;④ 管理文件,负责文件的存取、共享和保护。
汤子瀛《计算机操作系统》考研2021考研真题解析与笔记
汤子瀛《计算机操作系统》考研2021考研真题解析与笔记第一部分考研真题精选一、选择题1下列关于线程的描述中,错误的是()。
[2019年408统考]A.内核级线程的调度由操作系统完成B.操作系统为每个用户级线程建立一个线程控制块C.用户级线程间的切换比内核级线程间的切换效率高D.用户级线程可以在不支持内核级线程的操作系统上实现【答案】B查看答案【解析】用户级线程仅存在于用户空间中,与内核无关,其线程库对用户线程的调度算法与OS的调度算法无关,不需要操作系统为每个用户级线程建立一个线程控制块。
2下列选项中,可能将进程唤醒的事件是()。
[2019年408统考]Ⅰ.I/O结束Ⅱ.某进程退出临界区Ⅲ.当前进程的时间片用完A.仅ⅠB.仅ⅢC.仅Ⅰ、ⅡD.Ⅰ、Ⅱ、Ⅲ【答案】C查看答案【解析】可能唤醒进程的事件包括I/O结束、某进程退出临界区等。
当前进程的时间片用完会引起另一个进程的调度并运行,不是唤醒进程。
3下列关于系统调用的叙述中,正确的是()。
[2019年408统考]Ⅰ.在执行系统调用服务程序的过程中,CPU处于内核态Ⅱ.操作系统通过提供系统调用避免用户程序直接访问外设Ⅲ.不同的操作系统为应用程序提供了统一的系统调用接口Ⅳ.系统调用是操作系统内核为应用程序提供服务的接口A.仅Ⅰ、ⅣB.仅Ⅱ、ⅢC.仅Ⅰ、Ⅱ、ⅣD.仅Ⅰ、Ⅲ、Ⅳ【答案】C查看答案【解析】系统调用接口是连接操作系统和应用程序的桥梁,而接口是以具体程序中的函数实现的,称之为系统调用,在不同的操作系统中,具有不同的系统调用,但是它们实现的功能是基本相同的。
4下列选项中,可用于文件系统管理空闲磁盘块的数据结构是()。
[2019年408统考]Ⅰ.位图Ⅱ.索引节点Ⅲ.空闲磁盘块链Ⅳ.文件分配表(FAT)A.仅Ⅰ、ⅡB.仅Ⅰ、Ⅲ、ⅣC.仅Ⅰ、ⅢD.仅Ⅱ、Ⅲ、Ⅳ【答案】B查看答案【解析】文件系统管理空闲磁盘块的数据结构包括位图、链表、文件分配表。
索引结点是指在许多类Unix文件系统中的一种数据结构。
计算机操作系统汤子瀛版
当新到达的作业(进程)比正在执行的作业(进程) 明显地短时,将剥夺长作业(进程)的执行,将处理 机分配给作业(进程),使之优先执行。
第一节 调度的类型和模型
3、中级调度 又称中程调度
(1)引入中级调度的目的
是为了提高内存的利用率和系统吐量。
(2)定义
应使那些暂时不能运行的进程不再占用宝贵的 内存空间,而将它们调至外存上去等待,称此 时的进程状态为就绪驻外存状态,或挂起状态。 当这些进程重又举备运行条件,且内存又稍有 空闲时,由中级调度决定,将外存上的那些重 又具备运动条件的就绪进程重新调入内存,并 修改其状态为就绪态,挂在就绪队列上,等待 进程调度。
重要准则。
①定义
截止时间:指某任务必须开始执行的最迟时间,或必须完成的最 迟时间,对于严格的实时系统,其调度方式和调度算法必须保证 这点。否则将可能引起难以预料的后果。
(4)优先权准则 让紧急的作业,得到及时的处理。
第二节 调度算法
• 调度算法是指:根据系统的资源分配策 略所规定的资源分配算法,对于不同的 系统和系统目标,通常采用不同的调度 算法。
2)具有高低级调度的调度队列模型
图 3-2 具有高、低两级调度的调度队列模型
3、同时具有三级调度的调度队列模型
当在OS中引入中级调度后,可把就绪态 分为内存就绪状态、外存就绪状态。可 把阻塞状态进一步分成内存阻塞和外存 阻塞两种状态。在调出操作的情况下, 可使内存就绪转变为外存就绪、内存阻 塞转变为外存阻塞;在中级调度的作用 下,外存就绪转变为内存就绪。
这种调度方式的优点是实现简单、系统开销小,适用大 于多数的批处理系统环境。但它难于满足紧急任务的 要求。
(2)抢占方式(Preemptive Mode) 这种调度方式,允许调度程序根据某种原则,去停止 某个正在执行的进程,将已分配给该进程的处理机, 重新分陪另一进程。
精编计算机操作系统课件(汤子瀛)资料
第一章 操作系统引论
在OS (1) 提高CPU的利用率。
当内存中仅有一道程序时,每逢该程序在运行中发出 I/O请求后,CPU空闲,必须在其I/O完成后才继续运行;尤 其因I/O设备的低速性,更使CPU的利用率显著降低。图 14(a)示出了单道程序的运行情况,从图可以看出:在t2~t3、 t6~t7时间间隔内CPU空闲。在引入多道程序设计技术后, 由于同时在内存中装有若干道程序,并使它们交替地运行, 这样,当正在运行的程序因I/O而暂停执行时,系统可调度 另一道程序运行,从而保持了CPU处于忙碌状态。
(1) 及时接收。 (2) 及时处理。
第一章 操作系统引论
3. 分时系统的特征 (1) 多路性。 (2) 独立性。 (3) 及时性。 (4) 交互性。
第一章 操作系统引论
1.2.5 实时系统
所 谓 “ 实 时 ” , 是 表 示 “ 及 时 ” , 而 实 时 系 统 (RealTime System)是指系统能及时(或即时)响应外部事件的请求, 在规定的时间内完成对该事件的处理,并控制所有实时任务 协调一致地运行。
1. 应用需求 (1) 实时控制。 (2) 实时信息处理。
第一章 操作系统引论
2. 实时任务
1) (1) 周期性实时任务。 (2) 非周期性实时任务。 外部设备所发出的激励信号并无明显的周期性, 但都必须联系着一个截止时间(Deadline)。它又可分为: ① 开始截止时间——任务在某时间以前必须开始执行; ② 完成截止时间——任务在某时间以前必须完成。
第一章 操作系统引论
1.1.3 推动操作系统发展的主要动力
1. 不断提高计算机资源利用率 2. 3. 器件的不断更新换代 4. 计算机体系结构的不断发展
操作系统知识点总结
计算机操作系统(第四版)编著:汤小丹,梁红兵,哲凤屏,汤子瀛1、考试题型一.选择题(15题,每题2分)二.判断题(10题,每题2分)三.简答题(2题,每题10分)四.计算题(2题,每题10分)五.应用题(2题,每题10分)2、考试内容分布第一章操作系统概论1.1.1操作系统目标*1.1.2操作系统的作用*1.1.3推动操作系统发展的主要动力1.2.1未配置操作系统的计算机系统1.2.2单道批处理系统*1.2.3多道批处理系统多道批处理系统的优缺点*1.2.4分时系统特征1.2.5实时系统概念1.3操作系统基本特征并行,并发,共享,虚拟1.4.1处理机管理功能1.4.2存储管理系统1.4.3设备管理功能1.4.4文件管理功能1.4.5操作系统与用户之间的接口习题:1.2.11第二章进程的描述和控制2.1.1前趋图2.1.2程序顺序执行2.2进程的描述*进程的基本状态及转化*2.3进程控制进程的创建*2.4进程同步临界资源同步机制应遵循的规则*2.4.3信号量机制*2.4.4信号量的应用2.5经典进程同步问题2.6进程通信2.7线程的基本概念2.8.3线程的创建和终止*习题:7.9.11.16.22第三章处理机调度与死锁3.1.1处理机调度的层次*3.1.2处理机调度算法的目标3.2作业和作业调度3.2.3先来先服务和短作业优先调度算法3.2.4优先级调度算法和高响应比优先调度算法3.3进程调度3.3.2轮转调度算法*3.3.4优先级调度算法3.5死锁概述3.5.3死锁的定义、必要条件和处理方法3.6预防死锁3.7避免死锁3.8死锁的检测与解除习题:12.13.27.31第四章存储器管理4.1.1多层结构的存储器系统*4.1.3高速缓存和磁盘缓存*4.2.1程序的装入*4.3连续分配存储管理方式*分区分配操作*4.3.4基于顺序搜索的动态分区分配算4.3.6动态可重定位位分区分配4.4对换4.5分页存储管理方式4.6分段存储管理方式习题:7.13.18.19.24第五章虚拟存储器5.1虚拟存储器概述5.2请求分页存储管理方式5.3页面置换算法最佳置换算法*和先进先出置换算法*5.3.2最近最久未使用和最少使用置换算法*5.4抖动产生“抖动”的原因*5.5请求分段存储管理方式请求段表机制*缺页中断机构*习题:3.8.13.18第六章输入输出系统6.2I/O设备和设备控制器6.3中断机构和中断处理程序6.7缓冲区管理6.8.2早起的磁盘调度算法6.8.3基于扫描的磁盘调度算法SCAN第七章文件管理7.1.1数据项、记录和文件7.1.2文件名和类型7.2文件的逻辑结构7.3文件目录FCB文件控制快*第九章操作系统接口9.4系统调用的概念和类型3、题目预测计算不同算法的作业调度算法时间信号量机制页面置换算法LRU等银行家算法判断资源分配图,即死锁的检测注:主要章节在第三章适用于计算机专业书籍为《计算机操作系统》第四版个人整理。
计算机操作系统【第三章】汤子瀛版
计算机操作系统【第三章】汤子瀛版计算机操作系统【第三章】1. 什么是临界资源和临界区?a. 一次仅允许一个进程使用的资源成为临界资源.b. 在每个进程中,访问临界资源的那段程序称为临界区.2. 为什么进程在进入临界区之前,应先执行"进入区"代码,在退出临界区后又执行"退出区"代码?为了实现多个进程对临界资源的互斥访问,必须在临界区前面增加一段用于检查欲访问的临界资源是否正被访问的代码,如果未被访问,该进程便可进入临界区对资源进行访问,并设置正被访问标志,如果正被访问,则本进程不能进入临界区,实现这一功能的代码成为"进入区"代码;在退出临界区后,必须执行"退出区"代码,用于恢复未被访问标志.3. 同步机构应遵循哪些基本准则?为什么?a. 空闲让进.b. 忙则等待.c. 有限等待.d. 让权等待.4. 试从物理概念上来说明记录型信号量和wait和signal操作?(有待讨论).5. 你认为整型信号量机制和记录型信号量机制,是否完全遵循了同步机构的四条准则?a. 在整型信号量机制中,未遵循"让权等待"的准则.b. 记录型信号量机制完全遵循了同步机构的"空闲让进,忙则等待,有限等待,让权等待"四条准则.6. 在生产者-消费者问题中,如果缺少了signal(full)或signal(empty),对执行结果会有何影响?生产者-消费者问题可描述如下:var mutex,empty,full: semaphore:=1,n,0;buffer: array[0,...,n-1] of item; in,out: integer:=0,0;beginparbeginproducer: beginrepeat..produce an item in nextp;..wait(empty);wait(mutex);buffer(in):=nextp;in:=(in+1) mod n;signal(mutex);/* ************** */signal(full);/* ************** */until false;endconsumer: beginrepeatwait(full);wait(mutex);nextc:=buffer(out);out:=(out+1) mod n;signal(mutex);/* ************** */signal(empty);/* ************** */consume the item in nextc;until false;endparendend可见,生产者可以不断地往缓冲池送消息,如果缓冲池满,就会覆盖原有数据,造成数据混乱.而消费者始终因wait(full)操作将消费进程直接送入进程链表进行等待,无法访问缓冲池,造成无限等待.7. 在生产者-消费者问题中,如果将两个wait操作即wait(full)和wait(mutex)互换位置;或者是将signal(mutex)与signal(full)互换位置结果会如何?var mutex,empty,full: semaphore:=1,n,0;buffer: array[0,...,n-1] of item;in,out: integer:=0,0;beginparbeginproducer: beginrepeat..produce an item in nextp;..wait(empty);wait(mutex);buffer(in):=nextp;in:=(in+1) mod n;/* ***************** */signal(full);signal(mutex);/* ***************** */until false;endconsumer: beginrepeat/* **************** */wait(mutex);wait(full);/* **************** */nextc:=buffer(out);out:=(out+1) mod n;signal(mutex);signal(empty);consume the item in nextc;until false;endparendenda. wait(full)和wait(mutex)互换位置后,因为mutex在这儿是全局变量,执行完wait(mutex),则mutex赋值为0,倘若full也为0,则该生产者进程就会转入进程链表进行等待,而生产者进程会因全局变量mutex为0而进行等待,使full始终为0,这样就形成了死锁.b. 而signal(mutex)与signal(full)互换位置后,从逻辑上来说应该是一样的.8. 我们为某临界区设置一把锁W,当W=1时,表示关锁;W=0时,表示锁已打开.试写出开锁原语和关锁原语,并利用它们去实现互斥.开锁原语:unlock(W):W=0;关锁原语:lock(W);if(W==1) do no_op;W=1;利用开关锁原语实现互斥:var W: semaphore:=0;beginparbeginprocess :beginrepeatlock(W);critical sectionunlock(W);remainder sectionuntil false;endparend9. 试修改下面生产者-消费者问题解法中的错误:producer:beginrepeat..producer an item in nextp;wait(mutex);wait(full); /* 应为wait(empty),而且还应该在wait(mutex)的前面*/buffer(in):=nextp;/* 缓冲池数组游标应前移: in:=(in+1) mod n; */signal(mutex);/* signal(full); */until false;endconsumer:beginrepeatwait(mutex);wait(empty); /* 应为wait(full),而且还应该在wait(mutex)的前面*/nextc:=buffer(out);out:=out+1; /* 考虑循环,应改为: out:=(out+1) mod n; */signal(mutex);/* signal(empty); */consumer item in nextc;until false;end10 试利用记录型信号量写出一个不会出现死锁的哲学家进餐问题的算法.设初始值为1的信号量c[I]表示I号筷子被拿(I=1,2,3,4,...,2n),其中n为自然数. send(I):Beginif I mod 2==1 then{P(c[I]);P(c[I-1 mod 5]);Eat;V(c[I-1 mod 5]);V(c[I]);}else{P(c[I-1 mod 5]);P(c[I]);Eat;V(c[I]);V(c[I-1 mod 5]);}End11 在测量控制系统中的数据采集任务,把所采集的数据送一单缓冲区;计算任务从该单缓冲中取出数据进行计算.试写出利用信号量机制实现两者共享单缓冲的同步算法.int mutex=1;int empty=n;int full=0;int in=0;int out=0;main(){cobeginsend();obtain();coend}send(){while(1){..collect data in nextp;..wait(empty);wait(mutex);buffer(in)=nextp;in=(in+1) mod n;signal(mutex);signal(full);}}//sendobtain(){while(1){wait(full);nextc:=buffer(out);out:=(out+1) mod n;signal(mutex);signal(empty);culculate the data in nextc;}//while}//obtain12 画图说明管程由哪几部分组成?为什么要引入条件变量?管程由三部分组成:局部于管程的共享变量说明;对该数据结构进行操作的一组过程;对局部于管程的数据设置初始值的语句. (图见P80)因为调用wait原语后,使进程等待的原因有多种,为了区别它们,引入了条件变量.13 如何利用管程来解决生产者-消费者问题?(见P82)14 什么是AND信号量?试利用AND信号量写出生产者-消费者问题的解法.为解决并行所带来的死锁问题,在wait操作中引入AND条件,其基本思想是将进程在整个运行过程中所需要的所有临界资源,一次性地全部分配给进程,用完后一次性释放.解决生产者-消费者问题可描述如下:var mutex,empty,full: semaphore:=1,n,0;buffer: array[0,...,n-1] of item;in,out: integer:=0,0;beginparbeginproducer: beginrepeat..produce an item in nextp;..wait(empty);wait(s1,s2,s3,...,sn); //s1,s2,...,sn为执行生产者进程除empty外其余的条件wait(mutex);buffer(in):=nextp;in:=(in+1) mod n;signal(mutex);signal(full);signal(s1,s2,s3,...,sn);until false;endconsumer: beginrepeatwait(k1,k2,k3,...,kn); //k1,k2,...,kn为执行消费者进程除full外其余的条件wait(mutex);nextc:=buffer(out);out:=(out+1) mod n;signal(mutex);signal(empty);signal(k1,k2,k3,...,kn);consume the item in nextc;until false;endparendend15 在单处理机环境下,进程间有哪几种通信方式?a. 共享存储器系统通信方式;b. 消息传递系统通信方式;c. 管道通信方式.16 试比较进程间的低级通信工具与高级通信工具.用户用低级通信工具实现进程通信很不方便,因为其效率低,通信对用户不透明,所有的操作都必须由程序员来实现. 而高级通信工具则可弥补这些缺陷,用户可直接利用操作系统所提供的一组通信命令,高效地传送大量的数据.17 消息队列通信机制应有哪几方面功能?略18 试比较消息队列与管道通信机制.a. 所谓管道,是指用于连接一个读进程和一个写进程,以实现它们之间通信的共享文件,又称pipe文件.管道通信是属于共享存储器系统的.b. 消息队列通信机制属于消息传递系统通信机制,存在通信链路,有消息的格式,有若干缓冲队列,采用独特的发送原语和接收原语. (详见P89-90)10.试比较FCFS和SPF两种进程调度算法答:FCFS进程调度算法:一种最简单的调度算法,比较有利于长作业(进程),而不利于短作业(进程)SPF进程调度算法:对短作业或短进程优先调度的算法。
汤子瀛《计算机操作系统》复习笔记和课后习题考研真题及其详解(磁盘存储器的管理)【圣才出品】
圣才电子书 十万种考研考证电子书、题库视频学习平台
图 8-1 磁盘空间的连续组织方式 (2)优点 ①顺序访问容易。 ②顺序访问速度快。 (3)缺点 ①要求为一个文件分配连续的存储空间;且易产生许多外部碎片。 ②必须事先知道文件的长度。 ③不能灵活地删除和插入记录。 ④文件长度不宜动态增加。
7 / 27
圣才电子书 十万种考研考证电子书、题库视频学习平台
图 8-6 位示图 (2)盘块的分配 根据位示图进行盘块分配的步骤如下: ①顺序扫描位示图,从中找出一个或一组其值为“0”的二进制位。 ②将所找到的一个或一组二进制位转换成与之相应的盘块号。假定找到的其值为“0” 的二进制位位于位示图的第 i 行、第 j 列,则其相应的盘块号应按下式计算:b=n(i-1)+j。 式中,n 代表每行的位数。 ③修改位示图,令 map[i,j]=1。 (3)盘块的回收 根据位示图对盘块进行回收的步骤如下: ①将回收盘块的盘块号转换成位示图中的行号和列号。转换公式为:i=(b-1)DIV n+1, j=(b-1)MOD n+1。 ②修改位示图。令 map[i,j]=0。 (4)优点 ①从位示图中很容易找到一个或一组相邻接的空闲盘块。 ②由于位示图占用空间少,因而可将它保存在内存中,进而节省了许多磁盘的启动操作。
3 / 27
圣才电子书 十万种考研考证电子书、题库视频学习平台
图 8-2 索引分配方式 ②优点 a.支持直接访问。 b.不会产生外部碎片。 ③缺点 a.对于小文件采用索引分配方式时,其索引块的利用率将是极低的。 b.索引表增加存储空间开销,索引表的查找方法影响文件系统的效率。 (2)多级索引组织方式 ①概述 多层索引使第一层索引块指向第二层索引块,第二层索引块再指向操盘空间的盘块。文 件过大时,还可以指向第三层索引……。图 8-3 示出了两级索引组织方式下各索引块之间的 链接情况。
汤子瀛《计算机操作系统》(第4版)笔记和课后习题(含考研真题)详解
目 录第1章 操作系统引论1.1 复习笔记1.2 课后习题详解1.3 考研真题详解第2章 进程的描述与控制2.1 复习笔记2.2 课后习题详解2.3 考研真题详解第3章 处理机调度与死锁3.1 复习笔记3.2 课后习题详解3.3 考研真题详解第4章 存储器管理4.1 复习笔记4.2 课后习题详解4.3 考研真题详解第5章 虚拟存储器5.1 复习笔记5.2 课后习题详解5.3 考研真题解第6章 输入输出系统6.1 复习笔记6.2 课后习题详解6.3 考研真题详解第7章 文件管理7.1 复习笔记7.2 课后习题详解7.3 考研真题详解第8章 磁盘存储器的管理8.1 复习笔记8.2 课后习题详解8.3 考研真题详解第9章 操作系统接口9.1 复习笔记9.2 课后习题详解9.3 考研真题详解第10章 多处理机操作系统10.1 复习笔记10.2 课后习题详解10.3 考研真题详解第11章 多媒体操作系统11.1 复习笔记11.2 课后习题详解11.3 考研真题详解第12章 保护和安全12.1 复习笔记12.2 课后习题详解12.3 考研真题详解第1章 操作系统引论1.1 复习笔记一、操作系统的目标和作用1操作系统的目标(1)方便性。
(2)有效性。
(3)可扩充性。
(4)开放性。
2操作系统的作用(1)OS作为用户与计算机硬件系统之间的接口。
(2)OS作为计算机系统资源的管理者。
(3)OS实现了对计算机资源的抽象。
二、操作系统的发展过程1未配置操作系统的计算机系统(1)人工操作方式。
(2)脱机输入/输出方式。
2单道批处理系统3多道批处理系统多道批处理系统特征:多道、宏观上并行、微观上串行。
4分时系统分时系统的特征:多路性、独立性、及时性、交互性。
5实时系统(1)实时系统的类型①工业(武器)控制系统,如火炮的自动控制系统、飞机的自动驾驶系统,以及导弹的制导系统等。
②信息查询系统,如飞机或火车的订票系统等。
③多媒体系统。
计算机操作系统【第五章】 汤子瀛版
计算机操作系统【第五章】1. 可采用哪几种方式将程序装入内存?它们分别适用于何种场合?a. 首先由编译程序将用户源代码编译成若干目标模块,再由链接程序将编译后形成的目标模块和所需的---库函数链接在一起,组成一个装入模块,再由装入程序将装入模块装入内存;b. 装入模块的方式有: 绝对装入方式,可重定位方式和动态运行时装入方式;c. 绝对装入方式适用于单道程序环境下;d. 可重定位方式适用于多道程序环境下;e. 动态运行时装入方式也适用于多道程序环境下.2. 何谓静态链接及装入时动态链接和运行时的动态链接?a. 静态链接是指事先进行链接形成一个完整的装入模块,以后不再拆开的链接方---式;b. 装入时动态链接是指目标模块在装入内存时,边装入边链接的链接方式;c. 运行时的动态链接是将某些目标模块的链接推迟到执行时才进行.3. 在进行程序链接时,应完成哪些工作?a. 对相对地址进行修改;b. 变换外部调用符号.4. 在动态分区分配方式中,可利用哪些分区分配算法?a. 首次适应算法;b. 循环首次适应算法;c. 最佳适应算法.5. 在动态分区分配方式中,应如何将各空闲分区链接成空闲分区链?应在每个分区的起始地址部分,设置一些用于控制分区分配的信息,以及用于链接各分区的前向指针;在分区尾部则设置一后向指针,通过前,后向指针将所有的分区链接成一个双向链.6. 为什么要引入动态重定位?如何实现?a. 为了在程序执行过程中,每当访问指令或数据时,将要访问的程序或数据的逻辑地址转换成物理地---址,引入了动态重定位.b. 可在系统中增加一个重定位寄存器,用它来装入(存放)程序在内存中的起始地址,程序在执行时,真---正访问的内存地址是相对地址与重定位寄存器中的地址相加而形成的,从而实现动态重定位.7. 试用类Pascal语言来描述首次适应算法进行内存分配的过程.(略)8. 在采用首次适应算法回收内存时,可能出现哪几种情况?应怎样处理这些情况?a. 回收区与插入点的前一个分区相邻接,此时可将回收区与插入点的前一分区合并,不再为回收分区---分配新表项,而只修改前邻接分区的大小;b. 回收分区与插入点的后一分区相邻接,此时合并两区,然后用回收区的首址作为新空闲区的首址,大---小为两者之和;c. 回收区同时与插入点的前后两个分区邻接,此时将三个分区合并,使用前邻接分区的首址,大小为---三区之和,取消后邻接分区的表项;d. 回收区没有邻接空闲分区,则应为回收区单独建立一个新表项,填写回收区的首址和大小,并根据---其首址,插入到空闲链中的适当位置.9. 在系统中引入对换后带有哪些好处?能将内存中暂时不运行的进程或暂时不用的程序和数据,换到外存上,以腾出足够的内存空间,把已具备运行条件的进程或进程所需的程序和数据换入内存,从而大大地提高了内存的利用率.10 为实现对换,系统应具备哪几方面功能?a. 对对换空间的管理;b. 进程的换出;c. 进程的换入.11 在以进程为单位进行对换时,每次是否都将整个进程换出?为什么?a. 以进程为单位进行对换时,每次都将整个进程换出;b. 目的为了解决内存紧张的问题,提高内存的利用率.12 为实现分页存储管理,需要哪些硬件支持?你认为以Intel 8086,MC68000,Intel 80286为芯片的微机,是否适合于实现分页管理?(有待讨论)13 请较详细地说明,引入分页存储管理(估计印错了,是分段存储管理)是为了满足用户哪几方面的需要?a. 方便了编程;b. 实现了分段共享;c. 实现了分段保护;d. 实现了动态链接;e. 实现了动态增长.14 在具有快表的段页式存储管理方式中,如何实现地址变换?首先,必须配置一段表寄存器,在其中存放段表始址和段长TL. 进行地址变换时,先利用段号S,与段长TL进行比较,若S<TL,表示未越界,(若S>=TL,表示段号太大,访问越界,产生越界中断信号)于是利用段表始址和段号来求出该段对应的段表项在段表中的位置,从中求出该段的页表始址,并利用逻辑地址中的段内页号P来获得对应页的页表项位置,从中读出该页所在的物理块号b,再用块号b和页内地址构成物理地址.15 为什么说分段系统较之分页系统更易于实现信息共享和保护?a. 对于分页系统,每个页面是分散存储的,为了实现信息共享和保护,则页面之间需要一一对应起来,为此---需要建立大量的页表项;b. 而对于分段系统,每个段都从0开始编址,并采用一段连续的地址空间,这样在实现共享和保护时,只需---为所要共享和保护的程序设置一个段表项,将其中的基址与内存地址一一对应起来即可.16 分页和分段有何区别?a. 分页和分段都采用离散分配的方式,且都要通过地址映射机构来实现地址变换,这是它们的共同点;b. 对于它们的不同点有三,第一,从功能上看,页是信息的物理单位,分页是为实现离散分配方式,以消减---内存的外零头,提高内存的利用率,即满足系统管理的需要,而不是用户的需要;而段是信息的逻辑单位,---它含有一组其意义相对完整的信息,目的是为了能更好地满足用户的需要;c. 页的大小固定且由系统确定,而段的长度却不固定,决定于用户所编写的程序;d. 分页的作业地址空间是一维的,而分段的作业地址空间是二维的.17 试全面比较连续分配和离散分配方式.a. 连续分配是指为一个用户程序分配一个连续的地址空间,包括单一连续分配方式和分区式分配方式,前者---将内存分为系统区和用户区,系统区供操作系统使用,用户区供用户使用,是最简单的一种存储方式,---但只能用于单用户单任务的操作系统中;分区式分配方式分为固定分区和动态分区,固定分区是最简单的---多道程序的存储管理方式,由于每个分区的大小固定,必然会造成存储空间的浪费;动态分区是根据进程---的实际需要,动态地为之分配连续的内存空间,常用三种分配算法: 首次适应算法FF,该法容易留下许多---难以利用的小空闲分区,加大查找开销;循环首次适应算法,该算法能使内存中的空闲分区分布均匀,但---会致使缺少大的空闲分区;最佳适应算法,该算法也易留下许多难以利用的小空闲区;b. 离散分配方式基于将一个进程直接分散地分配到许多不相邻的分区中的思想,分为分页式存储管理,分段---存储管理和段页式存储管理. 分页式存储管理旨在提高内存利用率,满足系统管理的需要,分段式存储管---理则旨在满足用户(程序员)的需要,在实现共享和保护方面优于分页式存储管理,而段页式存储管理则是---将两者结合起来,取长补短,即具有分段系统便于实现,可共享,易于保护,可动态链接等优点,又能像---分页系统那样很好的解决外部碎片的问题,以及为各个分段可离散分配内存等问题,显然是一种比较有效---的存储管理方式;c. 综上可见,连续分配方式和离散分配方式各有各自的特点,应根据实际情况加以改进和利用.。
(整理)《计算机操作系统》复习概要.
《计算机操作系统》复习概要使用须知:1.本概要适用于汤子瀛、汤小丹等编著的《计算机操作系统》第三版。
2.本概要只涉及第一章到第五章。
3.如有任何错误及不足之处请及时联系作者,我们将第一是时间改正。
4.本文档仅供参考,后果自负一基础部分1.进程并发执行时的最要特点?答:间断性、失去封闭性、不可见性。
2.作业提交经过的调度?答:高级调度(作业调度或长程调度),把外存上处于后备队列的作业调入内存;低级调度(进程调度或内核级线程),调度对象是线程;中级调度(中程调度,)提高系统利用率和吞吐量。
3.可重定位装入方式将装入模块装入内存后,会使装入模块中的所有逻辑地址与实际装入内存的物理地址不同。
4.分时系统的特征:要点(多路性、独立性、及时性、交互性)。
5.产生死锁的原因和必要条件。
原因:竞争系统资源,进程的推进顺序非法。
必要条件:互斥条件、请求和保持条件、不剥夺条件、环路等待条件6.处理死锁的基本方法预防死锁:摒弃“请求和保持”条件;摒弃“不剥夺”条件;摒弃“环路等待”条件;算法:资源顺序分配法和AND型信号量算法避免死锁:预防死锁的几种策略,会严重地损害系统性能。
其中最具有代表性的避免死锁算法是银行家算法。
检测死锁:首先为每个进程和每个资源指定一个唯一的号码然后建立资源分配表和进程等待表。
检测算法。
解除死锁,常采用的方法有:剥夺资源撤消进程7.进程的基本状态及6大原语。
新状态、就绪状态、执行状态、阻塞状态、终止状态。
6大原语:进程的创建、进程的终止(撤销)、进程的阻塞、进程的唤醒、进程的挂起、进程的激活。
8.进程的组成?程序、数据集合、进程控制块PCB(进程存在的唯一标志)。
9.内核支持线程:它是依赖于内核的,它存在于系统进程和用户进程中,它们的创建、撤销和切换等也是依靠内核在内核空间实现的。
10.为何要缓冲?改善CPU和I/O设备之间速度不匹配的矛盾。
可以减少I/O设备对CPU的中断次数及放宽对CPU的中断响应时间限制。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机操作系统复习总结-汤子瀛操作系统的定义:操作系统是以一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。
1.1.1操作系统的目标:1.方便性2.有效性3.可扩充性4.开放性2.1.2 操作系统的作用:1.os作为用户与计算机硬件系统之间的接口2.os作为计算机系统资源的管理者3.os用作扩充机器1.1.3 推动操作系统发展的主要动力:1.不断提高计算机资源利用率2.方便用户3.器件的不断更新换代4.计算机体系结构的不断发展1.2操作系统的发展过程:1.2.1无操作系统的计算机系统:1.人工操作方式 2.脱机输入输出(Off-Line I/O)方式1.2.2单道批处理系统(特征:自动性;顺序性;单道性)1.2.3多道批处理系统:1.多道程序设计的基本概念:(1)提高CPU的利用率)(2)可提高内存和I/O设备利用率(3)增加系统吞吐量2.多道批处理系统的特征:(1)多道性(2)无序性(3)调度性3.多道批处理系统的优缺点:(1)资源利用率高(2)系统吞吐量大(3)平均周转时间长(4)无交互能力4.多道批处理系统需要解决的问题:(1)处理机管理问题(2)内存管理问题(3)I/O设备管理问题(4)文件管理问题(5)作业管理问题1.2.4分时系统:分时系统是指,在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中的资源。
1.分时系统的产生:推动分时系统形成和发展的主要动力,是用户的需求(需要的具体表现:人-机交互、共享主机、便于用户上机)2.分时系统实现中的关键问题:(1)及时接收(2)及时处理3.分时系统的特征:(1)多路性(2)独立性(3)及时性(4)交互性1.2.5实时系统:实时系统是指系统能及时(或即时)响应外部事件的请求,在规定的时间内对该事件的处理,并控制所有实时任务协调一致地运行。
1.应用需求:(1)实时控制(2)实时信息处理2.实时任务:1)按任务执行时是够呈现周期性来划分:(1)周期性实时任务(2)非周期性实时任务2)根据对截至时间的要求来划分:(1)硬实时任务(2)软实时任务3. 实时系统与分时系统特征的比较:(1)多路性(2)独立性(3)及时性(4)交互性:仅限于访问系统中某些特定的专用服务程序,它不像分时系统那样能向终端用户提供数据处理、资源共享等服务(5)可靠性:实时系统要求更高P111.3操作系统的基本特性:1.3.1并发:并行性是指两个或多个事件在同一时刻发生;而并发性是指两个或多个时间在同一时间间隔内发生。
进程是指在系统中能独立运行并作为资源分配的基本单位,它是由一组机器指令、数据和堆栈等组成的,是一个活动实体。
1.3.2共享:所谓共享是指系统中的资源可供内存中多个并发执行的进程(线程)共同使用。
1.互斥共享方式2.同时访问方式1.3.3虚拟:所谓“虚拟”,是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。
1.3.4异步性:进程是以人们不可预知的速度向前推进,此即进程的异步性。
1.4操作系统的主要功能:1.4.1处理机管理功能:1.进程控制2.进程同步①进程互斥方式②进程同步方式啊(P14)3.进程通信:进程通信的任务就是用来实现在互相合作的进程之间的信息交换。
4调度1.4.2.存储器管理功能:(目的:提高利用率,方便用户使用,提供足够的空间方便进程的开发运行)1.内存分配2.内存保护(内存保护的主要任务,是确保每道用户程序都只是在自己的内存空间内运行,彼此互不干扰。
越界检查都由硬件实现)3.地址映射4.内存扩充1.4.3设备管理功能:1.缓冲管理2.设备分配:设备分配的基本任务就是根据用户进程的I/O请求、系统的现有资源情况以及按照某种设备分配策略,为之分配其所需的设备。
3.设备处理:设备处理程序又称为设备驱动程序。
其基本任务是用于实现CPU和设备控制器之间的通信,即由CPU向设备控制器发出I/O命令,要求它完成指定的I/O操作;反之由CPU接收从控制器发来的中断请求,并给予迅速的响应和相应的处理。
1.4.4文件管理功能:1.文件存储空间的管理:其主要任务是为每个文件分配必要的外存空间,提高外存的利用率,并能有助于提高文件系统的运行速度。
2.目录管理:目录管理的主要任务,是为每个文件建立其目录项,并对众多的目录项加以有效的织,以实现方便的按名存取。
即用户只须提供文件名,即可对该文件进行存取。
其次,目录管理还应能实现文件共享。
3.文件的读/写管理和保护:(1)文件的读/写管理,该功能是根据用户的请求,从外存中读取数据;或将数据写入外存。
(2)文件保护:①防止未经核准的用户存取文件;②防止冒名顶替存取文件;③防止以不正确的方式使用文件。
1.4.5用户接口1.命令接口:(1)联机用户接口(2)脱机用户接口2.程序接口:该接口是为用户程序在执行中访问系统资源而设置的,是用户程序取得操作系统服务的唯一途径。
3.图形接口1.5.3微内核os结构1.客户/服务器模式(Client-Server Model)1)基本概念:为了提高OS的灵活性和可扩充性而将OS划分为两部分,一部分是用于提供各种服务的一组服务器(进程),如用于提供进程管理的进程服务器、提供存储器管理的存储器服务器、提供文件管理的文件服务器等,所有这些服务器(进程)都运行在用户态。
当有一用户进程(现在成为客户进程)要求读文件的一个盘块时,该进程便向文件服务器(进程)发出一个请求;当服务器完成了该客户的请求后,便给该客户回送一个响应。
操作系统的另一部分是内核,用来处理客户和服务器之间的通信,即由内核来接收客户的请求,再将该请求送至相应的服务器;同时它也接收服务器的应答,并将此应答回送给请求客户。
2)客户/服务器模式的优点:(1)提高了系统的灵活性和可扩充性(2)提高了OS的可靠性(3)可运行于分布式系统中2.面向对象的程序设计技术(Object-Orientated Programming)1)面对对象技术的基本概念:该技术是基于“抽象”和“隐蔽”原则来控制大型软件的复杂度的。
所谓对象,是指在现实世界中具有相同属性、服从相同规则的一系列事物的抽象,而把其中的具体事物成为对象的实例。
在面对对象的技术中,是利用被封装的数据结构和一组对它进行操作的过程,来表示系统中的某个对象的。
2)面向对象技术的优点:(1)可修改性和可扩充性(2)继承性(3)正确性和可靠性3.微内核技术:1)微内核技术的引入:所谓微内核技术,是指精心设计的,能实现现代OS核心功能的小型内核,它与一般的OS(程序)不同,它更小更精炼,它不仅运行在核心态,而且开机后常驻内存,它不会因内存紧张而被换出内存。
微内核并非是一个完整的OS,而只是为构建通用OS提供一个重要基础。
由于在微内核OS结构中,通常是采用了客户/服务器模式,因此OS的大部分功能和服务,都是由若干服务器来提供的,如文件服务器、作业服务器和网络服务器等。
2)微内核的基本功能:(1)进程管理(2)存储器管理(3)进程通信管理(4)I/O设备管理第二章进程管理2.1.1程序顺序执行时的特征:(1)顺序性(2)封闭性(3)可再现性2.1.2前趋图P27 注意:前趋图中必须不存在循环2.1.3程序的并发执行及其特征:P28程序并发执行时的特征:(1)间断性(异步性)(2)失去封闭性(3)不可再现性2.1.4进程的特征和状态:P301.进程的特征和定义:1)结构特征:通常的程序是不能并发执行的。
为使程序(含数据)能独立运行,应为之配置一进程控制块,即PCB;而由程序段、相关的数据段和PCB三部分便构成了进程实体。
2)动态性:动态性是进程的最基本的特征,动态性还表现在:“它由创建而产生,由调度而执行,由撤销而消亡”。
进程有一定的生命期,而程序是静态的。
3)并发性:并发性是进程的重要特征,同时也成为OS的重要特征。
而程序(没有建立PCB)是不能并发执行的。
4)独立性 5)异步性进程的定义:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。
2.进程的三种基本状态:1)就绪状态:当进程已分配到除CPU以外的所有必要资源后,只要再获得CPU,即可立即执行,进程这时的状态称为就绪状态。
2)执行状态:进程已获得CPU,其程序正在执行。
3)阻塞状态:正在执行的进程由于发生某事件而暂时无法继续执行时,便放弃处理机而处于暂停状态,亦即撑劲的执行受到阻塞,称为阻塞状态,也称为等待状态。
3.挂起状态:1)引起挂起状态的原因:(1)终端用户的请求(2)父进程请求(3)负荷调节的需要(4)操作系统的需求2)进程状态的转换:(1)活动就绪→静止就绪(2)活动阻塞→静止阻塞(3)静止就绪→活动就绪(4)静止阻塞→活动阻塞2.1.5进程和控制块1.进程控制块的作用:进程控制块是进程实体的一部分,是操作系统中最重要的记录型数据结构。
进程控制块的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程。
(或者说,OS是根据PCB来对并发执行的进程进行控制和管理的)PCB是进程存在的唯一标志。
PCB常驻内存。
2.进程控制块中的信息:1)进程标识符:(1)内部标识符(2)外部标识符2)处理机状态 3)进程调度信息 4)进程控制信息3.进程控制块的组织方式:1)链接方式:这是把具有同一状态的PCB,用其中的链接字链接成一个队列。
2)索引方式:系统根据所有进程的状态建立几张索引表。
2.2进程控制:进程控制是进程管理中最基本的功能。
它用于创建一个新进程,终止一个已完成的进程,或去中止一个因出现事件而使其无法运行下去的进程,还可以负责进程运行中的状态转换。
2.2.1进程的创建1.进程图 P34 子进程可以继承父进程所拥有的资源2.引起创建进程的事件:(1)用户登录(2)作业调度(3)提供服务(4)应用请求3.进程的创建:一旦操作系统发现了要求创建新进程的事件后,便调用进程创建原语Creat()按下述步骤创建一个新进程。
(1)申请空白PCB (2)为新进程分配资源(3)初始化进程控制块(4)将新进程插入就绪队列2.2.2进程的终止1.引起进程终止的事件1)正常结束:P35 批处理系统中,通常在程序的最后安排一条Holt指令来终止系统的调用;在分时系统中,用户可利用Logsoff去表示进程运行完毕。
2)异常结束3)外界干预:①操作员或操作系统干预②父进程请求③父进程终止2.进程的终止过程:(1)根据被终止进程的标识符,从PCB集合中检索出该进程的PCB。
从中读出该进程的状态。
(2)若被终止进程正处于执行状态,应立即终止该进程的执行,并置调度标志为真,用于指示该进程被终止后应重新进行调度。