操作系统总结

第一章 操作系统概论

一、知识点

1.操作系统是:管理系统资源、控制程序执行、改善人机界面、提供各种服务,并合理组织计算机工作流程和为用户方便而有效地使用计算机提供良好运行坏境的最基本的系统软件。

2.操作系统的功能:OS作为用户接口和服务提供者、OS作为扩展机或虚拟机、OS作为资源管理者和控制者、OS作为程序执行的控制者和协调者。

3.操作系统的主要特性:并发性、共享性、异步性。

4.分时操作系统的特点:同时性、独立性、及时性、交互性。

5.操作系统接口分为:程序接口和作业接口。

6.当前主流的两种操作系统为:Windows OS和Linux OS。

第二章 处理器管理

周转时间=完成时间-提交时间

带权周转时间=周转时间÷运行时间(或执行时间)

FCFS即先来先服务算法

SJF即最短作业优先算法

SRTF即最短剩余时间优先算法

8、在道数不受限制的多道程序系统中,作业进入系统的后备队列时立即进行作业调度。现有4个作业进入系统,有关信息列举如下,作业调度和进程调度均采用高优先级算法(规定数值越大则优先级越高)。

解:

 

从上面的作业流程可知

17、如果在限制为两道的多道程序系统中,有4个作业进入系统,其进入系统时间、估计运行时间列于下表中。系统采用SJF作业调度算法,采用SRTF进程调度算法,请填充下表。

 


知识点

1.中断的概念:中断是指在程序执行过程中,遇到急需处理的事件时,暂时中止现行程序在CPU上的运行,转而执行相应的事件处理程序,待处理完成后再返回断点或调度其他程序执行。

2.中断源分类:

按中断事件的性质和激活方式划分:机器故障中断、程序性中断、外部中断、输入输出中断。

按中断事件的来源和实现手段划分:硬中断、软中断。

3.进程是指可并发执行的程序在某个数据集合上的一次计算活动,也是操作系统进行资源分配和保护的基本单位。

4.程序与进程区别:“程序”自身只是计算任务的指令和数据的描述,是静态概念无法刻画程序的并发特性,系统需要寻找一个能描述程序动态执行过程的概念,这就是进程。

5.进程三态模型及其状态转换:

第三章 同步、通信与死锁

一、知识点

1.并发进程中与共享变量有关的程序段叫“临界区”,共享变量代表的资源叫“临界资源”。

2.临界区的调度原则:空闲让进,忙则等待,有限等待,让权等待。(老管版)

 临界区的调度原则:互斥使用,有空让进;忙则等待,有限等待;择一而入,算法可行。(课本)

3.死锁:如果一个进程集合中的每个进程都在等待只能由此集合中的其他进程才能引发的事件,而无限期陷入僵持的局面称为死锁。

4.死锁产生的条件:互斥条件、占有和等待条件、不剥夺条件、循环等待条件。

二、分析操作

采用pv信号量操作来实现以下两种算法

1)消费者—生产者问题

2)读者—写者问题

三、计算题(银行家算法)

28.设当前的系统状态下,此时Aavilable=(1,1,2)。

(1)计算机各个进程还需要的资源数Cki-Aki。

(2)系统是否处于安全状态,为什么?

(3)进程发出请求向量request2(1,0,1),系统能把资源分配给它么?

(1)如上图

(2)系统处于安全状态,安全序列为

(此状态序列不定,由进程执行序列决定)

(3)进程发出请求向量request2(1,0,1),系统能把资源分配给它,因为=(1,0,1)+(5,1,1)=(6,1,2),可形成安全队列。

29.系统有A、B、C、E共4种资源,在某时刻进程对资源的占有和需求情况如下表所示,试解答下列问题。

(1)系统此时处于安全状态吗?

(2)若此时进程发出request1(1,2,2,2),系统能分配资源给它吗?为什么?

解:

(1)系统此时处于安全状态,安全序列为

(2)若此时进程发出request1(1,2,2,2),系统不能分配资源给它,由于=(1,0,0,0)+(1,2,2,2)=(2,2,2,2)无法形成安全队列。

第五章 设备管理

一、填空题

缓冲技术分为单缓冲、双缓冲和多缓冲。

二、简答题

1.引入缓冲技术的目的?

答:为了解决CPU与设备之间速度不匹配的矛盾;

协调逻辑记录大小与物理记录大小不一致的问题;

提高CPU和I/O设备的并行性,减少I/O操作对CPU的中断次数,放宽对CPU中断响应的要求。

2.什么是设备独立性,其好处是什么?

答:通常用户不指定特定的设备,而指定逻辑设备使得用户作业和物理设备独立开来,再通过其他途径建立逻辑设备和物理设备之间的对应关系,称这种特性为设备独立性;

    设备独立性带来的好处,用户与物理的外围设备无关,系统增减或变更外围设备时程序不必修改,易于对付输入输出设备的故障。

三、计算题

优化分布

信息在存储空间中的排列方式会影响存取等待时间。考虑到10条逻辑记录A,B…,J被存放于旋转型设备上,每道存放10个物理块,安排如图5.4(a)所示。

 

图5.4优化分布示例

                (a)优化前                                 (b)优化后

假定需要经常需要顺序处理这些记录,旋转速度为一周20ms,处理程序读出每块花4ms进行处理,由于读出并处理记录A之后将旋转到记录D的开始,为了读出记录B,必须再转一周。于是,处理10条记录的总时间为10ms(旋转到记录A的平均时间)+2ms(读记录A)+4ms(处理记录A)+9×[16ms(访问下一条记录)+2ms(读记录)+4ms(处理记录)]=214ms。

