2323操作系统概论资料

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第1章引论1计算机系统包括计算机硬件和计算机软件两大部分1)计算机硬件(最里层):中央处理器(CPU)、存储器、输入输出控制系统、输入输出设备2)计算机软件(最外层):系统软件(操作系统、编译程序):与具体的应用领域无关、支撑软件(开发工具、数据库)、应用软件:特定应用领域的专用软件。2操作系统的功能和作用1)操作系统(OS)是管理计算机系统资源、控制程序执行、改善人机界面和为应用软件提供支持的一种系统软件2)操作系统的作用(1)管理计算机系统的资源(2)为用户提供方便的使用接口(3)扩充硬件的功能3)操作系统的功能1)处理器管理(2)存储管理(3)文件管理:按名存取(4)设备管理:分配、启动、故障处理等(5)为用户提供使用接口:1.程序员:一组系统功能调用2.操作员:一组操作控制命令3早期操作系统(20世纪50、60年代)1)批处理操作系统(1)单道批处理系统(50年代),一次只允许一个作业(2)多道批处理系统(60年代),多个作业同时装入主存储器,CPU轮流执行各作业,各作业可同时使用各自所需的外设。2)分时操作系统(60年代),用于主机/终端模式的计算机系统用户可直接输入、调试、运行自己的程序,能直接修改程序中的错误,并且直接获得结果。3)实时操作系统,主要用于工业生产,首要考虑的是系统的实时性和可靠性,其次,才考虑系统的效率。4现代操作系统的发展1)微机操作系统:主要功能是实现文件管理、输入输出控制和命令解释,只允许一个用户使用。如MS-DOS、CP/M2)网络操作系统:实现(计算机之间的通信)和(网络资源的共享)。3)分布式操作系统:采用(客户/服务器)模式,使若干计算机相互协作完成一个共同的任务。主要特点:(1)统一性。指用户感觉不到是多台计算机在提供服务,就像在使用“单一的计算机系统”一样(2)透明性。用户不知道资源的位置,也不知道哪台计算机在提供服务4)嵌入式操作系统:主要特点是微型化和实时性,用于工业控制、数据采集、通信传输等场合5处理器状态1)CPU指令类型(1)特权指令(例如:I/O指令,设置闹钟,设置控制寄存器),不允许用户执行(2)非特权指令(例如:访管指令)2)CPU状态(1)管态-操作系统占用CPU,可以执行一切指令(2)目态-用户程序占用CPU,不允许执行特权指令3)程序状态字(PSW):用来控制指令执行顺序,保留和指示与程序相关的系统状态。包含3部分内容:(1)程序基本状态:指令地址、条件码、目态/管态、等待/计算等(2)中断码,保存程序执行时发生的中断事件(3)中断屏蔽位,指示是否响应中断事件4)程序状态字寄存器:程序状态字寄存器用来存放当前运行程序的PSW的寄存器。6操作系统接口1)操作系统提供了2类接口:(1)程序员接口,一组系统功能调用(2)操作员接口,一组操作控制命令2)访管指令:操作系统提供的一条目态下执行的指令,实现用户程序和系统调用之间的切换。当用户程序执行访管指令时,产生一个中断,切换到管态下进行操作系统的功能调用;完成系统调用后,切换回目态继续执行用户程序第2章处理器管理1多道程序设计1)让多个任务同时进入计算机的主存储器中并行执行,这种程序设计方法称为多道程序设计,这样的计算机系统称为多道程序设计系统2)采用多道程序设计增加了单位时间的算题量,但对每个任务而言,从开始到完成所需的时间可能比单道执行所需的时间要长3)采用多道程序设计提高了处理器的利用率,而且降低了完成计算所需的总时间,从而提高了单位时间内的算题能力,也提高了吞吐率。2进程的概念1)把一个程序在一个数据集上的一次执行称为进程,程序是静止的,进程是动态的。2)为什么引入进程:1.提高资源的利用率2.正确的描述程序的执行情况3)进程的3种状态:(1)等待-等待某一事件(2)就绪-等待分配CPU(3)运行-正在运行4)进程的属性:1.进程是动态的,它包含了数据和运行在数据集上的程序。2.多个进程可以含有相同的程序3.多个进程可以并行执行4.程序有三种基本状态5)进程状态的变化:(1)运行-等待(2)等待-就绪(3)运行-就绪(4)就绪-运行6)进程的3个特性(1)动态性-运行过程中状态不断变化(2)并发性-若干进程可同时执行(3)异步性-以不可预知的速度推进3进程控制块(PCB):进程刚被创建时,它的初始状态为“就绪态”,能占用CPU时,变“运行态”。1)为了区别不同的进程,记录各进程的执行情况,为每个进程设置的一块管理信息2)进程控制块是对进程进行管理和调度的信息集合,包含4类信息(1)标识信息-标识进程,也就是进程名(2)说明信息-说明进程情况,包括进程状态、等待原因、程序存放位置、数据存放位置(3)现场信息-CPU寄存器的信息,包括通用寄存器、控制寄存器、程序状态字寄存器(4)管理信息-用于进程管理,包括优先级、队列指针等3)操作系统中完成特定功能且不可中断的过程称为原语用于控制进程的原语有:创建、撤销、阻塞、唤醒1.创建原语:2.撤消原语3.阻塞原语:4.唤醒原语:4进程队列1)将进程控制块组成的链表称为进程队列2)可以按进程状态形成就绪队列、等待队列,还可以将等待不同资源的进程形成不同的队列5中断与中断处理1)由于某事件的出现,操作系统中止正在运行的进程,转而处理出现的事件,待适当的时候再让被中止的进程继续运行,这个过程称为中断。引起中断的事件称为中断源。对中断进行处理的程序称为中断处理程序2)中断的类型:(1)硬件中断(2)程序中断(3)外部中断(4)I/O中断(5)访管中断。其中,前4类中断不是程序所期望的,因此称为强迫性中断事件;第5类中断是程序所期望的,称为自愿性中断事件,在小型和微型计算机中称为系统调用3)无论发生哪类中断事件,都由硬件的中断装置暂停当前进程的运行,让操作系统的中断处理程序占用处理器。这一过程称为中断响应4)操作系统对每一类中断事件都要有该类事件的中断处理程序。为此,可预先约定一些存放PSW(程序状态字)的固定内存地址5)中断处理过程(1)中断装置把中断事件存入当前PSW(2)找到事件存放旧PSW的位置,将当前PSW存入其中(3)将中断处理程序的新PSW存入当前PSW,执行中断处理程序6)访管中断事件的处理系统的中断处理程序可设置一张“系统调用程序入口表”,然后按系统调用号(INT21)查找该表,找到相应的系统程序入口地址,把处理转交给实现该功能调用的程序执行6处理器调度1)把磁盘上用来存放作业信息的区域称为输入井,把输入井中的作业称为后备作业2)从输入井选取后备作业到主存储器的工作称为作业调度;从就绪进程中选取一个进程,让它占用处理器的工作称为进程调度3)作业调度算法(1)先来先服务算法(2)计算时间短者优先算法(3)响应比高者优先算法-综合考虑等待时间和计算时间的算法。响应比=等待时间/计算时间(4)优先级调度算法(5)均衡调度算法4)作业调用原则:1.公平性原则2.平衡资源使用3.极大的流量5)作业调度算法:1.先来先服务原则2.计算时间短的作业优先算法3.响应比高者优先算法4.优先级调度算法5.均衡调度算法6)进程调度算法(1)先来先服务算法(2)最高优先级算法-保证具有最高优先级的进程使用CPU。分非抢占式和可抢占式2种(3)时间片轮转算法7线程的概念1)线程是进程中可独立执行的子任务。每个线程都有一个惟一的标识符和一张线程描述表(记录线程执行时的现场信息及状态等)。2)进程是资源分配单位,线程是调试和执行单位。线程又称轻型进程。3)多线程对比多进程的优越性(1)节省分配进程控制块和工作区的开销(2)不需要另行分配资源,创建速度快(3)不需要额外的通信机制,信息传递速度快(4)能充分利用和发挥处理器与外围设备的并行工作能力第3章存储管理1存储器类别1)存储器分为寄存器(CPU可直接访问)、主存储器和高速缓冲存储器(CPU可直接访问)、辅助存储器(CPU不能直接访问)3个层次。常用的寄存器有通用寄存器、指令寄存器、控制寄存器。每个寄存器存储一个字长。主存储器以字节为单位2)操作系统占用的主存储器空间,称为系统区;用来存放用户程序和数据的主存储器空间称为用户区。存储管理是对主存储器中的用户区进行管理2地址转换1)主存储器的每个存储单元都有一个地址与其对应。如果有n个存储单元,其地址编号为0…n-1。把存储单元的地址编号称为主存储器的绝对地址,与绝对地址对应的存储空间称为物理地址空间2)每个用户都可以认为自己的程序和数据存放在从0开始的地址空间中。把用户程序中使用的地址称为逻辑地址,与逻辑地址对应的存储空间称为逻辑地址空间3)把逻辑地址转换为绝对地址的工作称为重定位或地址转换。重定位的方式分静态定位和动态定位2种4)在装入作业时,把作业中的指令地址和数据地址全部转换为绝对地址,这种定位方式称为静态重定位5)动态重定位由软件和硬件相互配合实现,硬件设一个基址寄存器,当装入作业时,原封不动地把作业装入到所分配的区域,然后将该区域的起始地址存入基址寄存器,在作业执行过程中,由地址转换机构进行地址的动态转换,这种方式称为动态重定位。6)采用动态重定位时,装入主存的作业仍保持原来的逻辑地址,所以必要时可改变它在主存中的存放区域3单用户连续存储管理:静态重定位界限寄存器1)这是一种最简单的存储管理方式。在此方式下,操作系统将整个用户区分配给一个用户。只适合单道运行的计算机系统。此方式可采用静态定位方式进行地址转换2)此方式中,CPU中设一个界限寄存器,存放可供用户使用的存储空间的起始地址。4固定分区存储管理:静态重定位下限寄存器和上限寄存器1)把用户区划分为若干区域,每个区域称为一个分区。各分区大小可以相同,也可以不同,但各分区的大小是固定不变的。每个分区可装入一个作业。适合多道程序设计系统。2)此方式用一个“分区分配表”说明各分区的分配和使用情况3)此方式可采用静态重定位进行地址转换,CPU设“上限寄存器”和“下限寄存器”,记录分区的起始地址和结束地址4)为提高主存空间的利用率,可采取以下措施:(1)根据常用作业的大小和数量进行分区(2)将分区按从小到大的顺序排列,便于查找满足作业需求的最小分区(3)根据作业对主存空间的需求量列队,每队作业装入固定的分区中5可变分区存储管理动态重定位基址寄存器和限长寄存器1)在装入作业时,根据作业大小和主存空间使用情况进行分区。2)采用此方式时,主存储器中空闲区的数目和大小是不断变化的,为了便于管理,可以设置一张空闲区表,用来记录空闲区的起始地址和长度3)此方式常用的主存分配算法:(1)“最先适应”算法-从空闲区表中找到第一个满足作业要求的空闲区每次分配时总是顺序查找空闲区表(2)“最优适应”算法-从空闲区表中挑选出满足作业要求的最小空闲区空闲区按长度递增(从小到大)次序登记在空闲区表中(3)“最坏适应”算法-总是分割最大的空闲区给作业使用,使剩下的部分不至于太小,仍可供分配使用(递减)4)此方式采用动态重定位装入作业。硬件设基址寄存器和限长寄存器,分别用来保存作业的起始地址和作业所占分区的最大地址5)可以根据需要把作业从一个存储区域移到另一个存储区域,称为移动,目的有2个:(1)集中分散的空闲区(2)便于作业动态扩充主存6)移动会增加系统开销,也是有条件的(例如,正在等待外围设备传送信息的作业就不能移动)。采用两头装入作业的方式可减少移动6页式虚拟存储管理动态重定位采用虚拟存储管理技术,实现较小的主存空间里运行较大的作业。1)页式存储管理把主存储器分成大小相等的许多区,每个区称为一块。与此对应,编制程序的逻辑地址也分成页,页的大小与块的大小相等。2)页式存储器的逻辑地址由两部分组成:页号和页内地址。从地址结构看,逻辑地址是连继的,在编程时无需考虑如何分页3)页式存储管理用一张主存分配表来记录已分配和未分配的块以及当前剩余的空闲块数。由于块的大小是固定的,所以可以用一张“位示图”来构成主存分配表4)页式存储管理为每个作业建立一张“页表”,指出页号与块号的对应关系,采用动态重定位的方式装入作业。页表存放在主存储器内,当进行逻辑地

1 / 9
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功