操作系统概述笔记
操作系统管理系统软硬件资源,提供用户接口,具有扩展性和虚拟性。
引入多道程序设计的主要目的:提高处理机利用率。
操作系统可以提供多种功能,而操作系统必须提供但又不作为资源管理的是:处理中断。
处理中断是操作系统提供给用户及操作系统本身使用的一种功能。
并行性:指两个或多个事件在同一时刻发生;并发性:指两个或多个事件在一定时间间隔内发生。
中断不是操作系统提供的资源管理,而是加速计算机处理能力,提高效率的一种技术。
用户在用户态要是用的特权指令时,必须首先通过访管指令产生中断而改变状态,由用户态进入内核态,并由操作系统来完成,才可以实现特权指令的动能。
访管指令是自愿性中断,这类中断事件是因为程序员在编写程序时,要求操作系统提供服务而有意识的使用访管指令或者系统调用,从而导致中断。
重点总结
1.操作系统的特征和功能
注:特征:
操作系统具有并发、共享、虚拟和不确定性四大特征。其中,最重要的是并发特
征,其他三个特征都是以并发为前提的。
功能:
操作系统主要有进程管理、存储管理、文件管理、输入/输出管理和作业管理五大
功能。
2.操作系统体系结构
注:整体式结构,层次式结构,微内核(客户/服务器)结构。
存储管理笔记
静态重定位是在作业的装入过程中进行的;动态重定位是在运行过程中再计算地址。
重定位过程就是将程序中的逻辑地址转换为处理机可以访问的物理地址的过程。
编译过程就是将计算机高级语言或低级语言转换为机器语言即二进制代码过程。
对外存交换区的管理目标:提高换入换出速度。
操作系统在内存管理中为了提高内存的利用率,引入了覆盖和交换技术,也就是在较小的内存空间中用重复使用的方法来节省存储空间,但是,它付出的代价是需要消耗更多的处理机时间。实际上是一种以时间换空间的技术。
【归纳总结】从节省处理机时间来讲,换入换出的速度越快,付出的时间代价就越小,反之就越大,大到不能忍受时,覆盖和交换技术就没有意义了。所以,从提高内存的利用率出发
而引入了覆盖和交换技术,为使付出的代价减小,提高换入换出的速度就成了管理外存交换区的主要目标。
页式管理中很重要的一个问题便是页面大小如何确定。确定页面大小有许多因素,例如进程的平均大小,页表占用的长度等等。而一旦确定,所有的页面都是等长的。
分区管理和分页管理只能采用静态链接。一个大的进程可能包含很多个程序模块。对它们进行链接要花费大量的处理机时间,而实际运行时则可能只用到其中的一少部分模块。
【归纳总结】段式存储管理是基于为用户提供一个方便灵活的程序设计环境而提出来的。段式管理的基本思想是:把程序按内容或过程(函数)关系分成段,每段有自己的名字。一个用户作业或进程所包含的段对应于一个二维的线性虚拟空间,也就是一个二维虚拟存储器。段式管理程序以段为单位分配内存,然后通过地址映射机构把段式虚拟地址转换成实际的内存物理地址。
现代操作系统已经不允许用户直接访问物理内存了,内存的寻址完全由操作系统来完成。内存保护可以是软件,也可以是硬件。现代操作系统大多数都采用虚拟存储的技术,请求调页(段)技术实际上是交换技术的一种发展;而虚拟存储器并不能在物理上扩充内存容量。
在请求分页系统的页表增加了若干项,其中“存在位”是用于:程序访问。
基于局部性原理,应用程序在运行之前并不必全部装入内存,仅需将当前运行到的那部分程序和数据装入内存便可启动程序的运行,其余部分仍驻留在外存上。当要运行的指令或访问的数据不在内存时,再由操作系统通过请求调入功能将它们调入内存,以使程序能继续运行。如果此时内存已满,则还需通过置换功能,将内存中暂时不用的程序或数据调至盘上,腾出足够的内存空间后,再将要访问的程序或数据调入内存,使程序继续运行
请求分页存储管理的主要特点:扩充主存。
请求分页是虚拟存储的一种方法,采用虚拟存储技术起到了扩充主存的效果。分页技术主要是解决内存离散存放的问题。
虚拟存储器是程序访问比内存更大的地址空间。
简单段式存储管理中,处理外碎片问题可采用:SPooLing技术
段式存储管理其实与动态分区管理类似,也有碎片问题,也适用内存紧缩。
普通中断只能发生在指令之间,若指令较长的话中断必须锁存,中断返回运行的是下一条指令。而缺页中断比较特殊,可以在指令中间发生,中断返回以后继续运行当前的指令。
重点总结
1.存储分配方式
注:
(1)连续分配管理方式
分配算法:首次适应算法(First Fit),下次适应算法(Next Fit),最佳适应算
法(Best Fit),最坏适应算法(Worst Fit)。
(2)非连续分配管理方式:简单分页存储管理,分段存储管理。
2.虚拟内存管理页面置换算法
注:
(1).随机淘汰算法
在无法确定那些页被访问的概率较低时,随机地选择某个用户的页面并将其换出。
(2).先进先出算法(FIFO)
FIFO(first in first out)算法:总是选择驻留内存时间最长的页面进行淘汰。
(3).最佳置换算法(OPT)
最佳置换算法的基本思想是:从内存中移出永远不再需要的页面。
(4).最近最久未使用页面置换算法(LRU)
这种算法的基本思想是,利用局部性原理,根据一个作业在执行过程中过去的页面
访问历史来推测未来的行为。它认为过去一段时间里不曾被访问过的页面,在最近的
将来可能也不会再被访问。
(5).最近没有使用页面置换算法(NRU)
该算法只要求对应于每个存储块(页面)设置一个“引用位”和“修改位”。利用
这二 位组织成四种状态,“引用位”:“修改位”=0:0;0:1;1:0;1:1。每
次置换时,总取最小值的页面置换,若相同则随机置换或先进先出置换。
(6).时钟算法(CLOCK)
时钟算法是将作业已调入内存的页面链成循环队列,使用页表中的“引用位”,用
一个指针指向循环队列中的下一个将被替换的页面。