按照图5.4(b)所示方式对信息优化分布:当读出记录A并处理结束后,恰巧旋转至记录B的位置,立即就可读出记录B并处理。按照这一方案,处理10条记录的总时间为10ms(旋转到记录A的平均时间)+10×[2ms(读记录)+4ms(处理记录)]=70ms,所花费的时间是原方案的1/3。如果有众多记录需要处理,所节省的时间更加可观。

例题:1、旋转型设备上信息的优化分布能够减少为若干I/O服务的总时间。设磁鼓分为8个区,每区存放一条记录,磁鼓旋转一周用时20ms,读取每条记录后经4ms处理,再继续处理下一条记录。当前磁鼓位置未知的情况下:

(1)顺序存放记录1、记录2、…、记录8时,试计算读出并处理8条记录的总时间;

(2)给出优化分布8条记录的一种方案,使得总处理时间缩短,计算出这个方案所花费的总时间。

解:读一个区所用时间为20/8=2.5ms

(1)读取并处理记录1的时间t1=2.5+4=6.5ms

读取并处理记录2的时间t2=1+6×2.5+2.5+4=22.5ms

总处理时间=t1+7×t2=164ms

   (2)读取并处理记录1的时间t1=2.5+4=6.5ms

读取并处理记录2的时间t2=1+2.5+4=7.5ms

总处理时间=t1+7×t2=59ms

2、旋转型设备上信息的优化分布能够减少为若干I/O服务的总时间。设磁鼓分为8个区,每区存放一条记录,磁鼓旋转一周用时8ms,读取每条记录后经5ms处理,再继续处理下一条记录。当前磁鼓位置未知的情况下:

(1)顺序存放记录1、记录2、…、记录8时,试计算读出并处理8条记录的总时间;

(2)给出优化分布8条记录的一种方案,使得总处理时间缩短,计算出这个方案所花费的总时间。

解:读一个区所用时间为16/8=2ms

(1)读取并处理记录1的时间t1=2+5=7ms

     读取并处理记录2的时间t2=1+2×5+2+5=18ms

 总处理时间=t1+7×t2=7+7×18=133ms

(2)读取并处理记录1的时间t1=2+5=7ms

 后续读取并处理需t2=8×4+10×3=62ms

 总处理时间=t1+t2=7+62=69ms

第二类计算题:移动臂调度算法(磁盘寻道算法)

1.假定磁盘有200个柱面,编号0~199,当前存取臂的位置在143号柱面上,并刚刚完成125号柱面的服务请求。如果请求队列的先后顺序是:86,147,91,177,94,150,102,175,130;试问:为了完成上述要求,下列算法存取臂所移动的总量是多少?并计算存取臂移动的顺序。

(1)“先来先服务”算法FCFS

 

(2)最短查找时间优先算法SSTF

     

(3)扫描算法SCAN

 

(4)电梯调度算法

 

第六章 文件管理

一、知识点

1.文件名由文件名称和扩展名两部分组成,前者用于识别文件,后者用于区分文件类型,中间用“.”分割开来。

2.文件是由文件名字标志的一组信息集合。

3.文件名是字母或数字组成的字母数字串。

4.文件的逻辑结构:流式文件和记录式文件,物理结构:顺序、连接、直接、索引文件。

二、计算

如果一个索引节点为128B,磁盘块指针长4B,状态信息占用68B,而每块大小为8KB。试问索引节点中有多大空间留给磁盘块指针?使用直接、一次间接、二次间接和三次间接指针分别可表示多大的文件?

解:索引节点容量=状态信息块占用的容量+磁盘指针块占用的容量

即:索引节点中磁盘指针块的大小为

文件块的数量为

由于一次间接、二次间接、三次间接共占用3个指针块,那么剩余即直接指针块

直接指针表示文件大小为:

一次间接指针表示文件大小为:

二次间接指针表示文件大小为:

    三次间接指针表示文件大小为:

注:如有错误请自行改正!!!

 

第二篇:操作系统_重点 难点 考点 总结

1.系统中存在许多进程,他们共享各种资源,然而有许多资源一次只允许一个进程使用,在它未用完之前,不允许其它进程使用。这类资源被称为临界资源。

2.Windows NT对于对象的管理、组织和操作采用基于文件系统的模型。

3.硬盘共享的实现方法有两种,即以虚拟软盘方式和文件服务方式实现硬盘共享。

4.计算机系统中的程序,大体上可分为两类,即系统程序和用户程序。

5.网络操作系统有两种内核组织形式:一种是强内核,另一种是微内核。

6.NetWare由两部分组成,一为用户接口NetWare Shell,它安装在微机工作站上;另一个为装配在文件服务器上的服务器操作系统NetWare核心。

7.在提供数据报服务的信道上使用管套类似于发送和接收邮件。

8.Windows帮助系统是以超文本的方式组织。只要点击某一特殊标识处的文本或图形就可转入相关主题的文本中去。

9.计算机网络作为一个信息处理系统,其构成的基本模式有两种,对等模式和客户/服务器模式。

10.组通信机制中,所谓组是指在某一系统中或在用户指定的方式下,互相作用的进程的集合。

11.分时系统的响应时间是衡量一个分时系统性能的一项重要指标。

12.盘空间上的一个连续的未分配区域称为空白文件。

13.Windows NT最直接的环境子系统是Win 32子系统。

14.组通信机制中,组是动态的,既可以建立一个新组,也可以取消一个旧组。

15.FTP主要完成Internet上主机之间的文件传输,也称文件拷贝。

16.NetWare操作系统的调度方式是非抢占式的。

17.TIL提供两种服务模式,即面向连接的服务模式和面向非连接的服务模式。

18.虚拟存储器的思想是把作业地址空间和实际主存的存储空间视为两个不同的概念。

19.在网络系统中,实现进程间通信的这部分软件,称为通信软件。

20.目前的网络操作系统中,采用两种共享打印方式:一种是客户/服务器方式,另一种是对等方式。

