《操作系统zxj-1操作系统引论.ppt》由会员分享,可在线阅读,更多相关《操作系统zxj-1操作系统引论.ppt(71页珍藏版)》请在三一办公上搜索。
1、第一章操作系统引论,本课程地位,专业核心课程考研核心课程技术开发的理论基础,操作系统与其它专业课程的关系,前趋基础课程计算机组成原理(组织与结构)程序设计基础数据结构后继发展课程软件工程数据库基础计算机网络高级程序设计,实验,实验一进程调度实验二作业调度实验三SPOOLING模拟系统实验四磁盘存储空间的分配和回收实验五驱动调度实验六文件管理实验七资源分配,主要内容,操作系统的目标、作用和模型操作系统的发展过程操作系统的基本特征 OS(Operating Systems)的主要功能OS的结构设计,你所用过的操作系统,你知道下列哪些是操作系统吗?极品飞车DOS LINUX WINDOWS TURB
2、O-C WORD FOXPRO UNIX一个C语言源程序,你用过的操作系统能做什么?,启动、结束用户程序。各种命令:dir copy del format.系统调用:例如INT指令。WINDOWS、UNIX等提供多任务或多用户环境。,你知道操作系统不能做什么?,不做天气预报不做房屋设计不是编译程序总之,操作系统不直接解决最终具体应用问题,也不负责编译源程序.,引入操作系统的目的,用户观点:计算机为用户提供最好的服务,构建用户与计算机间和谐交互环境。系统管理观点:合理组织计算机工作流程,管理和分配计算机系统硬件及软件资源,使之能为多个用户高效率共享。发展观点:给计算机系统的功能扩展提供支撑平台,
3、使之在追加新的服务和功能时更容易而不影响原有服务与功能。,1.1 操作系统的目标、作用和模型,操作系统概念一组控制和管理计算机硬件和软件资源、合理地对各类作业进行调度以及方便用户的程序集合。,方便性计算机只能识别0、1;用户熟悉的是各种语言。有效性使计算机的各类资源在系统的管理下得到更有效的利用,提高系统吞吐量。可扩充性便于修改和增加功能(如何设计?)。开放性系统能支持世界标准规范。,1.1.1 操作系统的目标,1.1.2 操作系统的作用(1),作为用户与计算机硬件系统之间的接口,图11 OS作为接口的从层状示意图,计算机硬件,操作系统,系统调用,命令,图标,窗口,应用程序及实用程序,系统设计
4、者,程序员,用户,操作系统的作用(2),作为计算机系统资源的管理者处理机管理:分配和控制处理机存储器管理:分配及回收内存I/O(Input/Output)设备管理:I/O分配与操作文件管理:文件存取、共享和保护 作为扩充机器把覆盖了软件的机器称为扩充机或虚拟机。分层扩充的特点。,不断提高计算机资源利用率的需要如批处理系统的出现方便用户如分时交互式系统的出现器件的不断更新换代8位163264.计算机体系结构的不断发展:单机OS多机OS网络OS,1.1.3 操作系统发展的主要动力,1.2 操作系统的发展过程,无操作系统时的计算机系统人工操作方式如纸带输入机。特点是用户独占全机及CPU等待人工操作。
5、脱机I/O方式(图1.2)引入I/O机的概念,解决前者的缺点。特点是减少了CPU的空闲时间且提高I/O速度。,图1-2脱机I/O示意图,输入设备,外围机,磁盘,磁盘,磁盘,主机,磁盘,外围机,输出设备,1.2.2 单道批处理系统,处理过程(图1.3)监督程序(monitor)概念:系统对作业的处理都是成批进行的、且内存中始终只保持一道作业,称为单道批处理系统(simple batch system)。批处理系统的引入是为了提高系统资源的利用率和吞吐量概念:运行控制权特征自动性、顺序性、单道性,早期批处理系统,将卡片装入 1401机的读卡机将卡片中的程序读入磁带将磁带装入 7094机,完成计算将
6、磁带装入 1401机,打印结果,图13,还有下一个作业?,把下一个作业的源程序转换为目标程序,源程序有错吗?,装配目标程序,运行目标程序,开始,是,否,停止,是,否,1.2.3 多道批处理系统,基本概念多道:系统中同时驻留多个作业多道引入的优点:提高CPU利用率(图1.4)提高内存和I/O设备利用率提高了系统吞吐量特征多道性、无序性、调度性:作业调度、进程调度缺点平均周转时间长、无交互能力,图14,用户程序,监督程序,I/O操作,I/O中断请求,启动I/O,I/O完成,结束中断,I/O中断请求,启动I/O,I/O完成,结束中断,t1,t2,t3,t4,t5,t6,t7,t8,(a)单道程序运行
7、情况,图14,程序A,调度程序,I/O请求,(b)四道程序运行情况,程序B,程序C,程序D,I/O请求,I/O请求,I/O请求,I/O完成,I/O完成,I/O完成,A完成,表示获得CPU,C再运行,多道批处理系统(2),需解决的问题处理机管理问题内存管理问题I/O管理问题文件管理问题作业管理问题,分时系统,分时系统的产生概念:指一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户共享主机中的资源,各个用户都可通过自己的终端以交互方式使用计算机。是用户的需求:人机交互性 共享主机 便于用户上机,分时系统(2),分时系统在实现中的关键问题及时接收:多终端卡、输入缓冲区及时处理:交互作业应在
8、内存、响应时间应短,分时系统(3),分时系统的实现方法交互式作业直接进入内存以分配时间片方式实现类型:单道分时系统具有前、后台的分时系统仅当前台无作业或在调进、出时,才运行后台批处理作业。多道分时系统不需要调入、出开销。,分时系统(4),分时系统的特征多路性、独立性、及时性、交互性,实时系统,引入:要求及时处理的场合概念:系统能及时响应外部事件的请求,在规定时间内完成对该事件的处理。类型实时控制实时信息处理,实时系统(2),实时任务类型按任务执行是否呈现周期性来划分周期性的(联系周期);非周期性的(联系开始或完成截止时间)根据对截止时间的要求来划分硬实时任务软实时任务,实时系统(3),实时、分
9、时的比较多路性:相同独立性:相同及时性:实时系统要求更高交互性:分时系统交互性更强可靠性:实时系统要求更高,微机操作系统,单用户单任务OS:只允许一个用户上机、且只允许用户程序作为一个任务运行。最具代表性的是CP/M和MS-DOS。单用户多任务OS:只允许一个用户上机、但允许将一个用户程序分为若干个任务,使它们并发执行。最具代表性的是OS/2和MS-WINDOWS。多用户多任务OS:允许多个用户通过各自的终端使用同一台主机,共享主机的各类资源,同时用户程序又可进一步分成几个任务,使它们并发执行。最具代表性的是UNIX OS。,CP/M操作系统,随着大规模集成电路发展,个人计算机时代到来了,各种
10、类 型的个人计算机和软件层出不穷。1973年Gary Kildall看到对个人计算机操作系统的需求,设计了CP/M操作系统。(Control Program/Microprocessor or Microcomputer)CP/M操作系统有较好的层次结构。它的BIOS把操作系统的其他模块与硬件配置分隔开,所以它的可移植性好,具有较好的可适应性和易学易用性。到了1981年,CP/M操作系统成为世界上流行最广的8位操作系统之一。,微软MS DOS,个人计算机的成功,逼得IBM采取紧急战略行动,决定要在1980年尽快生产出微型计算机,以应付挑战但没有操作系统不行。要想快就是找现成系统配套,IBM公司
11、洽谈CP/M操作系统不顺利,机遇落到了微软公司.在关键时刻,开发新操作系统时间和人手上已经不可能,微软找到西雅图计算机产品公司,达成由微软经销西雅图计算机产品公司的QDOS操作系统的协议当时西雅图公司并不知道QDOS将被转卖给IBM,否则历史将会怎样演变,谁也无法知晓,微软MS DOS,IBM在1981年推出个人计算机,宣布了DOS操作系统。随着IBM PC和MS DOS普及,CP/M逐渐走向下坡路MS DOS有优良的文件系统,但受到Intel x86体系结构的限制,缺乏以硬件为基础的存储保护机制随着IBM PC机及其兼容机的畅销,MS DOS成为16位微机单用户单任务操作系统标准。从1981
12、的1.0版到1998年在Windows 95/98之下的7.0版,MS DOS历经了16个年头。迄今仍有MS DOS爱好者继续开发各种DOS软件产品。,IBM OS/2,1987年4月,IBM公司在宣布下一代个人系统PS/2的同时,发表了OS/2。它是一种在80286保护方式下工作的单用户多任务操作系统。该系统的硬件必须以80286或80386为芯片,存储容量在1MB以上并带有硬盘。OS/2能够实现真正的多任务处理,它允许16个任务并发执行,能在最大16MB实存及1GB虚存之间进行地址映射,并具有可运行原MS DOS软件的机制。,微软Windows 操作系统,1983年10月,PC机竞争厂家的
13、图形界面相关产品上市,面对市场压力,比尔.盖茨在1983年11月10日宣布推出Windows操作系统,然而宣布容易,交货就不简单了,Windows交货期的灾难,成了当年计算机界的笑柄,直到1985年11月20日Windows 1.0才正式上市。,Windows 的历史记录,Windows在当时微软历史上创了几个记录:延迟交货次数最多,投入开发人员最多,开发时间最长,更换主管人员最多。1990年微软公司推出的Windows3.0以其易学易用、友好的图形用户界面、支持多任务的优点,很快占领了市场。1992年推出的Windows3.1版,提供了386增强模式,提高了运行速度,功能也更强大。1993年
14、推出了Windows NT是一个全新的32位多任务操作系统,成为Windows家族中功能最强并支持网络功能的操作系统。1995年推出了Windows 95,之后在此基础上又推出了Windows 97、98,提供了Internet浏缆器和网络功能,使它们成了当今个人计算机上最广泛使用的操作系统。个人计算机采用Windows占90以上,微软公司成了垄断PC行业的同义词。,Windows系列,1.3 操作系统的基本特征,并发并行是指两或多个事件在同一时刻发生。并发是两或多个事件在同一时间间隔内发生。进程:系统中能独立运行并作为资源分配的基本单位。引入线程后,独立运行的单位变为线程。,操作系统的基本特
15、征(2),共享系统中资源可供内存中多个并发执行的进程共同使用互斥共享:一段时间只允许一个进程访问该资源同时访问:微观上仍是互斥的,操作系统的基本特征(3),虚拟通过某种技术把一个物理实体变为若干个逻辑上的对应物。若n是某一物理设备所对应的虚拟的逻辑设备数,则虚拟设备的速度必然是物理设备速度的1/n。异步运行进度不可预知。,硬件结构,硬件结构,一台PC机的构件,Monitor,Bus,CPU(中央处理单元),(a)三阶段管道结构(b)超标量(superscalar)CPU,存储器,典型存储器层次结构数字为近似值,硬盘结构,扇区、磁头、柱面,内存,(a)单地址空间(b)多地址空间,IO中断,(a)
16、启动 I/O设备的步骤(b)中断处理步骤,(a),(b),Pentium机系统结构,多道程序系统 第3代,内存中的三个作业(job),1.4 OS的主要功能,处理机管理功能多道环境下,处理机的运行及分配都是以进程为单位,因此处理机管理可归结为进程管理。一、进程控制创建/撤消进程迁移进程状态一般由进程控制原语完成,OS的主要功能(2),二、进程同步为使多个进程有条不紊地运行,应建立同步机制。包括进程互斥/同步,次序协调。三、进程通信源于进程合作,如:输入进程、计算进程、打印进程相互间有信息传递类型:直接通信:进程A发message,进程B收message间接通信:进程A发message到中间实体
17、(如mailbox),进程B从中间实体收message,OS的主要功能(3),四、调度(作业与进程)作业调度:为作业分配必要资源,调入内存建立进程,并使之进入就绪队列。进程调度:从就绪队列中选出进程,分配CPU,使之运行。调度算法:FCFS、优先权等,OS的主要功能(4),1.4.2 存储管理目的:方便用户使用,且提高存贮器利用率一、内存分配静态分配:动态分配:作业在内存中可移动为此,需内存分配的数据结构及内存分配和回收功能,OS的主要功能(5),二、内存保护例:设置上、下界寄存器,每条指令进行越界检查(一般是硬件实现)三、地址映射地址范围地址逻辑空间逻辑地址相对地址()物理空间物理地址(绝对
18、地址),OS的主要功能(6),四、内存扩充利用虚存技术,从逻辑上扩充内存容量系统应有:请求调入/置换功能以支持虚存技术,OS的主要功能(7),1.4.3 设备管理功能任务:提高I/O利用率和速度,方便用户一、缓冲管理缓冲区:用来解决CPUI/O矛盾,如:CPU快则应多创建缓冲区。二、设备分配包括:设备,设备控制器,I/O通信的分配和回收,OS的主要功能(8),1.4.3 设备管理功能三、设备处理指控制设备进行实际的操作,包括读、写等以及向CPU发中断。设备处理/驱动程序应能根据用户的I/O请求,自动地构成通道程序。四、设备独立性和虚拟设备独立性,即program与设备无关性,使program易
19、于重定向,增加了可移植性。虚拟设备,OS的主要功能(9),文件管理的功能任务:方便用户,提供安全性一、文件存贮空间的管理例:creatfile:文件系统根据文件长度自动分配连续或离散的扇区,并提供“一句柄”表示该文件。二、目录管理使用户按名存取,提高速度。三、文件的读、写管理和存取控制(保护),OS的主要功能(10),1.4.5 用户接口一、命令接口由一组“命令”集组成,分为联机和脱机用户接口1.联机用户接口由一组键盘操作命令及命令解释程序所组成2.脱机(批处理用户接口)用JCL写作业说明书,OS的主要功能(11),二、程序接口系统调用高级语言的库函数三、图形接口如 win的copy文件,采用
20、“拖”来完成,生动,不需记忆,1.5 OS的结构设计,无结构模块式层次式微内核,1.5.1 软件工程的基本概念,软件:软件工程:运用系统、规范和可定量的方法开发、运行和维护软件。,1.5.2 传统的操作系统结构,1.无结构操作系统一组过程集,各过程可相互调用,也叫整体系统结构。缺点:逻辑复杂,维护困难.,传统的操作系统结构(2),2、模块化操作系统通过分解来控制大型软件复杂度。如:进程模块、内存模块,各模块内进一步划分子模块。优点:提高了OS设计的可维护性增强的OS的可适应性加速了OS的开发过程:并行开发模块缺点:接口不易确定模块依赖关系可能复杂(对于大型软件而言),传统的操作系统结构(3),3、分层式操作系统有序分层的基本概念可简化设计的复杂度下层为上层提供服务层次的设置应考虑的因素程序嵌套:各模块间嵌套关系复杂运行频率:随层次的增高,相应软件的运行速度就随之下降公用模块:低层用户接口:高层,1.5.3 微内核操作系统结构,客户进程,进程服务器,终端服务器,文件服务器,存储服务器,核心,请求,回答,C/S服务器模式,提高了系统的灵活性和可扩充性提高了软件的可靠性适合于分布式系统,面向对象的程序设计技术概念:优点:a.可扩展性b.继承性微内核技术引入:提高系统的灵活性;采用C/S模式基本功能进程、内存、IPC等基本管理功能,微内核操作系统结构(2),