清华大学操作系统讲义第01讲_概述课件

上传人:我*** 文档编号:143549162 上传时间:2020-08-31 格式:PPT 页数:62 大小:420.50KB
返回 下载 相关 举报
清华大学操作系统讲义第01讲_概述课件_第1页
第1页 / 共62页
清华大学操作系统讲义第01讲_概述课件_第2页
第2页 / 共62页
清华大学操作系统讲义第01讲_概述课件_第3页
第3页 / 共62页
清华大学操作系统讲义第01讲_概述课件_第4页
第4页 / 共62页
清华大学操作系统讲义第01讲_概述课件_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《清华大学操作系统讲义第01讲_概述课件》由会员分享,可在线阅读,更多相关《清华大学操作系统讲义第01讲_概述课件(62页珍藏版)》请在金锄头文库上搜索。

1、操作系统与系统编程,谌 卫 军,清华大学软件学院,Operating Systems and System Programming,2004年春季,为何要学操作系统?,BOOL g_bEndFlag = TRUE; /* 优先级低,70 */ void testTaskA( ) while(g_bEndFlag) 等待信号量; g_bEndFlag = FALSE; return; ,/*优先级高,50*/ void testTaskB( ) int nRecvLen; while(g_bEndFlag) nRecvLen = recv(sockId.); if(nRecvLen = 0) 打

2、印出错信息; 释放信号量; return; ,教学安排, 教学目标,熟悉操作系统的基本原理和主要构件; 通过编程练习来加深对操作系统基本 概念的理解; 了解一些典型的操作系统实例。,教学安排, 教材,Andrew S. Tanenbaum, Modern Operating System(英文版,第2版,机械工业出版社), 参考书,Abrahan Silberschatz, etc,Operating System Concept (6th edition) William Stallings, Operating Systems,教学安排, 参考书(续),Daniel P. Bovet, M

3、arco Cesati, Understanding the Linux Kernel (2nd Edition) 毛得操、胡希明,Linux内核源代码情景分析, 浙江大学出版社 David A.Solomon, Mark E.Russinovich, Inside Microsoft Windows 2000 (3rd Edition),教学安排, 联系方式,办公室:软件学院教学楼211房间 电话:62795435 手机:13661094628 Email:或 Ftp:166.111.102.2,os/student,教学安排, 助教的联系方式,姓名:吴邦欲(软件理论与系统研究所) 办公室:

4、软件学院教学楼117房间 电话:62795400124 Email: 上机辅导:每周五下午1:304:30,第一章 概述,操作系统的概念 操作系统的发展历史 操作系统的类型 操作系统的硬件环境 操作系统的功能,1.1 操作系统的概念,小例子:如何在计算机上看影碟?,买一台计算机! 安装操作系统 (Windows XP) 安装影碟播放软件 (超级解霸); 把影碟装入光驱; 运行影碟播放软件; 播放影碟。,$,联想,$,微软,$,豪杰,硬件,操作系统,联想,IBM,DELL,惠普,微软,编译器,超级解霸,豪杰,微软,操作系统的地位:紧贴计算机硬件之上,所有其他软件之下(是其他软件的共同环境),各种

5、应用程序,操作系统是计算机系统中的一个系统软件, 是一些程序模块的集合,它们能以尽量有效、合理的方式管理和分配计算机的软硬件资源,合理的组织计算机的工作流程,控制程序的执行并向用户提供各种服务功能,使得用户能够灵活、方便、有效的使用计算机,使整个计算机系统能高效地运行。,操作系统的定义,有效:系统效率,资源利用率 (如:CPU利用的充足与否,内存、硬盘的访问效能、浪费的空间),合理:公平与否,如果不公平则会产生“死 锁”或“饥饿”。,方便:两层含义 友好的用户界面:DOS - Windows; 方便的编程接口, 中断调用 - API - MFC。,1.2 操作系统的发展历史,硬件非常昂贵,没有