21.实时系统分为两大类,即实时控制系统和实时处理系统。

22.信箱是一种数据结构,逻辑上可分为两部分:信箱头和信箱体。

23.Windows NT的I/O系统采用包驱动方式,每个I/O请求都用一个I/O请求包来表达。

24.中具有多线程机制的操作系统中,处理机调度的基本单位是线程。

25.在Win32 API,可用文件映射实现进程间共享内存的访问。

26.NetWare内存管理中分配和回收主要是针对可分配内存而言的。

27.组通信的实现在很大程度上依赖于硬件。

28.管套通信的特点之一是既可以产生一个管套,也可以同时产生一对管套。

29.一个原语操作中的所有动作要么全做要么一个也不做的性质称为原语的原子性。

30.电子邮件的类型目前分为三种:(1)文字型电子邮件;(2)图象型电子邮件;(3)语音型电子邮件。

31.Windows NT的线程用对象来实现。

32.只有系统硬件而无系统软件的计算机称为裸机。

33.管套是信道的末端,当应用程序产生一管套后,管套函数就返回所用文件的描述符。

34.记录式文件可分为定长记录文件和变长记录文件两种。

35.为了注册进入NetWare服务器,用户必须提供用户名和口令。

36.带拷贝的非阻塞发送属异步发送。

37.Internet地址由两部分组成:用户名和域名。

38.在OSI/RM参考模型中,在对等实体之间传送的信息为(N)协议数据单元。

39.文件内容的拷贝称为文件视图。

40.按设备的所属关系,可分为系统设备和用户设备。

41.当信号量S≤0时,表示无资源可利用,此时S的绝对值表示信号量S的阻塞队列中的进程数。

42.作为对象管理的一个主要方面是对象名空间的管理。为了管理它,对象管理程序维护一个对象目录系统。

43.整个UNIX系统可分为四个层次,其中shell位于第三层。

44.在网络上每个Socket用一个五元组全相关表示一个完整的Socket接连,即表示两个进程之间的通信。

45.进程可经历三种基本调度状态,它们是运行状态、就绪状态和阻塞状态。

46.从远程计算机拷贝文件到本地计算机,称为下载文件。

47.在多处理机系统中,进程间的通信有两种方式,即基于共享变量的通信方式和基于消息传递的通信方式。

48.要组成一个Novell网,在硬件上必须具备4个基本部分,即:网卡和媒体、网络工作站、网络服务器和网络连接器。

49.基于对等方式实现的网络文件称为分布式文件系统。

50.与消息传递原语相比,远程过程调用的灵活性差一些。

51.系统程序运行的状态被称为管态或特权状态。

52.页面(或块)的大小可以任意规定,通常是2的幂。

53.TLI进行面向连接的通信类似于打电话。

54.NetWare应用服务中,论断服务是一个可供DOS和OS/2客户机使用的网络管理工具。有了它,一个应用程序可查询关于一个节点客户机软件的有关信息。

55.在网络环境下,数据移动文件共享方式适合于传送文件中较少部分内容的情况。

56.单纯的树型结构不便于实现文件的共享,为此在树型结构的基础上增加了交叉连接部分,在UNIX系统中,这种情况称为勾连。

57.Windows NT的取页策略分为两种:请求取页和提前取页。

58.如果在Web页发布页面,主页是指Web展示中的第一个Web页。

59.发送方发送一条消息,无法保证被对方正确接收的原语称为非可靠原语。

60.由于P、V操作不能传送大量信息,所以它是一种低级通信原语。

61.如果一个send原语是非阻塞的,它在消息实际发送之前,就立即把控制返回给调用者。

62.电子邮件系统由两个子系统组成:用户代理和消息传输代理。

63.两个进程由于不能同时使用同一临界资源,只能在一个进程使用完了,另一个进程才能使用,这种现象称为进程间的互斥。

64.任何有文件映射对象名字或句柄的进程都能建立文件视图。

65.在位示图中,若某位为1,则表示对应的物理块号已分配。

66.在网络操作系统中,都必须提供信息传输的基本功能,通常以通信原语的形式出现。

67.NetWare是Novell公司专为微机局域网设计的一个多任务操作系统。

68.分页存储管理实际上就是从逻辑地址空间到物理地址空间的一种变换。

69.管套函数中,socketpair()产生两个管套,连接它们,返回相应的文件描述符。

70.打印机被视为物理打印设备的逻辑代表。

71.在Win32 API中,如果在建立映射对象时指定系统交换文件,则文件映射对象按共享内存块对待。

72.近陷入的原因,可将其共分为两组,即自陷和捕俘。

73.用户可以两种不同的身份注册进入远程主机。一种是以已注册的身份进入;另一种是以匿名用户的身份注册进入。

74.当需要把某个进程挂起时,可调用挂起原语,被挂起的进程只能是它的子孙或自身。

75.网络操作系统中,通过设置文件属性可以控制其他用户对自己共享目录下的文件的访问。

76.在NetWare 386结构中,支持NetWare传输层协议自主性的是两个重要模块,即开放的数据链路层接口ODI和Streams模块。

77.段页式存储管理是段式和页式存储管理相结合的一种存储管理方案。

78.非阻塞原语的实现方法有两种,即拷贝的非阻塞发送和带中断的非阻塞发送。

79.Windows NT网络中,转发程序是通过发送和接收SMB来完成它的工作的。

80.基于共享变量的通信方式适用于网络中各节点主机内进程间的通信。

81.Windows NT中,线程调度程序按线程的优先级进行调度。

82.文件映射只可用于本地计算机上的进程之间,而不能用于网络上。

83.紧耦合多处理机系统是通过共享主存来实现各处理机之间的通信的。

84.TCP/IP传输模块的通信节点,由IP地址和端口号确定。

