操作系统原理第1章-绪论_第1页
操作系统原理第1章-绪论_第2页
操作系统原理第1章-绪论_第3页
操作系统原理第1章-绪论_第4页
操作系统原理第1章-绪论_第5页
已阅读5页,还剩75页未读 继续免费阅读

下载本文档

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

文档简介

操作系统原理

PrincipalsofOperatingSystem2主讲教材及参考书籍主讲教材蒲晓蓉,张伟利.《操作系统原理与实例分析》机械工业出版社.2004.6主要参考书籍

(荷)Andrew.S.Tanenbaum著,陈向群,马洪兵译.《现代操作系统》原书第三版.机械工业出版社.20053后续参考书籍尤晋元,史美林,陈向群等.《Windows操作系统原理》机械工业出版社.2001.或2004年第二版李亚峰,欧文盛等.《ARM嵌入式Linux系统开发从入门到精通》清华大学出版社.2007,84目的和意义操作系统:计算机中最基础的系统软件,为用户提供了使用计算机的环境即用户接口。三类计算机用户

1.一般计算机用户:操作某种操作系统

2.应用程序员:利用用户接口编程

3.操作系统设计员:开发系统级程序5课程概述及特点本课程主要介绍计算机操作系统的设计方法和实现技术而不针对某一特定系统。特点

1.更新速度快

2.系统性差

3.概念抽象

4.原理性强6学习方法问答式启发学习方式

-----带着问题学习本课程例如:为什么要学习本课程?进程与线程的含义是什么?他们的区别?多道程序技术的概念?等等?7(选修课)成绩评定理论课出勤10%+作业20%+期末测试70%实验课出勤30%+实验报告70%(期末考核方式待定)8课程内容第一章操作系统概述第二章进程管理第三章存储管理第四章设备管理第五章文件管理第一章操作系统概述10本章主要内容计算机系统资源:硬件、软件操作系统的定义:四种观点操作系统的形成与发展操作系统的功能现代操作系统操作系统分类1.1计算机系统资源12计算机系统结构软件:系统软件、应用软件硬件:处理器、内存、输入输出设备(外设)和系统总线13计算机系统结构图硬件操作系统系统软件应用软件终端用户程序员操作系统设计者1.2什么是操作系统15现代操作系统的四种观点用户环境观点:一般用户虚拟机观点:程序员资源管理观点作业组织观点外部看OS开发者角度16观点一:用户环境观点

---基于用户该观点认为:操作系统是计算机用户使用计算机系统的接口,它为计算机用户提供了方便的工作环境。操作系统提供的接口用户接口-(UserInterface即命令接口)程序接口-(操作系统提供的系统调用集合-编程接口,ApplicationProgrammingInterface简称API)17观点二:虚拟机观点

---基于程序员该观点认为:操作系统是建立在计算机硬件平台上的虚拟机器,它为应用软件提供了许多比计算机硬件功能更强或计算机硬件所没有的功能。操作系统在虚拟机中充当管理员和协调员的角色,管理计算机硬件资源,并协调多任务。多进程之间的运行。操作系统扩充:计算机的功能、数量。18观点三:资源管理观点

---基于OS设计者该观点认为:操作系统是计算机系统中各类资源的管理者,它负责分配、回收以及控制系统中的各种软、硬件资源。随着计算机用户的增加,资源管理与共享的需求也增加,操作系统此时的首要任务是跟踪资源的使用情况、满足资源请求、提高资源利用率、协调各程序和用户对资源的使用冲突。19资源管理的主要功能1.监视资源—资源使用状况2.分配资源—确定资源分配策略3.回收资源—处理被释放资源4.保护资源—防止资源被无意破坏20观点四:作业组织观点

---基于OS设计者作业(JOB):用户要求计算机系统所做工作的组合,目前存在于巨型机和大型服务器上。该观点认为:操作系统是计算机工作流程(作业、任务、进程等)的组织者,负责协调系统中各应用程序的运行,报告执行结果或错误信息。21操作系统定义操作系统:是计算机系统中的一个系统软件,管理和控制计算机系统中的硬件和软件资源,合理地组织计算机的工作流程,以便有效利用这些资源为用户提供一个功能强大、使用方便的工作环境,从而在计算机与用户之间起到接口的作用。1.3操作系统的形成与发展23操作系统的简历20世纪50年代中期---第一个简单批处理操作系统60年代中期---多道程序批处理操作系统不久---基于多道程序的分时系统80年代---微机操作系统和网络操作系统24推动操作系统发展的因素硬件升级和新硬件的出现提供新的服务,方便使用提高计算机资源利用效率更在软件错误计算机体系结构的发展25手工操作时期,没有操作系统最早的电子数字计算机,用户的操作和编程完全由手工进行,编程只能用二进制代码程序员也是操作员,上机是独占计算机及其相关设备,效率非常低26单道批处理系统

