深大《操作系统》Chapter1_第1页
深大《操作系统》Chapter1_第2页
深大《操作系统》Chapter1_第3页
深大《操作系统》Chapter1_第4页
深大《操作系统》Chapter1_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

操作系统Tel26732030Office:科技楼703普及型高性能计算机重点实验室/国家高性能计算中心深圳分中心2015/8/191课程背景专业必修课通过本课程的学习,使学生了解操作系统的工作原理,掌握常用操作系统的编程思想方法,学习系统设计和实现的策略,为其今后在相关领域开展工作打下坚实的基础。1)更好的理解程序的运行环境;2)为内核设计和编程做准备。2课程要求1出勤2作业(实验报告)3考试中文版教材:《计算机操作系统》西安电子科技大学出版社英文版教材:ModernOperatingSystems3rd3章节安排第1章:操作系统引论目标、角色作用、发展过程、基本特性、主要功能、设计思路第2章:进程管理基本概念、同步、通信第3章:处理机调度与死锁调度层次、调度队列模型和准则、调度算法、死锁第4章:存储管理连续内存、段页式管理、虚存及置换算法第5章:设备管理I/O控制方式、缓冲管理、设备分配、磁盘第6章:文件管理文件系统、文件逻辑结构、外存分配、目录管理、空闲空间管理第7章:Linux扩展学习4Chapter1操作系统引论OSOperatingSystem硬件之上的第一层软件、首次功能扩充汇编、编译、数据库等依赖于OS提供的服务OS/桌面系统/发行版三级相关概念61.1目标及作用1.1.1 目标共性:有效性管理资源提高利用率/吞吐率

方便性提供公共服务/抽象接口可扩充性适应硬件扩展和结构变化开放性标准化接口其他应用目标:实时性、可靠性、紧凑性771.1.2 角色、作用用户与硬件系统间的接口命令行模式、GUI桌面方式、编程接口资源管理者——cpu/mem/file/dev功能扩充、资源的抽象OSOSC、Fortran应用程序Shell等命令行程序图形桌面系统硬件用户系统调用881.1.3操作系统的发展动力9不断提高计算机资源的利用率方便用户器件的不断更新换代计算机体系结构的不断发展(单CPUOS,多CPUOS,网络OS)91.2 发展历程1.2.1 无操作系统1.2.2 单道批处理1.2.3 多道批处理1.2.4 分时系统1.2.5 实时系统1.2.6 微机OS历史1010一、人工操作方式11用户独占全机:一个用户独占所有计算机资源CPU等待人工操作:当用户进行装带、卸带操作时,CPU及内存等资源是空闲的效率低,操作不方便,操作人员必须有很专业的计算机知识中央处理机CPU(ALU,控制器)存储器输出设备输入设备外存(硬盘)1.2.1无操作系统11二、脱机输入输出方式12输入设备外围机磁盘/磁带计算机输出设备外围机磁盘/磁带相对人工操作方式:减少了CPU的空闲时间,提高了输入/出速度一个用户仍独占所有计算机资源12作业排队计算机运行结果输出需要监督程序(Monitor)多个作业顺序先后使用计算机(共享)计算机的控制权在监督程序与作业之间交替使用摆脱人工操作,特征:自动、单道、顺序1.2.2单道批处理13单道批处理系统(举例):14共需要时(10+20+20)+(20+20+30+30+10)+(20+30+30)=240SCPU利用率:(20+20+30+30)/240=41.7%输入设备利用率:(10+20+20)/240=20.8%输出设备利用率:(20+30+10+30)/240=37.5%三者之和为100%现有三道作业,第一道作业需要输入10S,运行20S,输出20S;第二道作业需要输入20S,运行20S,输出30S,然后再运行30,输出10S;第三道作业需要输入20S,运行30S,输出30S1415计算机中同时有几道作业(程序)在运行,提高了计算机资源(CPU、内存、I/O)的使用效率宏观上,多个作业“并行”(并发)。某一作业在输入、另一作业在CPU中运行、可能还有一个作业正在输出。增加了系统的吞吐量微观上,多个作业串行对一个具体资源(特别是CPU)来说,每个程序轮流使用1.2.3多道批处理15多道批处理系统(举例)16现有三道作业,第一道作业需要输入10S,运行20S,输出20S;第二道作业需要输入20S,运行20S,输出30S,然后再运行30,输出10S;第三道作业需要输入20S,运行30S,输出30S共需要时(10+20+20)+(30)+(30+10)=120S CPU利用率:(20+20+30+30)/120=83.4% 输入设备利用率:(10+20+20)/120=41.6% 输出设备利用率:(20+30+10+30)/120=75% 三者之和为200%16多道批处理系统