85.在远程过程调用中,为解决灵活性问题,许多系统进行了大量的改进,其主要途径是降低格式化要求,以增加一定的灵活性。

86.NetWare的传输层支持客户/服务器方式的端到端通信。

87.设备管理中的三种控制块是设备控制块(UCB)、控制器控制块(CUCB)和通道控制块(CCB)。

88.HTML文档由控制语句和显示内容两部分组成。

89.在一个单机系统中,进程间的通信是借助共享存储器进行的。

90.文件目录中的每个表目,又称为一个文件的文件说明。

91.程序员在编程中事先安排好的中断称为自愿中断。

92.Windows NT的结构可分为两部分:系统用户态部分和系统核心态部分。

93.应用程序利用管套发送数据,数据报通过信道传向另一个管套。

94.缓冲原语中,为实现对缓冲区的有效管理,最简单的办法是定义一个新的数据结构信箱。

95.磁盘是属于直接存取设备,三种物理结构即连续结构、串联结构、索引结构都可采用。

96.DOS环境下的应用程序和数据库可以不加修改地进入NetWare环境。

97.文件映射是文件的内容到进程虚拟地址空间的复制。

98.DNS主要是把主机名和电子地址映射为IP地址。

99.对线性顺序访问地址空间最理想的页面置换算法是先进先出算法。

100.信号量S>0时的数值表示某类可用资源的数目。

操作系统 背诵精华.txt举得起放得下叫举重,举得起放不下叫负重。头要有勇气,抬头要有底气。学习要加,骄傲要减,机会要乘,懒惰要除。人生三难题:思,相思,单相思。1操作系统的分类

按照操作系统提供的服务,大致可以把操作系统分为有单道和多道之分的批处理系统,有同时性和独立性的分时系统,有严格时间规定的实时系统,可实现资源共享的网络系统,可协调多个计算机以完成一个共同任务的分布式系统。我们使有的windows是网络式系统。

2操作系统的结构

操作系统具有层次结构。。

层次结构最大特点是整体问题局部化来优化系统,提高系统的正确性、高效性使系统可维护、可移植。

主要优点是有利于系统设计和调试;主要困难在于层次的划分和安排。

3操作系统与用户

(1)作业执行步骤

操作系统提供给用户表示作业执行步骤的手段有两种:作业控制语言和操作控制命令。 作业控制语言形成批处理作业。操作控制命令进行交互处理。

(2)系统调用

操作系统提供的系统调用主要有:文件操作类,资源申请类,控制类,信息维护类系统调用往往在管态下执行。

当操作系统完成了用户请求的“系统调用”功能后,应使中央处理器从管态转换到目态工作。

4移动技术

移动技术是把某个作业移到另一处主存空间去(在磁盘整理中我们应用的也是类似的移动技术)。最大好处是可以合并一些空闲区。

处 理 器 管 理

一、 多道程序设计系统

“多道程序设计系统” 简称“多道系统”,即多个作业可同时装入主存储器进行运行的系统。

在多道系统中一点必须的是系统须能进行程序浮动。所谓程序浮动是指程序可以随机地从主存的一个区域移动到另一个区域,程序被移动后仍不影响它的执行。多道系统的好处在于提高了处理器的利用率;充分利用外围设备资源;发挥了处理器与外围设备以及外围设备之间的并行工作能力。可以有效地提高系统中资源的利用率,增加单位时间内的算题量,从而提高了吞吐率。(关键词:处理器,外围设备,资源利用率,单位算题量,吞吐率),但要注意对每个计算问题来说所需要的时间可能延长,另外由于系统的资源有限,会产生饱和,因此并行工作道数与系统效率不成正比。

二、进程

1 概念

进程是一个程序在一个数据集上的一次执行。由定义知进程关键组成是程序、数据集。 进程通过一个控制块来被系统所指挥,因此进程由程序、数据集和进程控制块三部分组成。进程控制块是进程存在的唯一标志 。进程是要执行的,据这点可分将进程的状态分为等待态然后是就绪态最后是运行态。

进程的基本队列也就是就绪队列和等待队列,(因为进程运行了,也就用不上排队了,也就没有运行队列了。)

如果进程由一所在队列退出的操作称为出队,排入到一个指定的队列的操作称为入队。系统中负责进程入队和出队的工作称为队列管理。

2 进程的调度

我们使用不同的调度是为了优化,具体说来是提高处理器利用率,增大吞吐量,减少等待时间,缩短响应时间。常用的算法有先来先服务、优先数调度法、时间片轮转调度法、分级调度(分级调度法可理解为多队列法)。顾名思义来先服务调度是先来者,先服务;优先数算法是对每个进程确定一个优先数,以决定先后。时间片轮转法是把规定进程一次使用处理器的最长时间称为"时间片"。让就绪进程按就绪的先后次序排成队列,依次运行。分级调度算法是由系统设置多个就绪队列,每个就绪队列中的进程按时间片轮转法占用处理器,这就是分级调度算法。

3 进程的切换

进程切换指一个进程进处理器,另一个进程出处理器的过程。(废话!)

若有一个进程从运行态变成等待态,或完成工作后就撤消,则必定会发生进程切换。

4 进程同步和通信

进程同步实际上是指并发进程之间的制约关系。即一个进程的执行依赖另一个进程的消息。没有消息时等待,有消息进被唤醒。

进程通信是进程之大量信息的方式。

5 进程和死锁(详细见后)

三、可再入程序

一个能被多个用户同时调用的程序称做"可再入"的程序。

可再入程序必须是纯代码,即在执行时自身不改变。

编译程序和操作系统程序通常都是"可再入"程序 。

存 储 管 理

一、

中央处理器存储下列中信息的速度依次为:寄存器最快;通过系统总线存取主存储器的速度居中;辅助存储器最慢。