---早期操作系统程序员先将命令、程序和数据用汇编语言或者FORTRAN语言写在纸上,然后用穿孔机制成卡片,最后将卡片交个操作员,计算结果在打印机上输出,然后进行下一个任务$JOB9000John$FORTRAN$RUN$END图1.2作业卡片示意图27单道批处理系统(续)为了有效利用价格昂贵的计算机,出现了批处理程序(又称监督程序或管理程序),管理应用程序的运行。步骤:1.收集一批作业卡,用专用I/O计算机读入所有作业。2.批处理程序读入第一个作业,运算后将结果输出到磁带。3.自动读入下一个作业。4.运行所有作业后,统一打印结果,同时读入下一批作业28单道批处理程序:总结优点:实现作业自动切换,提高机器利用率。缺点:1.任意时刻,作业独占计算机

2.资源利用率低

3.短作业不公平

4.交互性差29多道批处理系统

---现代意义的操作系统多道:允许多个程序同时存在于主存中,按照某种原则分配处理机逐个执行批处理:用户提交的作业放在外存排成一个队列,然后,由作业跳读程序按照一定的算法从该队列中一次选取一个或若干个作业装入内存执行。多道批处理实现了处理机自动切换。30单道与多道批处理对比程序D程序C程序B程序A处理机结果A单道程序A程序B程序C程序D从处理机看多道运行运行运行运行运行运行等待等待等待等待等待等待等待等待等待运行运行运行运行运行等待运行运行等待图1-3单道与多道程序对比图31多道程序设计技术定义Multiprogramming:为了提高系统吞吐量和资源利用率,允许多个程序同时驻留内存,是处理机在这些程序之间切换,在一段时间内,执行完多个程序的处理技术。现代操作系统大多都采用了多道程序设计技术。32多道批处理系统总结优点:提高了系统资源的利用率和吞吐量带来的问题:处理机的分配与回收内存的分配和保护I/O设备的共享与效率文件的有效管理作业的组织33分时操作系统批处理系统弱点:交互性很差,程序员不能及时调试程序,无法与计算机直接交互操作。分时操作系统:改进系统的响应时间和性能,提供交互式操作环境。分时操作系统实质:在多道程序技术的基础之上,为多个用户配置一个联机终端,多用户轮流使用处理机以实现计算机快速交互式响应。并且,当处理机空闲时可以处理后台大作业。34分时操作系统结构服务器终端1终端2终端3终端n分时系统---联机系统示意图35分时系统CTSS简介第一个分时系统:MIT建立的兼容分时系统CTSS---CompatibleTimeSharingSystem.CTSS是一个单道分时系统,每次只有一道程序(作业)驻留内存,其余作业在外存等待调度装入,按时间片调度。缺点:单道分时,运行多个作业时往往需要频繁调入调出多次,开销大、性能差。36“前台”与“后台”分时系统:分时+批处理内存划分:“前台区”和“后台区”前台区:存放按时间片“调入”和“调出”的作业流。(优先处理)后台区:存放批处理作业。前台的分时任务通常是一些简短命令,因此,计算机可以为多用户提供交互式服务,同时空闲时可以处理后台大作业37多道+分时系统内存中同时存放多道作业,将具备运行条件的排成一个队列,依次按照时间片调度运行。相对单道分时系统,多道分时内存同时驻留多个作业,节省调入调出开销,因此,实时性更好。现代分时系统都属于多道分时系统。38实时系统产生的原因:为了适应对响应时间有严格要求的任务。例如:航天器控制系统、军工业武器控制系统、矿物冶炼控制系统以及航空、火车售票系统等等。39操作系统的进一步发展动力:微处理器的出现。现代操作系统:为个人计算机(PC)配置的操作系统。例如:Windows、OS/2、Linux、WinCE40操作系统进一步发展(续)动力:计算机网络的迅速发展。网络操作系统:网络接口控制器+一些用于驱动的软件+远程登录软件+远程文件访问软件。分布式操作系统:将应用程序分不在多台处理机上同时运行,合理的调度各处理机,使整个系统获得最大的并行度。嵌入式操作系统:专用操作系统。1.4操作系统的功能42操作系统的功能主要功能:有效管理系统资源,合理控制系统工作流程,方便用户适用。主要任务:管理处理机、存储器、I/O设备、数据文件以及程序接口。43接口功能接口:操作系统为用户提供的人机交互界面命令接口:以命令方式供用户通过键盘与计算机交互。包括:联机=键盘命令+解释程序和脱机=批处理,如:DOS命令行。程序接口:以系统调用的方式供用户编程时使用。每个系统调用通过子程序实现。图形用户接口(GUI):Windows操作系统。浪费资源、效率低。44处理机管理进程:“执行中的程序”或“程序的一次执行”进程控制:创建和撤销进程以及控制进程的状态转换。进程同步:对并发执行进程进行协调,互斥访问临界资源,协调进程执行进度。进程通信:进程间的信息交换。进程调度:按一定算法从就绪队列中选择进程,并分配处理机设置现场、运行。45存储器管理主要任务为多道程序的并发执行提供良好的环境便于用户适用存储器提高存储器利用率为尽量多的用户提供足够大的存储空间。46存储器管理的功能内存分配:保证多道程序并发执行的首要条件,静态分配/动态分配,连续分配/非连续分配。内存保护:系统内存、用户内存。地址映射:程序的逻辑地址到物理地址内存扩充:虚拟存储技术47设备管理 主要任务为用户程序分配I/O设备完成用户程序请求的I/O操作提高处理机和I/O设备的利用率改善人机界面48设备管理的功能缓冲:实现处理机与外设之间速度匹配缓冲管理:管理系统中各种类型的缓冲设备分配:按照用户请求和算法分配设备处理:启动I/O设备,响应设备中断虚拟设备:实现多用户共享同一设备RAID—冗余独立磁盘阵列,提高数据访问速度和稳定性,扩展空间。49文件管理---文件系统主要任务管理用户文件和系统文件管理文件的存储空间保障文件数据安排方便用户使用文件50文件管理功能文件目录管理:管理目录项文件的逻辑与访问方式:设置不同文件类型便于使用,如:堆、顺序、索引文件等。文件存储空间管理:磁盘文件检索,管理磁盘空间,提高利用率文件共享与安全:防止入侵和数据丢失(容错和数据备份技术)1.5现在操作系统特征及基本概念52现代操作系统特征任务共行性:宏观—系统中多个任务同时运行,微观—单处理机系统中任务并发(时间段)即多任务交替运行;多处理机系统中任务并行(时间点)即多任务在多处理机中同时运行。资源共享性:宏观—多任务同时使用资源;微观—多任务交替互斥使用某个资源。53现代操作系统特征(续)虚拟性:将一个物理上的实体变为(映射为)若干个逻辑上的对应物。如:采用分时技术,将一个处理机虚拟为多个,宏观上实现多任务同时运行。例如:虚拟存储、设备、通道、文件、用户、网络等。不确定性:1.程序执行结果不确定,程序不可再现。不允许2.多道程序环境下进程异步方式执行。允许54基本概念--Multiprogramming多道程序设计技术:系统允许多道程序同时准备运行,通过合理调度--中断或继续,以实现对处理机的充分利用,减少闲置时间。“道”:作业在内存中对应的进程数。Multiprogramming--是现代操作系统的关键技术也是其最重要的特征,是现代操作系统与早期操作系统重要区别。55多道程序设计技术的问题协调因争夺处理机或I/O设备而产生的冲突,解决同步、互斥和死错问题。防止各道程序之间的交叉和冲突,防止作业被有意无意破坏。必须建立高效、可靠和方便的文件系统,有效地管理和存取系统中的软件资源和辅存空间。56基本概念-ProcessandThread进程:程序的一次执行,包括可执行程序、程序所需的数据和相关状态信息。进程拥有资源的最小实体,传统OS中—系统调度的最小单位。线程:进程的进一步细化,程序一次相对独立的运行过程,现代操作系统中系统调度的最小单位。57基本单位-Job作业:用户要求计算机系统所作的工作集合。作业由程序、数据和作业说明书组成,系统通过作业说明书控制作业的执行。作业可以分解为若干步骤,其中的每一个独立操作称为作业步。批处理系统中,以作业为调度的执行单位58基本概念-Task任务:经典多任务操作系统中,任务与进程是等同的,是系统最小的工作单位。任务—系统资源分配角度描述程序的运行进程—从处理器利用和工作流程控制角度多道程序系统中,程序员—进程,工程师—任务,实质相同。59基本概念-Systemcall系统调用;操作系统提供的最基本的服务,供用户程序调用。系统调用只能在程序中作为程序语句使用,不能单独使用。60基本概念-Interface接口:用于描述系统硬件之间的连接关系,以及软件和程序模块间的调用关系,如:总线接口,打印机接口。界面:用于描述用户与系统之间的操作环境,以及人机之间的交互方式和过程,如:字符界面、图形用户界面。61基本概念-VirtualMemory虚拟存储:将一部分磁盘空间虚拟为逻辑内存的技术。虚拟内存空间=实际物理内存空间+逻辑内存空间支持虚拟存储技术的操作系统中,进程执行时不需要将其数据和程序代码一次性全部装入内存,当需要时再临时装入62基本概念-File文件:是相关数据的集合,有的操作系统将程序、数据以及各种外围设备统称为文件。如:DOS中—CON、PRN。概括而言,文件就是命名了的字节流(唯一性),是现代操作系统对计算机系统中种类繁多的外围设备进行高度抽象的结果。1.6操作系统分类64操作系统类型