6、操作系统,编程语言:机器语言; 输入输出:纸带或卡片; 用户在控制台前调试程序,独占全机。用户既是程序员,又是操作员,手工操作; 一次完成一个功能(计算,I/O,用户思考/反应),之间没有重叠。,问题:手工操作的低效率造成CPU资源的浪费。,程序员把作业(卡片或磁带)提交给负责调度的操作员(系统管理员); 操作员把作业“成批”地输入到计算机; 常驻内存的批处理管理程序自动地识别、装入一个作业,并运行之,然后再取下一个作业。,串行地执行作业,因而称为是“单道批处理”。,硬件昂贵,人力便宜,50年代末60年代中:批处理管理程序,为了提高计算机的使用效率,减少手工操作!,程序的调试比较困难; 由于慢

7、速的输入输出处理仍然直接由主机来完成,使得CPU和I/O设备使用忙闲不均:对计算为主的作业,外设空闲;对I/O为主的作业,CPU空闲。,单道批处理的问题:,通道和中断技术,通道:用于控制I/O设备与内存间的数据传输,有专用的I/O处理器,启动后可独立于CPU运行,实现CPU与I/O的并行工作。 中断是指CPU在收到外部中断信号后,停止原来工作,转去处理该中断事件,在完成后回到原来断点继续工作。,60年代初,发展了通道技术和中断技术,这些技术的出现使得I/O访问与CPU计算可以重叠进行。,60年代中70年代中:多道批处理系统,(现代意义上的操作系统的出现),特征: 多道:内存中同时存放多个作业,

8、由CPU以切换方式为之服务。在当前运行的作业需作I/O处理时,CPU转而执行另一个作业; 宏观上并行运行:都处于运行状态,但都未运行完; 微观上串行运行:各作业交替使用CPU和I/O设备,CPU,I/O,单道批处理:,多道批处理:,CPU,I/O,作业甲(红黄),作业乙(白绿),需要解决的问题: 内存管理,系统必须给多个作业分配内存; 内存保护,避免一个程序中的bug造成整个系统崩溃,或者是破坏了其他程序的执行; CPU调度,系统必须在多个作业中不断地进行切换,选择其中的一个去使用CPU; 系统必须去管理各个并行运行的作业之间的交互关系;,如何构造一个多道批处理系统?,系统非常复杂; 完全用汇

9、编语言编写; IBM的OS/360,第一个为一系列计算机设计的操作系统,从最小的机器到最大的机器。1963年提出,1968年开始工作。发布时,带着已知的 1000 个bugs; 引发了研究兴趣,OS最终成为一门重要的学科,难不难? 难!,缺点:只是解决了CPU与I/O设备之间的并行运行 问题,没有解决用户的响应时间要求。,计算机比较贵,只有一台; 终端比较便宜,人手一台; 所有用户可与系统立即交互,调试比较方便;,硬件较以前便宜,人力昂贵,70年代中至今:分时系统,多个用户通过各自的终端分享地使用同一台计算机。,交互式分时:,一些分时操作系统,CTSS:,由MIT开发; 最早的分时系统之一;

10、在调度方面进行了一些开拓性的工作;,MULTICS:,1963年,由MIT、贝尔实验室和GE联合开发; 设计目标是“公用计算服务系统”,大量用户 终端通过电话线接入计算机主机; 系统庞大而复杂,研制难度超出了所有人预料, 贝尔实验室和GE先后退出。于1969投入使用; 引入了许多现代操作系统领域概念雏形,对 随后操作系统的发展有着巨大的影响。,MULTiplexed Information and Computing Service,一些分时操作系统(续),UNIX:,1969年,贝尔实验室的Ken Thompson在MULTICS上编写了一个叫“太空旅行”(Space Travel)的游戏,

11、模拟一个飞行员驾驶一艘宇宙飞船在太阳系当中遨游,并且可以在各种星体上着陆。后来他们对MULTICS的访问被关闭了,因此Thompson在贝尔实验室找了一台无人使用的PDP-7计算机,然后和Dennis Ritchie在一台GE-635计算机上,利用其GECOS所提供的一个交叉汇编器,把空间旅行游戏用PDP-7汇编语言重新编写,然后用穿孔纸带把它转移到PDP-7上;,后来,Thompson和Ritchie等人开始为PDP-7编写一个新的操作系统。在写好了文件系统和一组基本的软件工具以后,他们编写了一个PDP-7的汇编器,这样他们就能够直接在PDP-7上编程了。到了1970年,操作系统的基本元素都