寄存器用来存放临时的工作信息和系统必须的控制信息。

主存储器是CPU能直接访问的惟一的存储空间.

主存储器中存放操作系统的核心部分,以及当前需执行的程序和数据。

主存储器以“字节(BYTE)”为单位进行编址

辅助存储器是存放操作下的非核心部分和其他程序和数据。容量大且能永久保存信息 磁盘的信息可随机存取,磁带上的信息只能顺序存取。

二、 储器的地址:

主存储器以字节为编址单位

1、物理地址与逻辑地址。

物理地址 (绝对地址):. 128MB的主存器有128×1024×1024=134217728 字节,所以它的内存绝对地址就是从0到134217727。

逻辑地址: 用户程序中使用的从“0”地址开始的连续地址。

三、重定位

重定位即把逻辑地址转换成绝对地址。

重定位的方式有“静态重定位”和“动态重定位”两种。

(1)静态重定位

在装入一个作业时,把作业中的指令地址和数据地址全部转换成绝对地址。这种转换工作是在作业开始前集中完成的,在作业执行过程中无需再进行地址转换。所以称为“静态重定位”。

(2)动态重定位

在装入一个作业时,不进行地址转换,而是直接把作业装到分配的主区域中。在作业执行过程中,每当执行一条指令时都由硬件的地址转换机构转换成绝对地址。这种方式的地址转换是在作业执行时动态完成的,所以称为动态重定位。

动态重定位由软件(操作系统)和硬件(地址转换机构)相互配合来实现。动态重定位的系统支持“程序浮动”,而静态重定位则不能。

页式管理

(1)采用页式管理,使主存空间充分利用,页不必为了得到连续空间而进行移动。可以提高系统效率。

(2)页式存储管理中为什么要设置页表和快表?

在页式存储管理中,主存被分成大小相等的若干块,同时程序逻辑地址也分成与块大小一致的若干页,这样就可以按页面为单位把作业的信息放入主存,并且可以不连续存放,为了表示逻辑地址中的页号与主存中块号的对应关系,就需要为每个作业建立一张页表,。

页表一般存放在主存中,当要按给定的逻辑地址访问主存时,要先访问页表,计算出绝对地址,这样两次访主存延长了指令执行周期,降低了执行速度,而设置一个高速缓冲寄存器将页表中的一部分存放进去,这部分页表就是快表,访问主存时二者同时进行,由于快表存放的是经常使用的页表内容,访问速度很快,这样可以大大加快查找速度和指令执行速度。

虚拟存储

一、虚拟存储器

虚拟存储器是为“扩大”主存容量而采用的一种设计技巧,就是它只装入部分作业信息来执行,好处在于借助于大容量的辅助存储器实现小主存空间容纳大逻辑地址空间的作业。 虚拟存储器的容量由计算机的地址结构(地址总线位数)决定。如32位的,则最大的虚存容量为2^32=4294967296B=4GB

二、叙述页式虚拟存储器的基本原理。

页式虚拟存储器是在页式存储的基础上实现虚拟存储器的,其工作原理是:

首先把作业信息作为副本存放在磁盘上,作业执行时,把作业信息的部分页面装入主存,并在页表中对相应的页面是否装入主存作出标志。

作业执行时若所访问的页面已经在主存中,则按页式存储管理方式进行地址转换,得到绝对地址,否则产生“缺页中断”由操作系统把当前所需的页面装入主存。

若在装入页面时主存中无空闲块,则由操作系统根据某种“页面调度”算法选择适当的页面调出主存换入所需的页面。

三、常用的页面调度算法:FIFO、LRU、LFU

页面调度:当主页中无空闲块时,为了装入一个页面,就必须按某种算法将主存中某个页调出,调入所需装入的页面。

常用的算法有:先进先出调度算法(FIFO)、最近最少使用调度算法(LRU)和最近最不常用调度算法(LFU)。

特别要注意掌握的就是LRU(最近最少使用调度算法)的算法,如何进行调度。

5、缺页中断率

f=F/A,这里的f就称为缺页中断率。

A为作业执行中调入页面的总次数,F为访问的页面尚未装入主存的次数

四、段式虚拟存储器的实现

段式虚拟存储管理以段式存储管理为基础,即在磁盘上保留作业的各个分段信息,作业执行时把需要执行的一段或几段装入主存。

在实际使用中,也要进行查表和地址转换以及“缺段中断” 和调度(包括调出、装入、移动等)工作。

五、比较各种存储管理方式的特征。

单分区管理

除操作系统占用的一部分存储空间外,其余的用户区域作为一个连续的分区分配给用户使用 界限寄存器值+逻辑地址→绝对地址

固定分区的管理 分区数目、大小固定

设置上、下限寄存器 逻辑地址+下限地址→绝对地址。

可变分区的管理 可变分区管理方式不是把作业装入到已经划分好的分区中,而是在作业要求装入主存储器时,根据作业需要的主存量和当时的主存情况决定是否可以装入该作业。 分区数目大小不定 设置基址、限长寄存器

逻辑地址+基址寄存器的值→绝对地址。 基址值≤绝对地址≤基址值+限长值 页式存储管理 主存储器分为大小相等的"块"

程序中的逻辑地址进行分"页”,页的大小与块的大小一致。

用页表登记块页分配情况

逻辑地址的页号部分→页表中对应页号的起始地址→与逻辑地址的页内地址部分拼成绝对地址。 由页表中的标志位验证存取是否合法,根据页表长度判断是否越界

段存储管理 程序分段

每一段分配一个连续的主存区域,作业的各段可被装到不相连的几个区域中。 设置段表记录分配情况

逻辑地址中的段号→查段表得到本段起始地址+段内地址→绝对地址 由段表中的标志位验证存取是否合法,根据段表长度判断是否越界