特征17多道性无序性调度性[处理机、内存、设备、文件如何管理]17多道批处理系统

优缺点:18计算机资源利用率高系统吞吐量大平均周转时间长无交互能力18OS里程碑处理机管理,交替使用问题内存管理,隔离、后备存储组织管理I/O管理,多道程序共享使用问题文件管理,程序代码和数据组织作业管理,调度算法问题1919定义:操作系统是一组控制和管理计算机硬件和软件资源、合理地对各类作业进行调度(有效性),以及方便用户使用(方便性)的程序的集合维基百科:操作系统(OperatingSystem,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。202021分时系统是为了满足用户需求(方便共享计算机)而发展起来的一种OS用户需求:1、人机交互(便于调试)2、共享主机(大、小型机)3、便于用户上机(多终端)实现方式——时间间隔调整1.2.4分时系统2122分时——时间片概念计算机内存中同时有多个用户程序每个用户程序运行一小段时间(时间片,如0.1秒),然后停止该程序运行,由系统再调用下一个用户程序运行每个用户程序在不长的时间内,都能执行一次22分时系统特性23多路性:系统中有多个用户程序同时运行独立性:每个用户(程序)独立操作,互不干扰及时性:用户的请求能在较短(秒级或以下)时间内获得响应(及时接收,及时处理)交互性:用户可以同系统进行人机对话分时系统的主要目的提高响应的及时性运行-阻塞23OS里程碑第一个分时系统CTSS,MIT开发多用户多任务MULTICS,简化后是UNIX前身形成现代操作系统框架242425实时系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行实时控制:工业生产的控制,信息采集的控制等(中断)实时信息处理:及时信息检索或处理1.2.5实时系统25实时任务RealtimeTask重复性周期性非周期性紧迫性硬实时软实时与分时系统类似多路性、独立性、及时性、交互性、可靠性262627单用户单任务操作系统:MS-DOS等单用户多任务操作系统:Windows等多用户多任务操作系统:LinuxOS等1.2.6微机操作系统发展27DOS是英文DiskOperatingSystem的缩写,意思是“磁盘操作系统”。DOS是个人计算机上的一类操作系统。从1981年直到1995年的15年间(v1.0~v7.5),DOS在IBMPC兼容机市场中占有举足轻重的地位。若是把部分以DOS为基础的MicrosoftWindows版本,如Windows95、98和Me等都算进去的话,那么其商业寿命至少可以算到2000年。微软的所有后续版本中,DOS仍然被保留。1980-1981年,西雅图电脑产品公司程序员蒂姆·帕特森(TimPaterson)花费了四个月时间编写出了86-DOS操作系统。1981年7月,微软以五万美元的代价向西雅图公司购得本产品的全部版权,并将它更名为MS-DOS。随后,IBM发布了第一台个人计算机,当时采用的操作系统是西雅图公司的86-DOS1.14,但微软很快改进了MS-DOS,并使它成功地成为IBMPC采用的操作系统。并于1981年8月12日,正式发布MS-DOS1.0和PC-DOS1.0。Microsoft开始开发基于WindowsNT构件的Windows,才成了真正独立的操作系统。后续新的DOS软件的整体水平的提高是很显著的。为了挑战Windows的界面,程序员们(经常是集体合作)开发了一个又一个仿Windows的界面增强程序,著名的有Seal,Qube,WinDOS等等。还有人开发出了内核为32位的DOS操作系统,如FreeDOS32,事实证明,这些程序的编写水平是很高的。这些软件都在不断地开发中,所取得的成绩是有目共睹的。而且它们最显著的特点就是自由开放的发展2828单用户单任务29293030单用户多任务1.02.03.031313T

5.0

就是Windows

2000;NT5.1就是Windows

XP34Windows

XP之前,Windows是分2条线路的, Windows

1.0/2.0/3.0/3.1/95/98/ME是家用的;

而另一条就是Windows

NT

1.0/2.0/4.0/2000,XP则是将家用和服务器用NT核心集成起来的第一作。

NT:New

Technoly(新技术,因比DOS、WIN9X采用了很多新技术而得名)

NT的系统有 2000

内核NT5.0

xp

内核NT5.1

win2003是NT5.2

vista

内核NT6.0

windows7的内核版本是NT6.1,但是是NT家族第七代产品,所以被命名为Windows

7

还有对应的服务器版本2000

2003等35UNIX,是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统,最早由KenThompson、DennisRitchie和DouglasMcIlroy于1969年在AT&T的贝尔实验室开发。1965年时,贝尔实验室(BellLabs)加入一项由通用电气(GeneralElectric)和麻省理工学院(MIT)合作的计划;该计划要建立一套多使用者、多任务、多层次(multi-user、multi-processor、multi-level)的MULTICS操作系统。直到1969年,因MULTICS计划的工作进度太慢,该计划被停了下来。当时,KenThompson(后被称为UNIX之父)已经有一个称为"星际旅行"的程序在GE-635的机器上跑,但是反应非常慢,正巧被他发现了一部被闲置的PDP-7(Digital的主机),KenThompson和DernisRitchie就将"星际旅行"的程序移植到PDP-7上。而这部PDP-7(如图1-1所示)就此在整个计算机历史上留下了芳名。多用户多任务363637/wiki/UNIX37Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。Linux是一个领先的操作系统,世界上运算最快的10台超级计算机运行的都是Linux操作系统。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。Linux操作系统的诞生、发展和成长过程始终依赖着五个重要支柱:UNIX操作系统、MINIX操作系统、GNU计划、POSIX标准和Internet网络。多用户多任务3838表1-1Linux发展历程年份事件199110月5日,LinusTorvalds在新闻组comp.os.minix发布了大约有一万行代码的Linux0.01版本19921月,大约有1000人在使用Linux系统1993大约有100余名程序人员参与了Linux内核代码的编写和修改工作,其中核心组由5人组成,此时Linux0.99的代码有大约有10万行,用户大约有10万左右19943月,Linux1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后正式采用GPL协议。至此,Linux的代码开发进入良性循环。很多系统管理员开始在自己的操作系统环境中尝试Linux,并将修改的代码提交给核心小组1995Linux系统可在Intel,Digital以及SunSPARC处理器上运行,用户量也超过了50万19966月,Linux2.0内核发布,此内核有大约40万行代码,并可以支持多个处理器。此时的Linux系统已经进入了实用阶段,全球大约有350万人使用1998Linux迅猛发展的一年。1月,RedHat高级研发实验室成立,同年RedHat5.0获得了InfoWorld的操作系统奖项。4月,Mozilla代码发布,成为Linux图形界面上的王牌浏览器。王牌搜索引擎Google现身,采用的也是Linux服务器。同年10月,Intel和Netscape宣布小额投资RedHat软件,这被业界视作Linux获得商业认同的信号1999IBM宣布与RedHat公司建立伙伴关系,以确保RedHat能在IBM机器上正确运行。IBM,Compaq和Novell宣布投资RedHat公司,以前一直对Linux持否定态度的Oracle公司也宣布投资20002月,RedHat发布了嵌入式Linux的开发环境,Linux在嵌入式行业的潜力逐渐被发掘出来。同年7月,中科院与新华科技合作发展红旗Linux,此举让更多的国内个人用户知道了Linux操作系统的存在20018月,红色代码病毒爆发,引得许多站点纷纷从使用Windows操作系统转向使用Linux操作系统,这是一次Linux的大规模应用普及。12月,RedHat为IBMs/390大型计算机提供了Linux解决方案,从此结束了AIX孤单独行无人伴的历史20031月,NEC宣布将在其手机中使用Linux操作系统,代表着Linux成功进军手机领域。9月,中科红旗发布RedFlagServer4版本,性能改进很多。11月,IBM注资Novell,以2.1亿美元收购SuSE20041月,SuSE被Novell收购,Asianux,MandrakeSoft也在5年中首次宣布季度盈利。4月,美国斯坦福大学Linux大型机系统被黑客攻陷,再次证明了没有绝对安全的操作系统。6月,统计报告显示在世界500强超级计算机系统中,使用Linux操作系统的已经占到了280家,抢占了原本属于各种UNIX的份额39391.3 基本特征无论批处理、分时、实时系统,其共性有1.3.1 并发性1.3.2 共享性1.3.3 虚拟性1.3.4 异步性404041并发性:多道用户程序可在同一时间间隔中运行并行性parallelism=并发性Concurrent∩同时性Simultanious并发实体:用户代码:多进程、多线程内核代码:系统调用、中断代码1.3.1 并发性414243共享性:系统资源可供内存中多个并发的进程共同使用包括:互斥共享和同时访问1.3.2 共享性4344虚拟性:系统物理资源可虚拟为更大、更多的逻辑资源时分复用:虚拟处理机、虚拟设备空分复用:虚拟磁盘、虚拟存储器1.3.3 虚拟性4445异步性:内存中多个并发的进程以异步方式运行相互间没有统一的同步节拍控制——不可预知,不能以预想的方式先后完成。1.3.4 异步性451.4 操作系统主要功能无论批处理、分时、实时系统,其共性有1.4.1 处理机管理1.4.2 存储器管理1.4.3 设备管理1.4.4 文件管理中央处理机CPU(ALU,控制器)存储器输出设备输入设备外存(硬盘)4646471.4.1 处理机管理进程控制/进程同步/进程通信/进程调度1、进程控制创建:分配资源运行:进程状态转换撤消:回收资源2、进程同步进程互斥:临界资源占用进程同步:多进程按顺序协调完成同一任务47483、进程通信进程间进行信息交换,如输入进程将数据送给计算进程,计算进程将结果送给打印进程4、进程调度对进程队列中的进程进行调度,将CPU的使用权分配给指定进程含作业调度、进程调度48491、内存分配:为每个用户程序分配内存空间2、内存保护:用户程序只能访问自已程序的内存空间,不能越界(到其它用户程序或系统程序空间)3、地址映射:将目标程序的地址映射成内存的“物理地址”1.4.2 存储器管理4、内存扩充(虚拟存储器)采用虚拟存储技术从逻辑上扩充内存空间,使大于实际内存空间的程序同样可以得以运行虚拟存储技术主要采用请求调入和置换功能实现内存扩充目标49501、缓冲管理:为设备分配缓冲区并进行管理2、设备分配:为用户I/O请求分配相应的设备3、设备处理:实现CPU和设备控制器之间的通信1.4.3 设备管理50511、文件存储空间管理设置相应的数据存储结构(磁道、扇区等)对存储空间进行分配和回收2、目录管理对每个存在外存上的文件建立一个目录项,主要包括文件名、属性、在磁盘上的位置等信息形成树形结构1.4.4 文件管理51523、文件的读、写管理和保护从外存上读、写文件数据保证文件的合法使用52用户接口531、命令(用户)接口:通过命令字,用户可以直接调用操作系统完成相应功能,如dir

温馨提示

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

评论

0/150

提交评论