12、已经完成了,他们给系统起了一个名字UNIX (UNICS:UNiplexed Information and Computing Service); 1970年夏,研究小组得到了一台新机器PDP-11,因此把Unix系统从PDP-7移植到PDP-11,这项工作非常繁琐,因为整个系统都是用汇编语言来编写的。研究小组开始考虑用高级语言来重写整个系统,以提高系统的可移植性和可懂性; 于是Thompson发明了B语言,但这种语言过于简单,数据无类型。1972年,Ritchie发明了著名的C语言,因此两人把整个系统用C语言重写了。 由于两人的杰出工作,1984年他们获得了ACM图灵奖。,Unix是用高级

13、语言编写的,能够在不同的硬件 平台之间移植,是一种能够在笔记本电脑、PC 机、工作站甚至是巨型机上运行的操作系统; Unix是现代操作系统的代表,Unix运行时的安全 性、可靠性以及强大的计算能力赢得了广大用户 的信赖,已经成为一种不断发展的、商业化的操 作系统; Unix获得了广泛的发展:Berkeley大学的BSD系 统(Berkeley Software Distribution)、Tanenbaum 的MINIX系统、Linus Torvalds的Linux系统、 IBM的AIX系统、Sun的Solaris系统等等。,计算机非常便宜,可以人手一台,Apple II、IBM PC等; 1

14、974年Intel 推出8080芯片,请Gary Kildall设计了CP/M操作系统第一个个人计算机操作系统。Gary由此成立Digital Research公司; 1980年,IBM需要为他们的PC机安装操作系统,但Gary居然未予重视,机遇落在了微软身上,微软收购了西雅图计算机产品公司 DOS操作系统,创建了MS-DOS; 商业应用推动了软件工业:字处理器、制表软件、数据库。市场划分为三层:硬件、操作系统和应用软件。,硬件很便宜,人力依然昂贵,规模庞大:数以千万行的代码,Windows NT是2千万行,Windows 2000约4千万行; 极为复杂:功能繁杂、相互关联;用户行为难以预测;

15、性能非常重要;必须运行在各种硬件平台上,必须兼容以前的软件; 互联时代:网络连接你我他,信息共享,基于网络的应用(WWW、Email、新闻组)。,今天的操作系统,1.3 操作系统的类型,批处理操作系统(多道批处理),分时操作系统,实时操作系统 嵌入式操作系统,个人计算机操作系统,网络操作系统,分布式操作系统,实时操作系统,实时操作系统是指使计算机能及时响应外部事件的 请求,在规定的严格时间内完成对该事件的处理, 并控制所有实时设备和实时任务协调一致地工作的 操作系统。,主要特征: 实时性:对外部请求在严格时间范围内作出反应; 可靠性:要求高度可靠。,分两类:实时过程控制,用于工业控制、军事控制

16、;实时通信处理,用于电信、银行、飞机定票等领域。,嵌入式操作系统,嵌入式操作系统就是运行在嵌入式智能芯片环境中, 对整个智能芯片以及它所操作、控制的各种部件装 置等资源进行统一协调、调度、指挥和控制的系统 软件。 它们是一个设备、装置或系统(即嵌入式系统)中的一部分,嵌入式系统可以不是“计算机”。小到手机的通信控制,大到国家范围内的电力监控网。 典型例子: Wind River(风河)的VxWorksMicrosoft的Windows CE,个人计算机操作系统,针对单用户使用的个人计算机进行优化的操作系统,是一种单用户多任务的操作系统。,主要特征: 供个人使用,功能强; 用户界面友好,使用方便; 有丰富的应用软件:事务处理、学习、娱乐等; 要求支持多种硬件和外部设备(多媒体设备、网 络、远程通信)。,DOS系列,Windows系列,Linux系列等等,网络操作系统,网络操作系统是基于计算机网络的、在通常

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号