页式虚拟存储管理 类似页式管理将作业信息保存在磁盘上部分装入主存

类似页式管理:

逻辑地址的页号部分→页表中对应页号的起始地址→与逻辑地址的页内地址部分拼成绝对地址。

若该页对应标志为0,则硬件形成"缺页中断"先将该页调入主存 类似页式管理 段式虚拟存储管理 类似段式管理将作业信息保存在磁盘上部分装入主存

类似段式管理 类似段式管理

只有单分区适用于单道系统。

只有单分区和固定分区的为静态重定位,不需要硬件转换机构。其余为动态重定位,需要硬件转换。

六、可变分区经常采用的主存分配算法

最先适应分配算法:简单地说,就是在分区表中顺序查找,找到够大的空闲区就分配。 最优适应分配算法:挑选一个能满足作业要求的最小空闲区。

最坏适应分配算法:挑一个最大的空闲区分给作业使用

七 、I/O保护

<1>特权指令:即可能影响系统安全的指令。全文是为保护输入输出的完整性,把“启动I/O”等的一类可能影响系统安全的指令定义为特权指令。

特权指令的使用权限:特权指令只允许操作系统使用,用户程序不能使用特权指令。

用户程序若要启动I/O,必须请求操作系统代为启动。优点在于:这种方式不但保证安全地使用外围设备,正确地传送信息,而且可减少用户为启动设备而必须了解外围设备特性以及启动等工作,大大方便了用户。)

<2> 管态和目态

中央处理器的两种工作方式:管态和目态。

在管态下,中央处理器可执行包含特权指令在内的一切指令;

目态次于管态,在目态下,中央处理器不准执行特权指令。

操作系统在管态下工作,用户程序在目态下工作。

<3> 存储保护

操作系统与硬件如何配合来实现存储保护的?

答:硬件中设置了两个寄存器来限定用户程序执行时可以访问的空间范围。这两个寄存器是基址寄存器和限长寄存器,用来限定用户程序执行时可以访问的主存空间范围。

程序执行时,系统对每一个访问内存的地址进行核对:

"基址寄存器值≤访问地址≤基址寄存器值+限长寄存器值"成立,则允许访问;否则,不允许访问。

这样就保护了该区域以外的存储信息不受到破坏,一旦程序执行中出错也不会涉及其他程序。

注:中央处理器在管态下执行程序时候,对访问主存的地址不进行核对。

文 件 管 理

一、存储介质是指可用来记录信息的磁带、硬磁盘组、软磁盘片、卡片等。 存储介质的物理单位定义为“卷”。

存储设备与主存储器之间进行信息交换的物理单位是块。块定义为存储介质上存放的连续信息所组成的一块区域。

逻辑上具有完整意义的信息集合称为“文件”。

用户对文件内的信息按逻辑上独立的含义划分的信息单位是记录,每个单位为一个逻辑记录。

二、文件

1、文件的目录

(1)文件目录是用来检索文件的。文件目录由若干目录项组成。目录项记录文件的有关信息。

(2)文件目录的结构

包括一级目录结构、二级目录结构和树形(多级)目录结构。

树形目录允许用户在自己的文件中再建立子目录。从根目录到文件之间所有各级子目录名和该文件名的顺序组合称为文件的“路径名”, 路径分为绝对路径,相对路径。

2、文件的分类

文件可以按各种方法进行分类:

按用途 系统文件、库文件、用户文件

按保护级别 可执行文件、只读文件、读写文件

按信息流向 输入文件、输出文件、输入输出文件

按存放时限 临时文件、永久文件、档案文件

按设备类型 磁盘文件、磁带文件、卡片文件、打印文件

按文件组织结构 逻辑文件、物理文件(顺序文件、链接文件、索引文件)

3、文件的存取方式

顺序存取,随机存取

文件的存取方式有顺序存取和随机存取两种。磁带上的文件只能顺序存取,磁盘上的文件既可采用顺序方式也可用随机方式存取。

4、文件的结构

1 逻辑结构

用户构造的文件称为文件的逻辑结构。如用户的一篇文档、一个数据库记录文件等。逻辑文件有两种形式:流式文件和记录式文件。

流式文件是指用户对文件内信息不再划分的可独立的单位,如我们的word文件,图片文件等。整个文件是以顺序的一串信息组成。

记录式文件:是指用户对文件内信息按逻辑上独立的含义再划分信息单位,每个单位为一个逻辑记录。记录式文件可以存取的最小单位是记录项。每个记录可以独立存取。这个在数据库中我们学得比较多,容易理解。

2、物理结构

由文件系统在存储介质上的文件构造方式称为文件的物理结构。物理结构有

1)顺序结构:在磁盘上就是一块接着一块地放文件。逻辑记录的顺序和磁盘顺序文件块的顺序一致。顺序文件的最大优点是存取速度快(可以连续访问)。

2)链接结构:把磁盘分块,把文件任意存入其中,再用指针把各个块按顺序链接起来。这样所有空闲块都可以被利用,在顺序读取时效率较高但需要随机存取时效率低下(因为要从第一个记录开始读取查找)。

3)索引结构:磁盘不分块,文件的逻辑记录任意存放在磁盘中,通过一张“索引表”指示每个逻辑记录存放位置。这样,访问时根据索引表中的项来查找磁盘中的记录,既适合顺序存取记录,也可以随机存取记录,并且容易实现记录的增删和插入,所以索引结构被广泛应用。

5、文件的保护与保密

1)文件的保护是防止文件被破坏,。文件的保密是防止文件被窃取。

2)文件的保护措施:

防止系统故障造成的破坏,可以采建立副本和定时转储的方法;为了防止用户共享文件可能造成的文件破坏,可以采用树形目录结构、存取控制表和规定文件使用权限的方法。

3)文件的常用保密措施:隐藏文件目录、设置口令和使用密码(加密)等。

