操作系统原理与实践教程01.ppt_第1页
操作系统原理与实践教程01.ppt_第2页
操作系统原理与实践教程01.ppt_第3页
操作系统原理与实践教程01.ppt_第4页
操作系统原理与实践教程01.ppt_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

操作系统原理 Principles of Operating System,周湘贞 曾宪权 编著 三两草上传,第 1 章 操作系统概论,1.1 操作系统的概念,1.1.1 计算机系统的结构 1.问题的引入: 下面列举了一些大家熟悉的软件,你能说出它们的区别吗? 极品飞车、Realone Player播放器、Visual C+、Flash、Dreamweaver MX 2004、Linux、Unix、Windows XP、Word、Windows优化大师、Oracal、升达大学学生管理系统,1.1 操作系统的概念,2. 计算机系统的层次结构,提供了一良好的工作环境,方便用户的使用,1.1 操作系统的概念,2. 计算机系统的层次结构 硬件系统(裸机):提供基本的可计算性资源,包括CPU、存储器(主存、辅存)、I/O系统 操作系统层:对硬件作扩充和改造,提供了操作系统接口,为编译程序、编辑程序、数据库系统等的设计者提供有力支撑。 系统软件:建立在操作系统改造和扩充过的机器上,提供扩展指令集,实现各种语言处理程序、数据库管理系统和其他系统程序。 应用软件:解决用户不同的应用问题,1.1 操作系统的概念,1.1.2 操作系统的视图(作用) 1.操作系统是用户与计算机硬件之间的接口。,用户A(上网),用户B(欣赏音乐),用户C(办公),浏览器,播放器,办公软件,用户需求,操作界面,计算机硬件,操作系统屏蔽计算机硬件的物理特性差异,给用户提供了接口,1.1 操作系统的概念,2.操作系统为用户提供虚拟计算机 裸机极难使用,虽有很强的指令系统,从功能上来说局限性很大。加上软件后,就可在硬件基础上,对其功能和性能进行扩充和完善。例如:如果加上一层窗口管理软件,由该软件把一台物理屏幕改造成多窗口,每个应用可以在各自的窗口中操作,用户可以在窗口环境中方便地与计算机交互。 操作系统是紧靠硬件的第一层软件,计算机上覆盖操作系统后,可扩展基本功能,为用户提供一台功能显著增强,使用更加方便,安全可靠性好,效率明显提高的机器,称为虚拟计算机,或操作系统虚拟机器(Virtual Machine)。,1.1 操作系统的概念,3.操作系统作为计算机系统的资源管理者 在计算机系统中,能分配给用户使用的硬件和软件设施总称为资源,包括两大类:硬件资源和信息资源。这些资源是可以共享的。 对资源进行抽象研究,找出各种资源共性和个性,有序地管理计算机中的硬件、软件资源,跟踪资源使用情况,监视资源的状态,满足用户对资源的需求,协调各程序对资源的使用冲突,是现代操作系统的任务之一。,1.1 操作系统的概念,操作系统是控制和管理计算机硬件和软件资源,合理地对各种资源进行分配和调度,规范计算机工作流程,方便用户使用的程序的集合。 操作系统是计算机系统的基础软件,它常驻内存,给用户程序提供一个支撑环境,所以,操作系统有哪些成分组成变得非常重要。一个比较公认的定义是操作系统是一直运行在计算机上的系统程序(通常称为内核),其它程序则为应用程序,运行在操作系统提供的良好环境中。,1.1 操作系统的概念,1.1.3 现代操作系统的特点: 现代操作系统尽管种类繁多,功能差别很大,但它们仍然具有一些共同的特征。现代操作系统具有并发性、共享性、虚拟性和不确定性。 1.并发性(concurrence) 并发性是指两个或多个事件或活动在同一时间间隔内发生。操作系统是一个并发的系统,并发性是它最重要的特性。操作系统的并发性是指计算机系统中同时存在若干个运行的程序,这些程序在执行时间上重叠。,1.1 操作系统的概念,2共享性(sharing) 共享性是现代操作系统的另一个重要特征。共享是指系统中的硬件和软件资源不再为某个程序所独占,而是供多个用户共同使用。 资源共享的方式有两种:(1)互斥访问。系统中的某些资源,如打印机、磁带机等,它们虽然可以提供给多个程序使用,但在同一时间段内却只允许一个程序访问这些资源,即要求互相排斥地使用这些资源。(2)同时访问。计算机系统中还有一些资源,允许同一时间内多个程序对它们进行访问。典型的可同时访问的设备是磁盘,各种可重入程序也可被同时访问。,1.1 操作系统的概念,3虚拟性(virtual) 虚拟性是指操作系统采用的一种管理技术,它把一个物理上的实体,变为若干个逻辑上的对应物,或者把物理上的多个实体变成逻辑上的一个对应物的技术。很显然,物理实体(前者)是实的,而后者是虚拟的。 4异步性(asynchronism) 在多道程序环境下,允许多个进程并发执行,但由于竞争资源等因素的限制,使进程的执行不是“一气呵成”,而是以“走走停停”的方式运行。也就是说,在多道程序环境下,程序的执行是以异步方式进行的。,1.1 操作系统的概念,1.1.4 操作系统的功能 1处理机管理 创建或删除用户进程和系统进程; 暂停或重启进程; 提供进程同步机制; 提供进程通信机制; 提供死锁处理机制;,1.1 操作系统的概念,2存储管理 操作系统负责下列内存管理的活动: 记录内存的哪些部分正在被使用及被谁使用。 当内存空间可用时,决定哪些进程可以装入内存。 根据需要分配和释放内存空间。 确保多道程序环境下,各个程序的运行只在自己内存空间运行,互不干扰。 当内存空间不足时,采取何种策略去扩展逻辑内存。,1.1 操作系统的概念,3设备管理 提供外围设备的控制与处理 提供缓冲区的管理 提供设备独立性 外围设备的分配和驱动调度 实现虚拟设备,1.1 操作系统的概念,4文件管理 创建或删除文件 创建或删除目录 提供操作文件和目录的原语 将文件映射到辅存上 在稳定的存储媒介上备份文件,1.1 操作系统的概念,5用户接口管理 6.其他功能 系统安全 网络和通信管理,1.2 操作系统的形成和发展,1.2.1 人工操作阶段 由用户(程序员)采用手工方式直接控制和使用计算机硬件,即由用户(程序员)将事先准备好的程序和数据穿孔在纸带或卡片上,然后将这些纸带或卡片装入纸带或卡片输入机,启动它们将程序和数据输入到计算机,随后启动计算机运行。当程序运行结束取走结果后,才让另一个用户上机。 这种人工操作方式有以下缺陷:(1)用户上机独占全机资源,造成资源利用率不高,系统效率低下。(2)手工操作多,浪费处理机时间,也极易发生差错。(3)数据的输入,程序的执行、结果的输出均联机进行,从上机到下机的时间拉得非常长。,1.2 操作系统的形成和发展,1.2.2 管理程序阶段操作系统的雏形 操作员集中一批用户提交的作业,由管理程序将这批作业从纸带或卡片机输入到磁带上,每当一批作业输入完成后,管理程序自动把磁带上的第一个作业装入内存,并把控制权交给作业。当该作业执行完成后,作业又把控制权缴回管理程序,管理程序再调入磁带上的第二个作业到内存执行。,1.2 操作系统的形成和发展,1.2.3 多道批处理系统现代意义上的操作系统出现 所谓多道程序设计(multiprogramming)是指允许多个程序同时进入一个计算机系统的主存储器并启动进行计算的方法。也就是说,计算机内存中同时存放多道(二个以上相互独立的)程序,它们都处于开始和结束点之间。从宏观上看是并行的,多道程序都处于运行中,并且都没有运行结束;从微观上看是串行的,各道程序轮流使用CPU,交替执行。,1.2 操作系统的形成和发展,1.2 操作系统的形成和发展,例如:设在内存中有三道程序A、B、C,并按A、B、C的优先次序执行,其内部计算和I/O操作时间如下表所示(单位:ms)。,若采用单道方式运行这三道程序,总的运行时间为: 30+40+10+60+30+10+10+20+40+20=260 ms,1.2 操作系统的形成和发展,若采用多道方式运行(一个I/O处理机)这三道程序,总的运行时间为: 30+40+10+20+30+40+20=190 ms 其运行时间关系图如下:,1.2 操作系统的形成和发展,操作系统中引入多道程序设计的好处: 一是提高了CPU的利用率, 二是提高了内存和I/O设备的利用率, 三是改进了系统的吞吐率, 四是充分发挥了系统的并行性。 其主要缺点是:作业周转时间延长。,1.2 操作系统的形成和发展,1.2.4 分时系统与实时系统的出现操作系统步入实用化 1.分时系统: 允许多个联机用户同时使用一台计算机系统进行计算的操作系统称分时操作系统 (Time Sharing Operating System) 分时操作系统具有以下特性: (1)多路性:允许在一台主机上同时联接多台联机终端,系统按分时原则为每个用户服务。 (2)独立性:每个用户各占一个终端,彼此独立操作,互不干扰。 (3)及时性:用户的请求能在很短时间内获得响应。 (4)交互性:用户可通过终端与系统进行广泛的人机对话。,1.2 操作系统的形成和发展,2.实时操作系统: 实时操作系统(Real Time Operating System)指当外界事件或数据产生时,能接收并以足够快的速度予以处理,处理的结果又能在规定时间内来控制监控的生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的操作系统。 实时系统的实现: 硬实时系统:保证任务按时完成 软实时系统:,1.2 操作系统的形成和发展,3.操作系统的三种基本类型的比较 批处理系统的特点是“多道、成批自动处理”,优点是“资源利用率高、系统吞吐量大”,缺点是“等待时间长、没有交互能力”; 分时系统的特点“同时性、交互性、独立性和及时性”,优点是“响应快,便于资源共享”; 实时系统的特点“响应迅速,可靠性高,系统专用”,与分时系统相比,交互性较弱。,1.2 操作系统的形成和发展,1.2.5 操作系统的进一步发展 1.微机操作系统 现代的微机操作系统具有GUI、多用户多任务、虚拟存储管理、网络通信支持、数据库支持、多媒体支持、应用程序编程接口(API)支持等功能,以最大程度的满足个人用户的使用要求。典型的微机操作系统有Windows、OS2、MACOS和Linux等。,1.2 操作系统的形成和发展,2.网络和分布式操作系统 网络操作系统(Network Operating System)能够控制计算机在网络中方便的传送信息和共享资源,并能为网络用户提供各种所需服务的操作系统。 网络操作系统主要有两种工作模式: (1)客户机/服务器(Client/Server)模式。 (2)对等模式(peer-to-peer)。 网络操作系统除了具有操作系统的基本功能外,还应具有网络通信、资源管理和网络管理等功能。 目前比较流行的网络操作系统有:Linux、Unix、Windows Server 2000/2003等。,1.2 操作系统的形成和发展,2.网络和分布式操作系统 分布式计算机系统是一种特殊的计算机网络系统。在分布式系统中。每台计算机高度自治,又相互协调,能在系统范围内实现资源管理,任务分配,能并行地运行分布式程序。 分布式系统与计算机网络的关键区别在于:在分布式系统中,多台自主的计算机对用户是透明的(或者说是不可见的)。也就是说,在分布式系统中,用户觉察不到多个处理机的存在,用户面对的是一台虚拟的单处理机。在计算机网络中,用户必须明确指出在哪台机器上登录,明确地运行递交的任务,明确地指定文件传输的目的地。,1.2 操作系统的形成和发展,3.并行系统和集群系统 多处理机系统(也称为并行系统)有多个紧密通信的处理器,它们共享计算机总线、时钟,有时还有内存和外设等。多处理机系统有对称多处理(SMP)和非对称多处理两种模式。 集群系统(Cluster System)将多个CPU集中起来完成计算任务。然而,集群系统与并行系统不同,它是有两个或多个独立的系统耦合起来。集群的定义尚未定形,通常接受的定义是集群计算机共享存储并通过LAN网络紧密连接。,1.2 操作系统的形成和发展,4. 嵌入式操作系统 嵌入式操作系统指运行在嵌入式(计算机)环境中,对整个系统及所有操作的各种部件、装置等资源进行统一协调、处理、指挥和控制的系统软件。 嵌入式操作系统具有通常操作系统的功能,包括:与硬件相关的底层软件、操作系统核心功能(文件系统、存储管理、设备管理、进程管理、处理器管理和中断处理)、功能强大的还提供图形界面、通信协议、小型浏览器等设施。 嵌入式操作系统硬件平台的局限性、应用环境的多样性、 开发手段的特殊性,使它与一般操作系统有很大不同。,1.2 操作系统的形成和发展,1.2.6 实例研究:Windows和Linux的发展历程 1. Linux系统 Linux是类Unix操作系统大家族中的一员。从20世纪90年代末开始,Linux这位相对较新的成员突然变得非常流行,并且跻身于那些有名的商用Unix操作系统之列。 1991年,Linus Torvalds开发出最初的Linux,它作为一个适用于基于Intel 80386微处理器的IBM PC兼容机的操作系统。Linus将这个系统放到Internet上,允许人们自由下载,许多人对Linux进行改进、扩充、完善,做出了关键性贡献。Linux由最初一个人写的原型变成在Internet上由无数志同道合的程序高手们参与的一场运动。,1.2 操作系统的形成和发展,2. Windows系统 Windows操作系统是由微软公司开发的操作系统。从1983年微软宣布Windows的诞生到现在的Windows Server 2003,Windows已经走过了20多年,并且成为风靡全球的微机操作系统。目前个人计算机上采用Windows操作系统的占90%。 1983年11月,比尔.盖茨宣布推出Windows,但是一直到1985年11月微软公司才正式发布Windows 1.0版。1987年12月,Windows 2.0正式供货。1990年5月22日,微软推出Windows 3.0。从此,在许多独立软件开发商和硬件厂商的支持下,微软的Windows在市场中逐渐开始取代DOS成为操作系统平台的主流软件。,1.3 操作系统的结构,1.3.1 操作系统的设计 操作系统是一个庞杂的大型系统的软件,因此,操作系统的设计是一个 复杂的过程。以IBM公司的OS/360系统为例,它由4000个模块组成,共约100万条指令,花费5000人年,经费达数亿美元。 1. 操作系统的设计目标 一个高质量的操作系统应具有可靠性、高效性、可扩充性、易移植性、安全性和兼容性等特征。 2. 操作系统的设计和实现 设计原则: 机制与实现相分离,1.3 操作系统的结构,1.3.2 操作系统的结构 1. 整体式结构 整体式操作系统的基本设计思想是:把模块作为操作系统的基本单位,按照功能需要而不是根据程序和数据的特性把整个操作系统分解成若干个模块,每个模块具有一定的功能,若干个关联模块协作完成某个功能。各个模块可以不加控制,自由调用,每个模块经独立设计、编码和调试后连接成一个完整的系统。 这种结构的优点是:程序结构紧密,接口简单直接,系统效率高,但是也有一定的缺陷,如模块独立性差,模块之间牵连太多,系统结构不清晰,系统的正确性难以保证,可靠性降低,扩充性差等。,1.3 操作系统的结构,2. 层次结构 所谓层次结构就是把操作系统所有的功能模块按照功能的调用次序分别排成若干层,各层之间的模块只能是单向依赖或单向调用(如:只允许上层或外层模块调用下层或内层模块)关系,这样不但操作系统的结构清晰,而且不构成循环。 层次结构的优点:整体问题局部化,系统的正确性可通过各层正确性来保证。增加、修改或替换层次不影响其他层次,有利于系统的维护和扩充。,1.3 操作系统的结构,2. 层次结构 构造层次结构OS分层原则 1)把与机器硬件有关的程序模块放在最底层 2)反映系统外特性的软件放在最外层 3)按照实现操作系统命令时模块间的调用次序或按进程间单向发送信息的顺序来分层 4)为进程的正常运行创造环境和提供条件的内核程序应该尽可能放在底层。,1.3 操作系

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论