第一章 导论
计算机硬件、操作系统、系统程序、用户。
操作系统是一组控制和管理计算机硬件和软件资源、合理地对各类作业进行调度,以及方便用户的程序集合。
执行用户程序,更容易地解决用户问题。
使计算机系统使用方便。
有效地使用计算机硬件。
用户视角、系统视角
interrupt是一种在系统内硬件产生的流量变化,用来处理中断请求然后返回中断的上下文和指令。
Trap是软件产生的中断,用来调用操作系统的程序、捕捉算数逻辑错误。
主存:只有CPU可以直接访问的大型存储介质。
辅存:非易失性大存储容量的主存储器的扩展。
磁盘:最常用的辅存。磁盘表面逻辑上划分为磁道,再细分为扇区。磁盘控制器决定设备和计算机之间的逻辑交互。
用于高速I/O设备,能够以接近内存速度传送信息。
设备控制器无需CPU干预直接将数据块从缓冲存储器直接传输到主存。
每个块只产生一个中断,而不是每个字节的一个中断。
单处理器系统、多处理器系统、集群系统
定义:多处理器系统有多个紧密通信的CPU,它们共享计算机总线,有时还有时钟、内存和外设等。
优点:
增加吞吐量、规模经济、增加可靠性。
分类:
非对称多处理:每个处理器都有各自特定的任务。一个主处理器控制系统,其他处理器或者向主处理器要任务或做预先定义的任务。
对称多处理:每个处理器都要完成操作系统中的所有任务。所有处理器对等,处理器之间没有主-从关系。
定义:与多处理器系统一样,集群系统将多个CPU集中起来完成计算任务。然而,集群系统与多处理器系统不同,它是由两个或多个独立的系统耦合起来的。集群计算机共享存储并通过局域网络连接或更快的内部连接。
操作系统最重要的一点是要有多道程序处理能力。多道程序设计通过组织作业(编码或数据)使CPU总有一个作业在执行,从而提高了CPU的利用率。
Batch systems(批处理系统)
Time-sharingsystems(分时系统)
Real timesystems(实时系统)
工作方式:
用户将作业交给系统操作员,系统操作员将许多用户的作业组成一批作业(jobs)之后输入到计算机中,在系统中形成一个自动转接的连续的作业流,系统自动、依次执行每个作业。最后由操作员将作业结果交给用户。操作系统:自动将控制从一个任务转到下一个任务。
分类:单道批处理系统、多道批处理系统
批处理操纵系统优点:
作业流程自动化、效率高、吞吐量高。
批处理操纵系统缺点:
无交互手段、调试程序困难。
分时系统(或多任务)是多道程序设计的延伸。
共享需要一种交互计算机系统,它能提供用户与系统之间的直接通信。响应时间短(通常小于一秒钟)。
允许多用户共享计算机。由于每个动作或命令都较短,每个用户只需少量CPU时间,用户之间切换时间短,所以用户会感觉整个系统为自己所用。
定义:实时操作系统是保证在一定时间限制内完成特定功能的操作系统。
分类:
硬实时系统:硬实时要求在规定的时间内必须完成操作,这是在操作系统设计时保证的。
软实时系统:软实时则只要按照任务的优先级,尽可能快地完成操作即可。
为了区分操作系统代码和用户定义代码的执行,至少需要两种独立的操作模式:用户模式、监督程序模式(管理模式、系统模式、特权模式)。
将能引起损害的机器指令作为特权指令。用户模式下想要执行特权指令,硬件不会执行,会认为是非法指令,并以陷阱的形式通知操作系统。
1.
a.一个用户窃取另一个用户的数据;无法在各用户之间最优化的分配资源。
b.不可以。任何保护机制都会被破译。
5.
非对称多处理:每个处理器都有各自特定的任务。一个主处理器控制系统,其他处理器或者向主处理器要任务或做预先定义的任务。主处理器调度从处理器并安排工作(主-从关系)。
对称多处理:每个处理器都要完成操作系统中的所有任务。即所有处理器对等,处理器之间没有主-从关系。
优点:增加吞吐量、规模经济、增加可靠性。
缺点:由于各CPU相互独立,一个可能空闲而另一个可能过载,导致效率低。
10.
interrupt的目的:中断是一种在系统内硬件产生的流量变化,用来处理中断请求然后返回中断的上下文和指令。
trap和interrupt的区别:trap是软件产生的中断,interrupt是硬件产生的中断。trap被用来调用操作系统的程序、捕捉算数逻辑错误,interrupt用来处理中断请求然后返回中断的上下文和指令,同时interrupt可以标记I/O的完成,从而避免设备轮询的需要。
Trap可以被用户或程序故意产生,目的:被用来调用操作系统的程序、捕捉算数逻辑错误。
12.
能。
对所有用户程序进行软件解释,在软件中,软件解释程序能够提供硬件不能提供的。
所有程序都用高级程序设计语言编写,以便于目标代码被编译出来,编译器将会产生防护性检查并忽略硬件。
15.
处理器可以追踪与每个进程相联系的位置以及限制访问程序范围外的位置。信息与一个程序的内存范围有关,它可以通过使用库、限制寄存器和对每一次存储器存储执行检查来维持其本身。
操作系统定义:操作系统是一组控制和管理计算机硬件和软件资源、合理地对各类作业进行调度,以及方便用户的程序集合。
Interrupt和trap的概念:interrupt是一种在系统内硬件产生的流量变化,用来处理中断请求然后返回中断的上下文和指令。Trap是软件产生的中断,用来调用操作系统的程序、捕捉算数逻辑错误。
对CPU、I/O、memory的保护目的以及保护措施:
CPU: 防止用户程序陷入无限循环或不调用系统服务,并且从不将控制返回到操作系统。措施:定时器来防止无限循环过程占用资源、实现时间共享、计算当前时间。
I/O:防止用户直接发出I/O指令,防止用户执行非法I/O指令。措施:解决多个用户共享I/O设备、从I/O设备数据时进行检查。
Memory:保护操作系统不受用户程序的访问,并且保护用户程序不受其他程序访问。措施:当在监视器模式下执行时,操作系统可以不受限制地访问监视器和用户的内存,将库和限制寄存器的负载指令作为特权指令。
一般情况下,操作系统尽量提高资源的利用率及提高运行效率,但有时也违反这一原则。试举例并加以说明。
当计算机运行对配置要求很高的大型程序时,例如大型游戏,用户追求的是画面的极度精美而不是为了机器运行流畅而选择较低的画质,这对机器的资源开销量就变得更大,机器运行效率也会变低。但是这并不是浪费资源,是正常现象。