三、记录的成组与分解

1记录的成组与分解的原因:由于磁盘块的大小是预先划分好的,大小固定,而逻辑记录的大小是用户文件性质决定的,不一定和块大小一致。

2记录的成组:把若干个逻辑记录存入一个块的工作称为“记录的成组”。每块中逻辑记录的个数称“块因子”.

3、记录的分解:这是记录成组的一个逆过程。经程是先从磁盘中找到记录所在的块,并将本块读入主存缓冲区,再从缓冲区取出所需要的记录送到用户工作区。如果用户所需的记录已经在缓冲区中,则不需要启动外设读块信息,这也可以提高系统工作效率。

四、存储空间的分配与回收

1用位示图进行磁盘存储空间的分配与回收。

2用空闲块表进行磁盘存储空间的分配与回收:如同主存管理中的空闲区表,表每一行记录一组连续空闲块的首块号和空闲块数,空闲块数为“0”的登记项为“空”登记项。

一、作业和作业步

1、作业:我们把用户要求计算机系统处理的一个问题称为一个“作业”

2、作业步:完成作业的每一个步聚称为“作业步”。

二、作业控制方式

1、作业控制方式,包括批处理方式和交互方式。

批处理控制方式:也称脱机控制方式或自动控制方式。就是一下子交待任务,执行过程中不再干涉。

交互控制方式:也称联机控制方式。就是一步一步地交待任务。做好了一步,再做下一步。

2、批处理作业的控制(领会)

1) 按用户提交的作业控制说明书控制作业的执行。

2) 一个作业步的工作往往由多个进程的合作来完成。

3) 一个作业步的工作完成后,继续下一个作业步的作业,直至作业执行结束。

3、交互式作业的管理(领会)

1)、交互式作业的特点: 交互式作业的特点主要表现在交互性上,它采用人机对话的方式工作。

2)、交互式作业的控制:一种是操作使用接口,另一种是命令解释执行。

操作使用接口包括操作控制命令 ,菜单技术 ,窗口技术

命令的解释执行 一类是操作系统中的相应处理模块直接解释执行; 另一类必须创建用户进程去解释执行。

3、终端用户控制终端作业的执行大致有四个阶段:终端的连接、用户注册、控制作业执行和用户退出。

三、批处理作业的调度及调度算法(综合应用)

1、批处理作业:采用批处理控制方式的作业称为“批处理作业”

2、批处理作业进入系统时必须提交:源程序、运行时的数据、用作业控制语言书写的作业控制说明书。

3、批处理作业的输入:操作员只要用“预输入命令”启动SPOOL系统中的“预输入程序”工作就可把作业流中的作业信息存放到“输入井”中。等待系统的调度。

4什么叫作业调度?作业调度选择作业的必要条件是什么?

答:作业调度是指按一定的策略从“输入井”中选择资源能得到满足的作业装入主存储器,使作业能有机会占用处理器执行。作业调度选择作业的必要条件是系统中现有的尚未分配的资源能够满足该作业的资源要求。

6、作业调度与进程调度

作业调度的职责是把输入井中的作业装入主存.

进程调度的职责就是选择当前可占用处理器的进程.

设备管理

一、输入输出操作(要求达到“识记”层次)

1、什么是输入输出操作:主存储器与外围设备之间的信息传送操作称为输入输出操作。

2、对于存储型设备,输入输出操作的信息传输单位为“块”。对输入输出型设备,输入输出操作的信息传输单位为“字符”。

二、独占设备和共享设备(识记)

1、独占设备是指每次只能供一个作业执行期间单独使用的设备。如输入机、磁带机、打印机等。

2、共享设备是指允许几个作业执行期间可同时使用的设备。共享设备的“同时使用”的含义是指多个作业可以交替启动共享设备,其实是当一个用业正在使用设备时其他作业暂不能使用,即每一时刻仍只有一个作业占用,但当一个作业正在使用设备时其他作业就可使用。

三、独占设备的分配(领会)

1、独占设备的绝对号与相对号

这和绝对地址/相对地址的概念类似。绝对号就是将每一台设备确定一个编号(相当于一个绝对地址)。相对号就是为了用户程序的方便而设的,在用户请求使用时,采用“设备类-相对号”来提出使用设备要求。由系统建立绝对号与“设备类-相对号”之间的关系,就能正确启用设备了。

2、设备的指定方式

1) 设备绝对号:系统为每一个设备确定一个唯一的编号。

2)设备相对号:不具体指定是哪台设备,只说明要某类设备多少台,这样可以由系统灵活分配。

3)设备独立性:采用“设备类、相对号”方式使用设备时,用户编程时使用的设备与实际使用哪台设备无关,这就是“设备独立性”

4)如何实现独占性设备分配:对于独占性设备,系统采用“静态分配”的策略,就是当一个作业所需使用的独占设备能得到满足时,该作业才能被装入主存储器执行。

在操作系统中,设置“设备分配表”来记录计算机系统所配置的独占设备类型、台数和分配情况等。设备分配表由“设备类表”和“设备表”两部分组成。通过查表和修改表的操作完成设备分配工作。

四、磁盘的驱动调度(领会)

1、 磁盘的结构

还记得小学时的作业吗?秒,分,小时?!:)这也一样,扇区套在磁道里,磁道套在柱面里,柱面套在一个磁盘里。接下来的问题就是被除数=除数×商+余数了。明白了吗?

2、访问磁盘的操作时间

3、磁盘的驱动调度:系统决定等待磁盘访问者的执行次序的工作就是磁盘的“驱动调度”

4、对磁盘进行驱动调度的目的:有利于系统效率的提高。

5、

磁盘调度分为移臂调度和旋转调度。移臂调度算法包括以下四种:

1) 先来先服务算法;