单机操作系统并行按硬件平台结构嵌入式操作系统分布式多机操作系统网络机群批处理操作系统按使用环境和功能分时操作系统实时操作系统65批处理操作系统工作方式:首先,将用户作业在外存上排成队列;然后,有作业调度程序从队列中选取一个或多个作业进入内存,建立进程,使若干进程共享处理机、内存空间等系统资源,提高资源利用率和吞吐量。66批处理系统总结优点:多道程序有系统自动调度,降低人工干预对系统的影响、资源利用率高、系统吞吐量大。缺点:交互性差,修改调试程序困难。排队、等待等流程使得作业周转时间增加。67分时操作系统提供多用户环境,一台主机多个终端,每个终端供一个用户使用。各用户交互式提交命令,系统接受命令后采用分时原则处理,最后通过交互式终端显示执行结果。68分时操作系统特征多路性:一台主机+多个终端,资源共享独立性:每个用户通过各自终端输入输出交互性:按时间片轮流接受各用户命令,实现实时调试维护,交互性好。69实时操作系统定义:是指能及时响应外部事件请求,在规定时间内完成事件的处理,并控制所有实时任务协调一致的操作系统。“实时”:表示“及时”或“即时”。系统设计目标:及时响应外部请求,在严格规定的时间内完成处理,具有极高的可靠性和完整性(性能评估)。70网络操作系统计算机网络:是指利用通信线路将位于不同地点、不同类型的计算机连接起来,实现资源共享、相互通信、共同合作的系统。网络操作系统:在计算机网络中,提供网络管理、通信、安全、资源共享和各种网络应用的操作系统。目标:实现各计算机的通信、资源共享,提供网络利用率和吞吐量。71分布式操作系统分布式系统:多个处理机通过通信线路互连构成的系统,系统的处理和控制功能分布在各个处理机上。分布式操作系统:配置在分布式系统上的操作系统,负责系统中任务分配、资源管理等功能。72分布式系统与计算机网络分布式系统:所有资源共享,由操作系统进行集中、统一管理。系统对用户透明。命令执行也是完全由操作系统分配计算机网络:允许每台计算机配置自己的操作系统,通过网络协议实现网络资源的统一管理。网络操作系统可以架构于不同的操作系统之上,也不要求对网络资源透明访问,用户可以清楚的知道提交的任务是在哪台计算机上完成的,如:本地、异地。73嵌入式系统定义:是运行在嵌入式系统环境中,对整个嵌入式系统以及它所操作、控制的各种部件装置等资源进行协调、调度、和控制的系统软件。专用系统,适用于工业控制、军事及民用等方面。74知识回顾操作系统功能:进程管理、存储器管理、设备管理、文件管理现代操作系统特征:任务共行、资源共享、虚拟性、不确定性。基本概念:多道程序技术、进程与线程、作业、任务、接口、系统调用、虚拟存储、

温馨提示

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

评论

0/150

提交评论