根据访问者提出访问请求的先后次序来决定执行次序。

2) 最短寻找时间优先调度算法;

从等待的访问者中挑选寻找时间最短的那个请求执行,而不管访问者的先后次序。

3) 电梯调度算法;

从移动臂当前位置沿移动方向选择最近的那个柱面的访问者来执行,若该方向上无请求访问时,就改变移动方向再选择。

4) 单向扫描调度算法。

从0柱面开始往里单向扫描,扫到哪个执行哪个。

以上几种算法要能够区分,详见本栏的《解题精华,想得高分者进》一文。也是我写的。

7、信息的优化分布:知道信息在磁盘上排列不一定是按顺序最优,对于一些能预知处理要求的信息采用优化分页可以缩短输入输出操作时间,提高系统效率。

五、外围设备的启动(识记)

1、 通道(channel):计算机系统中能够独立完成输入输出操作的硬件装置。是CPU与设备的桥梁。

注解:CPU并不直接操作外围设备,他连接通道(I/O处理机),通道连接设备控制器,设备控制器连接设备。CPU只需把“I/O"设备启动,并给出相关的操作要求。然后就由通道来处理输入输出事宜,做完后报告CPU。

2、通道地址字(CAW)和通道状态字(CSW)

用来存放通道程序首地址的主存固定单元称为“通道地址字”。

通道状态字:用于记录通道和设备执行情况的主存单元。

3、I/O中断:是指中央处理器和通道协调工作的一种手段。通道借助I/O中断请求CPU进行干预,CPU根据产生的I/O中断事件了解输入输出操作的执行情况,I/O中断事件是由于通道程序的执行或其他外界原因引起的,对通道操作而言,当操作正常结束或异常结束(如设备故障、设备特殊情况引起异常结束)形成I/O中断,由CPU根据相应情况分别处理。

六、虚拟设备SPOOL系统(领会)

1实现虚拟设备的目的:用一种物理设备模拟另一类物理设备,使各作业在执行期间只使用虚拟的设备而不直接使用物理的独占设备。这种技术可使独占的设备变成可共享的设备,使得设备的利用率和系统效率都能得到提高。

2实现虚拟设备的硬件条件:大容量磁盘;中断装置和通道;中央处理器与通道并行工作的能力。

实现虚拟设备的软件条件是要求操作系统采用多道程序设计技术。

3、虚拟设备的实现原理:对于多道程序,输入时将一批作业的信息通过输入设备预先传送到磁盘上。输出时将作业产生的结果也全部暂时存在磁盘上而不直接输出,直到一个作业得到全部结果而执行结束时再行输出。这样在执行过程中,不需要使用输入机和打印机。因此在配置一台输入机和打印机的情况下,可以让多个作业同时执行,并且各个作业请求输入信息和输出结果的要求都能及时得到满足和实现。

4、SPOOL系统的组成和实现:

井:为实现虚拟设备在磁盘上划出的专用存储空间,用于存放作业的初始信息和执行结果。

SPOOL系统由三部分程序组成:

1预输入程序。通过该程序把作业流中每个作业的初始信息传送到输入井保存,以备作业执行时使用。

2井管理程序:根据作业的请求,保证作业正确及时地从“井”中读取或写出信息。

3缓输出程序。它负责查看“输出井”中是否有待输出的结果信息,若有则启动打印机把作业结果输出。

5、spool系统可以缩短作业执行时间的原因。

作业的执行时间是指作业被装入主存储器到产生全部结果所需要的时间。在SP在SPOOL系统控制下,作业执行时从磁盘上读/写信息代替低速的输入机和打印机的读/写操作,信息传送的速率显然是快得多。因此作业的执行时间就缩短了。

死锁:

(就是路口的塞车现象 )

若系统中存在一组进程(两个或多个进程),它们中的每一个进程都占用了某种资源而又都在等待其中另一个进程所占用的资源,这种等待永远不能结束,则说系统出现了“死锁”。或说这组进程处于“死锁”状态。

一、死锁的防止(简单应用)

1、系统出现死锁必然出现以下情况:

1)互斥使用资源

2)占有并等待资源

3)不可抢夺资源

4)循环等待资源

2、死锁的防止策略:破坏产生死锁的条件中的一个就可以了。

常用的方法有:静态分配、、按序分配、抢夺式分配3种。

二、死锁的避免(简单应用)

1、死锁的避免是让系统处于安全状态,来避免发生死锁。

安全状态:如果操作系统能保证所有的进程在有限的时间内得到需要的全部资源,则称系统处于“安全状态”。

2、银行算法是怎样避免死锁的:

计算机银行家算法是通过动态地检测系统中资源分配情况和进程对资源的需求情况,在保证到少有一个进程能得到所需要的全部资源,从而能确保系统处于安全状态进,才把资源分配给申请者,从而避免了进程共享资源时系统发生死锁。

采用银行家算法时为进程分配资源的方式

1)对每一个首次申请资源的进程都要测试该进程对资源的最大的需求量。如果系统现存资源可以满足他的最大需求量,就按当前申请量为分配资源。 否则推迟分配。

2)进程执行中继续申请资源时,先测试该进程已占用资源数和本次申请资源总数有没有超过

最大需求量。超过就不分配。

若没有超过,再测试系统现存资源是否满足进程尚需的最大资源量,满足则按当前申请量分配,否则也推迟分配。

总之,银行家算法要保证分配资源时系统现存资源一定能满足至少一个进程所需的全部资源。 (银行家算法在操作系统的实践考试中可能会用到)

三、死锁的检测和解除(领会)

死锁的检测

就是既不打预防针,也不去避免得病,而是经常去体检,如果发现有病了就治疗。这是一种事后解决的办法,也算是解决死锁问题的一条途径。但这毕竟要付出较大代价.

相关推荐