《清华大学电子工程系马洪兵62773434hbma@tsinghuaeducn.ppt》由会员分享,可在线阅读,更多相关《清华大学电子工程系马洪兵62773434hbma@tsinghuaeducn.ppt(60页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、清华大学电子工程系清华大学电子工程系马洪兵马洪兵Windows操作系统原理与应用操作系统原理与应用1操作系统课程的定位操作系统课程的定位 操操作作系系统统是是一一门门涉涉及及较较多多硬硬件件知知识识的的计计算算机机系系统统软软件件课课程程,在在计计算算机机软软、硬硬件件课课程程的的设设置置上上,起起着着承上启下的作用。承上启下的作用。本本课课程程的的目目的的与与任任务务是是使使学学生生通通过过本本课课程程的的学学习习,理理解解操操作作系系统统的的基基本本原原理理、组组成成、基基本本概概念念和和主主要要功能。功能。教学目标教学目标2教学模式教学模式目前国内外操作系统课程的教学主要有两种模式:目前
2、国内外操作系统课程的教学主要有两种模式:1.侧重理论与原理的讲述,不局限于具体具体实例侧重理论与原理的讲述,不局限于具体具体实例2.结合具体实例,讲述操作系统的实现技术结合具体实例,讲述操作系统的实现技术教学目标教学目标3Windows操作系统原理与应用操作系统原理与应用课的教学任务课的教学任务 对电子信息类专业,操作系统教学要兼顾原理和对电子信息类专业,操作系统教学要兼顾原理和应用,一方面要让学生掌握操作系统的基本功能和一应用,一方面要让学生掌握操作系统的基本功能和一般性原理,另一方面要了解一般性原理在具体操作系般性原理,另一方面要了解一般性原理在具体操作系统中实现方法,但不必深入到源代码的
3、层次统中实现方法,但不必深入到源代码的层次。考虑到考虑到Windows是当今微型计算机的主流操作系是当今微型计算机的主流操作系统,使学生了解统,使学生了解Windows的组织和运行的基本原理是的组织和运行的基本原理是十分必要的。十分必要的。因而,本课程的教学任务是在讲述操作系统基本因而,本课程的教学任务是在讲述操作系统基本原理的基础上,重点介绍原理的基础上,重点介绍Windows的运行机制和内核的运行机制和内核技术,为学生今后开发应用系统打下基础。技术,为学生今后开发应用系统打下基础。教学目标教学目标4WindowsWindows操作系统原理操作系统原理尤晋元等尤晋元等 机械工业出版社机械工业
4、出版社WindowsWindows内核实验教程内核实验教程陈向群等陈向群等 机械工业出版社机械工业出版社 操作系统操作系统内核与设计原理内核与设计原理William StallingsWilliam Stallings,(Operating System:Internals and Design Principles)(Operating System:Internals and Design Principles)中文版:电子工业出版社中文版:电子工业出版社 英文版:清华大学出版社英文版:清华大学出版社 现代操作系统现代操作系统 Andrew S.Andrew S.TanenbaumTane
5、nbaum,(Modern (Modern Operating SystemOperating System)中文版中文版:机械工业出版社机械工业出版社 操作系统:设计与实现操作系统:设计与实现Andrew S.Andrew S.TanenbaumTanenbaum (Operating System:Design and Implementation)(Operating System:Design and Implementation)中文版:电子工业出版社中文版:电子工业出版社 英文版:清华大学出版社英文版:清华大学出版社教材与参考书教材与参考书5第一章第一章 操作系统概述操作系统概述
6、第二章第二章 Windows操作系统的体系结构操作系统的体系结构第三章第三章 处理机管理处理机管理第四章第四章 存储管理存储管理第五章第五章 文件管理文件管理第六章第六章 设备管理设备管理第七章第七章 计算机网络管理计算机网络管理课程主要内容介绍课程主要内容介绍61.线程同步线程同步2.磁盘磁盘I/O3.网络通信网络通信4.设备驱动程序设计设备驱动程序设计实验安排实验安排考核方式考核方式实验(实验(60%)+学期论文学期论文/大作业(大作业(40%)7第一章第一章 操作系统概述操作系统概述一、计算机系统概述一、计算机系统概述二、操作系统的基本概念二、操作系统的基本概念三、操作系统的主要功能三、
7、操作系统的主要功能四、操作系统的发展历史四、操作系统的发展历史五、五、Windows操作系统的发展历程操作系统的发展历程8一、计算机系统概述一、计算机系统概述计算机系统的层次结构计算机系统的层次结构计算机硬件是根据电、磁、计算机硬件是根据电、磁、光、机械等原理构成的各种光、机械等原理构成的各种物理设备的有机组合,是系物理设备的有机组合,是系统赖以工作的实体。统赖以工作的实体。软件是计算机系统中程序和软件是计算机系统中程序和有关文件的集合。程序是计有关文件的集合。程序是计算任务的处理对象和处理规算任务的处理对象和处理规则的描述;文件是开发、使则的描述;文件是开发、使用和维护程序所需的资料数用和维
8、护程序所需的资料数据。据。9计算机软件计算机软件系统软件系统软件:居于计算机系统中最靠近硬件的一层,其他:居于计算机系统中最靠近硬件的一层,其他软件一般都通过系统软件发挥作用,与具体的应用领域软件一般都通过系统软件发挥作用,与具体的应用领域无关。无关。操作系统是最重要的系统软件。操作系统是最重要的系统软件。支撑软件支撑软件:支援其他软件的编制和维护的软件,主要包:支援其他软件的编制和维护的软件,主要包括环境数据库、各种接口软件和工具软件。括环境数据库、各种接口软件和工具软件。应用软件应用软件:特定应用领:特定应用领域专用的软件。域专用的软件。10二、操作系统的基本概念二、操作系统的基本概念1.
9、操作系统的定义操作系统的定义操作系统是计算机系统中的一个系统软件,它是这操作系统是计算机系统中的一个系统软件,它是这样一些程序模块的集合:样一些程序模块的集合:它们能它们能有效有效地组织和管理计算机的软硬件资源,地组织和管理计算机的软硬件资源,合理合理地组织计算机的工作流程,控制程序的执行并地组织计算机的工作流程,控制程序的执行并向用户提供各种服务功能,使得用户能够灵活、向用户提供各种服务功能,使得用户能够灵活、方方便便、有效地使用计算机,使整个计算机系统能高效、有效地使用计算机,使整个计算机系统能高效的运行。的运行。11有效有效:系统效率系统效率 (如如CPUCPU用的充足与否)用的充足与否
10、)资源利用率资源利用率(如内存,外部设备是否忙碌)(如内存,外部设备是否忙碌)合理合理:公平与否,如果不公平则会产生公平与否,如果不公平则会产生“死锁死锁”或或“饥饿饥饿”方便方便:针对应用程序程序员和用户针对应用程序程序员和用户1.操作系统的定义操作系统的定义12 2.操作系统的地位操作系统的地位操作系统在硬件基础上的第一层软件操作系统在硬件基础上的第一层软件,是其它软件是其它软件和硬件的接口和硬件的接口133.操作系统的特征操作系统的特征并发性:并发性:在计算机系统中同时存在多个程序,从宏观上看这些程在计算机系统中同时存在多个程序,从宏观上看这些程序是同时在执行的。序是同时在执行的。从微观
11、上讲,在单从微观上讲,在单CPUCPU环境下,任何时刻只有一个程序环境下,任何时刻只有一个程序在执行,这些并行执行的程序在在执行,这些并行执行的程序在CPUCPU上轮流执行。上轮流执行。14共享性共享性操作系统与多个用户的程序共同使用计算机上的资源操作系统与多个用户的程序共同使用计算机上的资源3.操作系统的特征操作系统的特征随机性随机性操作系统必须随时对以不可预测的次序发生的事件进行操作系统必须随时对以不可预测的次序发生的事件进行响应响应 考虑周密、设计适当考虑周密、设计适当15系统命令(命令行、菜单式、命令脚本式、图形用户系统命令(命令行、菜单式、命令脚本式、图形用户接口接口GUIGUI);
12、);系统调用(形式上类似于过程调用,在应用编程中使系统调用(形式上类似于过程调用,在应用编程中使用)。用)。OS是用户使用系统硬件、软件的接口是用户使用系统硬件、软件的接口4.操作系统的作用操作系统的作用在裸机上添加:设备管理、文件管理、存储管理(针在裸机上添加:设备管理、文件管理、存储管理(针对内存和外存)、处理机管理(针对对内存和外存)、处理机管理(针对CPUCPU););另外,为合理组织工作流程:作业管理、进程管理。另外,为合理组织工作流程:作业管理、进程管理。164.操作系统的作用操作系统的作用OSOS是计算机硬件、软件资源的管理者是计算机硬件、软件资源的管理者管理对象包括:管理对象包
13、括:CPUCPU、存储器、外部设备、信息(数据存储器、外部设备、信息(数据和软件);和软件);管理的内容:资源的当前状态(数量和使用情况)、管理的内容:资源的当前状态(数量和使用情况)、资源的分配、回收和访问操作,相应管理策略(包括资源的分配、回收和访问操作,相应管理策略(包括用户权限)。用户权限)。17三、操作系统的主要功能三、操作系统的主要功能处理机管理处理机管理存储管理存储管理文件管理文件管理设备管理设备管理作业管理作业管理传统的操作系统教科书对操作系统功传统的操作系统教科书对操作系统功能的描述能的描述18处理机管理处理机管理此处的此处的处理机处理机就是通常所说的就是通常所说的处理器处理
14、器或或CPU。CPU是计算机系统中最宝贵的硬件资源,操作系统最重要是计算机系统中最宝贵的硬件资源,操作系统最重要的服务就是提高的服务就是提高CPU的利用率。的利用率。为了提高为了提高CPU的利用率的利用率,现代操作系统大都采用多道程序,现代操作系统大都采用多道程序技术。如果一个程序因等待某一条件而不能运行下去时,技术。如果一个程序因等待某一条件而不能运行下去时,就把处理器占用权转交给另一个可运行程序。或者,当出就把处理器占用权转交给另一个可运行程序。或者,当出现了一个比当前运行的程序更重要的可运行的程序时,后现了一个比当前运行的程序更重要的可运行的程序时,后者应能抢占者应能抢占CPU。为了描述
15、多道程序的并发执行,引入了。为了描述多道程序的并发执行,引入了进程进程的概念。所以处理机管理通常也称为的概念。所以处理机管理通常也称为进程管理进程管理。通过进程管理协调多道程序之间的关系,解决对处理器分通过进程管理协调多道程序之间的关系,解决对处理器分配调度策略、分配实施和回收等问题,以使配调度策略、分配实施和回收等问题,以使CPU资源得到资源得到最充分的利用。最充分的利用。19存储管理存储管理存储管理主要管理内存资源。存储管理主要管理内存资源。当多个程序共享有限的内存资源时,会有一些问题需要解当多个程序共享有限的内存资源时,会有一些问题需要解决,例如,如何为它们分配内存空间,同时,使用户存放
16、决,例如,如何为它们分配内存空间,同时,使用户存放在内存中的程序和数据彼此隔离、互不侵扰,又能保证在在内存中的程序和数据彼此隔离、互不侵扰,又能保证在一定条件下共享等等问题,都是存储管理的范围。一定条件下共享等等问题,都是存储管理的范围。当内存不够用时,存储管理必须解决内存的扩充问题,即当内存不够用时,存储管理必须解决内存的扩充问题,即将内存和外存结合起来管理,为用户提供一个容量比实际将内存和外存结合起来管理,为用户提供一个容量比实际内存大得多的虚拟存储器。内存大得多的虚拟存储器。存储功能与硬件存储器的组织结构密切相关。存储功能与硬件存储器的组织结构密切相关。20文件管理文件管理系统中的信息资
17、源(如程序和数据)是以文件的形式存系统中的信息资源(如程序和数据)是以文件的形式存放在外存储器(如磁盘、光盘和磁带)上的,需要时再放在外存储器(如磁盘、光盘和磁带)上的,需要时再把它们装入内存。把它们装入内存。文件管理的任务是有效地支持文件的存储、检索和修改文件管理的任务是有效地支持文件的存储、检索和修改等操作,解决文件的共享、保密和保护问题,以使用户等操作,解决文件的共享、保密和保护问题,以使用户方便、安全地访问文件。操作系统一般都提供很强的文方便、安全地访问文件。操作系统一般都提供很强的文件系统。件系统。21设备管理设备管理设备管理是指对计算机系统中的所有输入、输出设设备管理是指对计算机系
18、统中的所有输入、输出设备(外部设备)的管理。备(外部设备)的管理。设备管理的主要任务是根据一定的分配策略,把输设备管理的主要任务是根据一定的分配策略,把输入输出设备分配给请求输入输出操作的进程,并负入输出设备分配给请求输入输出操作的进程,并负责启动设备完成实际的输入输出操作。责启动设备完成实际的输入输出操作。为了发挥设备和处理器的并行工作能力,设备管理为了发挥设备和处理器的并行工作能力,设备管理广泛采用虚拟技术和缓冲技术。广泛采用虚拟技术和缓冲技术。22作业管理作业管理即用户接口。即用户接口。作业管理的任务是为用户提供一个使用系统的良好环作业管理的任务是为用户提供一个使用系统的良好环境,使用户
19、能有效地组织自己的工作流程,并使整个境,使用户能有效地组织自己的工作流程,并使整个系统能高效地运行。系统能高效地运行。23四、操作系统的发展历史四、操作系统的发展历史操作系统发展是随着计算机硬件技术的发展而发展的操作系统发展是随着计算机硬件技术的发展而发展的目标:充分利用硬件目标:充分利用硬件操作系统历史划分为操作系统历史划分为4 4个阶段个阶段24第第1 1阶段:电子管时代阶段:电子管时代(1946(1946年年-1955-1955年年)没有程序设计语言(甚至没有没有程序设计语言(甚至没有汇编),更谈不上操作系统汇编),更谈不上操作系统程序员提前预约一段时间程序员提前预约一段时间,然后然后到
20、机房将他的插件板插到计到机房将他的插件板插到计算机里算机里期盼着在接下来的时间中期盼着在接下来的时间中几万个真空管不会烧断几万个真空管不会烧断从而可以计算自己的题目从而可以计算自己的题目ENIAC计算机运算速度:运算速度:10001000次次/每秒每秒,数万个真空管数万个真空管,占地占地100100平方米平方米255050年代早期年代早期出现了穿孔卡片出现了穿孔卡片程序写在卡片上然后读入计算机程序写在卡片上然后读入计算机但计算过程则依然如旧但计算过程则依然如旧第第1 1阶段:电子管时代阶段:电子管时代(1946(1946年年-1955-1955年年)26工作效率非常低工作效率非常低每一用户都要
21、自行编写涉及到硬件的源代码每一用户都要自行编写涉及到硬件的源代码工作量大,难度高,易出错,需要大量人力和物力工作量大,难度高,易出错,需要大量人力和物力第第1 1阶段:电子管时代阶段:电子管时代(1946(1946年年-1955-1955年年)275050年代晶体管发明年代晶体管发明计算机比较可靠,可成批地生产,用户可指望计算机长时间计算机比较可靠,可成批地生产,用户可指望计算机长时间运行,完成一些工作运行,完成一些工作程序设计语言诞生:程序设计语言诞生:FORTRAN 1954FORTRAN 1954年提出,年提出,19561956年设计完成年设计完成ALGOL 1958ALGOL 1958
22、年引入年引入COBOL 1959COBOL 1959年引入年引入设计人员、生产人员、操作人员、程序人员和维护人员之间设计人员、生产人员、操作人员、程序人员和维护人员之间 第一次有了明确的分工第一次有了明确的分工第第2 2阶段阶段 晶体管时代(晶体管时代(19551955年年-1965-1965年)年)28要运行一个作业,先将程序写在纸上(用高级语言或汇编语言)要运行一个作业,先将程序写在纸上(用高级语言或汇编语言)然后穿孔成卡片,再将卡片盒交给操作员然后穿孔成卡片,再将卡片盒交给操作员计算结果从打印机上输出计算结果从打印机上输出操作员到打印机上撕下运算结果送到输出室操作员到打印机上撕下运算结果
23、送到输出室程序员稍后可从取到结果程序员稍后可从取到结果然后,操作员从输入室的卡片盒中读入另一个任务然后,操作员从输入室的卡片盒中读入另一个任务如果需要如果需要FORTRANFORTRAN编译器,还要把它取来读入计算机编译器,还要把它取来读入计算机机时在走来走去时被浪费机时在走来走去时被浪费第第2 2阶段阶段 晶体管时代(晶体管时代(19551955年年-1965-1965年)年)29作业卡片是现代作业控制语言和命令解释器的先驱作业卡片是现代作业控制语言和命令解释器的先驱第第2 2阶段阶段 晶体管时代(晶体管时代(19551955年年-1965-1965年)年)30批处理操作系统批处理操作系统
24、-现代操作系统雏型现代操作系统雏型为了改进主存和为了改进主存和I/OI/O设备之间的设备之间的吞吐量,吞吐量,IBM 7094IBM 7094机引入了机引入了I/O I/O 处理机概念处理机概念其思想是:在输入室收集全部的其思想是:在输入室收集全部的作业,用一台相对便宜的计算作业,用一台相对便宜的计算机如机如IBM 1401IBM 1401计算机,将它们计算机,将它们读到磁带上,另外用较昂贵的读到磁带上,另外用较昂贵的计算机,如计算机,如IBM7094IBM7094来完成真来完成真正的计算正的计算第第2 2阶段阶段 晶体管时代(晶体管时代(19551955年年-1965-1965年)年)31第
25、二代计算机典型的操作系统第二代计算机典型的操作系统FMSFMS(FORTRAN Monitor SystemFORTRAN Monitor System,FORTRANFORTRAN监控系统)监控系统)IBMSYSIBMSYS(IBMIBM为为70947094机配备的操作系统)机配备的操作系统)这些操作系统由监控程序,特权指令,存储保护和简单的批这些操作系统由监控程序,特权指令,存储保护和简单的批处理构成处理构成第第2 2阶段阶段 晶体管时代(晶体管时代(19551955年年-1965-1965年)年)32多道程序设计技术多道程序设计技术(multiprogrammingmultiprogra
26、mming)在在IBM 7094IBM 7094机上,若当前作业因等待机上,若当前作业因等待I/OI/O而暂停,而暂停,CUPCUP只能踏步直至该只能踏步直至该I/OI/O完成完成 对于对于CPUCPU操作密集科学计算问题,浪费时间少操作密集科学计算问题,浪费时间少 对于商业数据处理,对于商业数据处理,I/OI/O等待时间常占等待时间常占80809090解决办法解决办法 将内存分几个部分,每部分放不同的作业将内存分几个部分,每部分放不同的作业 当一个作业等待当一个作业等待I/OI/O时,另一个作业可以使用时,另一个作业可以使用CPUCPU 在主存中同时驻留多个作业需要硬件进行保护在主存中同时驻
27、留多个作业需要硬件进行保护 以避免信息被窃取或攻击以避免信息被窃取或攻击第第3 3阶段:集成电路时代(阶段:集成电路时代(19651965年年-1980-1980年)年)33多道程序设计技术多道程序设计技术(multiprogrammingmultiprogramming)第第3 3阶段:集成电路时代(阶段:集成电路时代(19651965年年-1980-1980年)年)单处理机上多道程序运行的特点:单处理机上多道程序运行的特点:1、多道多道:内存中同时存放多道相互独立的程序:内存中同时存放多道相互独立的程序2、宏观上并行宏观上并行:宏观上,系统中的多道程序都在运行,:宏观上,系统中的多道程序都
28、在运行,在一定的时间间隔内都取得进展在一定的时间间隔内都取得进展3、微观上串行微观上串行:在任意时刻,只有一道程序占有:在任意时刻,只有一道程序占有CPU 34多道程序设计技术多道程序设计技术(multiprogrammingmultiprogramming)第第3 3阶段:集成电路时代(阶段:集成电路时代(19651965年年-1980-1980年)年)时间时间CPUI/O设备设备ABCABC35分时系统分时系统批处理系统从一作业提交到结果取回批处理系统从一作业提交到结果取回,往往长达数小时往往长达数小时 一个逗号的误用会导致编译失败,而可能浪费程序员半天时一个逗号的误用会导致编译失败,而可
29、能浪费程序员半天时间间问题的解决导致分时系统的出现问题的解决导致分时系统的出现分时系统实际上是多道程序的一个变种分时系统实际上是多道程序的一个变种在分时系统中,每个用户有一个联机终端。假设在分时系统中,每个用户有一个联机终端。假设2020个用户个用户登录,其中登录,其中1717个在思考或谈论或喝咖啡,则个在思考或谈论或喝咖啡,则CPUCPU可给那三可给那三个需要的作业轮流分配服务个需要的作业轮流分配服务调试程序的用户常常只发出简短的命令,而很少有长的费调试程序的用户常常只发出简短的命令,而很少有长的费时命令,所以计算机能够为许多用户提供交互式快速服时命令,所以计算机能够为许多用户提供交互式快速
30、服务,同时在务,同时在CPUCPU空闲时还能在后台运行大作业空闲时还能在后台运行大作业第第3 3阶段:集成电路时代(阶段:集成电路时代(19651965年年-1980-1980年)年)36第第3 3阶段:集成电路时代(阶段:集成电路时代(19651965年年-1980-1980年)年)多数厂商有几条完全不同的生产线,生产不同的计算机,开发多数厂商有几条完全不同的生产线,生产不同的计算机,开发和维护完全不同的产品,对厂商来说是昂贵的和维护完全不同的产品,对厂商来说是昂贵的另外,新用户,在开始时只需要一台小计算机,后来可能需要另外,新用户,在开始时只需要一台小计算机,后来可能需要一台大的计算机,而
31、且希望能在新计算机上执行原有的程序一台大的计算机,而且希望能在新计算机上执行原有的程序这样,厂家和用户需要软件在不同型号的计算机之间兼容这样,厂家和用户需要软件在不同型号的计算机之间兼容系列机思想与系列机思想与IBM System/360IBM System/360系统系统371964 1964 年年IBM IBM 宣布推出宣布推出System/360System/360计算机系统计算机系统 第一个采用小规模集成电路的主流机型第一个采用小规模集成电路的主流机型试图一次性地解决上述两个问题试图一次性地解决上述两个问题由于所有的计算机由于所有的计算机 都有相同的体系结都有相同的体系结 构和指令集构
32、和指令集 在理论上,为一型在理论上,为一型 号编写的程序可以号编写的程序可以 在其他型号机器上在其他型号机器上 运行运行第第3 3阶段:集成电路时代(阶段:集成电路时代(19651965年年-1980-1980年)年)38IBM System/360的若干问题IBMIBM无法写出同时满足互冲突需要的操作系统无法写出同时满足互冲突需要的操作系统 其实别人也一样不能完成这项工作任务其实别人也一样不能完成这项工作任务数千名程序员写的数百万行汇编语言代码数千名程序员写的数百万行汇编语言代码 系统自身占据了大量存储空间和一半的系统自身占据了大量存储空间和一半的CPUCPU时间时间数百万行汇编代码中有成千
33、上万处错误数百万行汇编代码中有成千上万处错误IBMIBM不断发行新的版本试图更正这些错误不断发行新的版本试图更正这些错误 每个新版本在更正老错误的同时又引入新错误每个新版本在更正老错误的同时又引入新错误所以随着时间的流逝,错误的数量大致保持不变所以随着时间的流逝,错误的数量大致保持不变第第3 3阶段:集成电路时代(阶段:集成电路时代(19651965年年-1980-1980年)年)这便是软件危机这便是软件危机,软件工程应运而生软件工程应运而生39MULTICSMULTICS的灾难的灾难19651965年年MITMIT、贝尔实验室和通用电气公司决定开发一种贝尔实验室和通用电气公司决定开发一种“公
34、公用计算服务系统用计算服务系统”,希望能够同时支持整个波士顿所有的希望能够同时支持整个波士顿所有的分时用户。该系统称作分时用户。该系统称作MULTICSMULTICSMULTICSMULTICS设计目标是:便利的远程终端使用,大量终端通过设计目标是:便利的远程终端使用,大量终端通过电话线接入计算机主机电话线接入计算机主机MULTICSMULTICS研制难度超出了所有人预料研制难度超出了所有人预料 长期研制工作达不到预期目标,长期研制工作达不到预期目标,19691969年年4 4月贝尔实验室退出,月贝尔实验室退出,不久通用电气公司也退出了不久通用电气公司也退出了MULTICSMULTICS引入了
35、许多现代操作系统领域概念雏形,对随后操引入了许多现代操作系统领域概念雏形,对随后操作系统特别是作系统特别是UNIXUNIX的成功有着巨大的影响的成功有着巨大的影响第第3 3阶段:集成电路时代(阶段:集成电路时代(19651965年年-1980-1980年)年)40UNIXUNIX的崛起的崛起19691969年,在贝尔退出年,在贝尔退出MULTICSMULTICS研制项目后,研制项目后,Ken ThompsonKen Thompson和和Dennis M.Ritchie Dennis M.Ritchie 想申请经费买计算机从事操作系统研想申请经费买计算机从事操作系统研究,但多次申请得不到批准究,
36、但多次申请得不到批准项目无着落,他们在一台无人用的项目无着落,他们在一台无人用的PDP-7PDP-7上,重新摆弄原先上,重新摆弄原先在在MULTICSMULTICS项目上设计的项目上设计的“空间旅行空间旅行”游戏游戏为了使游戏能够在为了使游戏能够在PDP-7PDP-7上顺利运行,他们陆续开发了浮点上顺利运行,他们陆续开发了浮点运算软件包、显示驱动软件,设计了文件系统、实用程序运算软件包、显示驱动软件,设计了文件系统、实用程序、shell shell 和汇编程序和汇编程序到了到了19701970年,在一切完成后,给新系统起了个同年,在一切完成后,给新系统起了个同MULTICSMULTICS发发音
37、相近的名字音相近的名字UNIXUNIX随后,随后,UNIXUNIX用用C C语言全部重写,自此语言全部重写,自此,UNIXUNIX诞生了诞生了第第3 3阶段:集成电路时代(阶段:集成电路时代(19651965年年-1980-1980年)年)41UNIXUNIX是现代操作系统的代表是现代操作系统的代表。UnixUnix运行时的安全性、可靠性以运行时的安全性、可靠性以及强大的计算能力赢得广大用户的信赖及强大的计算能力赢得广大用户的信赖促使促使UNIXUNIX系统成功的因素:系统成功的因素:首先,由于首先,由于UNIXUNIX是用是用C C语言编写,因此它是可移植的语言编写,因此它是可移植的,UNI
38、X UNIX 是世界上唯一能在笔记本计算机、是世界上唯一能在笔记本计算机、PCPC机、工作站直至巨型机机、工作站直至巨型机上运行的操作系统上运行的操作系统第二,系统源代码非常有效,系统容易适应特殊的需求第二,系统源代码非常有效,系统容易适应特殊的需求最后,也是最重要的一点,它是一个良好的、通用的、多用最后,也是最重要的一点,它是一个良好的、通用的、多用户、多任务、分时操作系统户、多任务、分时操作系统UNIXUNIX的崛起的崛起第第3 3阶段:集成电路时代(阶段:集成电路时代(19651965年年-1980-1980年)年)42第第4 4代阶段:大规模集成电路时代代阶段:大规模集成电路时代(19
39、80(1980年年-)-)随着大规模集成电路发展,个人计算机时代到来了随着大规模集成电路发展,个人计算机时代到来了,各种类型各种类型的个人计算机和操作系统层出不穷。的个人计算机和操作系统层出不穷。个人计算机操作系统个人计算机操作系统个人计算机操作系统的特征个人计算机操作系统的特征应用领域应用领域:事务处理、个人娱乐,:事务处理、个人娱乐,系统要求系统要求:使用方便、支持多种硬件和外部设备(多:使用方便、支持多种硬件和外部设备(多媒体设备、网络、远程通信)、效率不必很高。媒体设备、网络、远程通信)、效率不必很高。常用的个人计算机操作系统常用的个人计算机操作系统单用户单任务:单用户单任务:MS D
40、OS单用户多任务:单用户多任务:Windows多用户多任务:多用户多任务:UNIX,Linux,FreeBSD)针对针对单用户使用单用户使用的个人计算机进行的个人计算机进行优化优化的操作系统。的操作系统。43在当代,操作系统的发展正在呈现更加迅猛的发展态势。在当代,操作系统的发展正在呈现更加迅猛的发展态势。从规模上看,操作系统向着大型和微型的两个不同的方向发从规模上看,操作系统向着大型和微型的两个不同的方向发展着。大型系统的典型是分布式操作系统和机群操作系统。展着。大型系统的典型是分布式操作系统和机群操作系统。而微型系统的典型则是嵌入式操作系统。而微型系统的典型则是嵌入式操作系统。第第4 4代
41、阶段:大规模集成电路时代代阶段:大规模集成电路时代(1980(1980年年-)-)当代操作系统的两大发展方向当代操作系统的两大发展方向44第第4 4代阶段:大规模集成电路时代代阶段:大规模集成电路时代(1980(1980年年-)-)分布式操作系统分布式操作系统分布式系统分布式系统:处理和控制的分散(相对于集中式系统):处理和控制的分散(相对于集中式系统)分布式系统是以计算机网络为分布式系统是以计算机网络为基础基础的,它的基本特征是的,它的基本特征是处处理上的分布理上的分布,即功能和任务的分布。,即功能和任务的分布。分布式操作系统的分布式操作系统的所有系统任务所有系统任务可在系统中可在系统中任何
42、处理机任何处理机上上运行,自动实现全系统范围内的运行,自动实现全系统范围内的任务分配任务分配并并自动调度自动调度各处各处理机的工作负载。理机的工作负载。45第第4 4代阶段:大规模集成电路时代代阶段:大规模集成电路时代(1980(1980年年-)-)分布式操作系统与网络操作系统的比较耦合程度耦合程度:分布式系统是紧密耦合系统:分布式分布式系统是紧密耦合系统:分布式OS是在各机上统一建立的是在各机上统一建立的(OS同质同质),直接管理直接管理CPU、存储器和外设;统一进行全系统的管理;存储器和外设;统一进行全系统的管理;网络通常容许网络通常容许异种异种OS互连互连,各机上各种服务程序遵从统一的网
43、络协议,各机上各种服务程序遵从统一的网络协议(协协议同质议同质)。并行性并行性:分布式分布式OS可以将一个进程分散在各机上并行执行可以将一个进程分散在各机上并行执行(进程迁移进程迁移);网络则网络则各机上的进程独立各机上的进程独立。透明性透明性:用户是否知道或指定资源在哪个机器上(如:用户是否知道或指定资源在哪个机器上(如CPU、内存内存或外设)。或外设)。分布式系统的网络资源调度分布式系统的网络资源调度对用户透明对用户透明,用户不了解所占有资源的位置;,用户不了解所占有资源的位置;网络操作系统中对网络资源的使用要网络操作系统中对网络资源的使用要由用户明确指定由用户明确指定;健壮性健壮性:分布
44、式系统要求:分布式系统要求更强的容错能力更强的容错能力(工作时系统重构)(工作时系统重构)46嵌入式系统嵌入式系统:在各种设备、装置或系统中,完成特定功能的软硬件在各种设备、装置或系统中,完成特定功能的软硬件系统,它们是一个大设备、装置或系统中的一部分,系统,它们是一个大设备、装置或系统中的一部分,这个大设备、装置或系统可以不是这个大设备、装置或系统可以不是“计算机计算机”。该。该系统通常工作在反应式或对处理时间有较严格要求系统通常工作在反应式或对处理时间有较严格要求环境中。由于它们被嵌入在各种设备、装置或系统环境中。由于它们被嵌入在各种设备、装置或系统中,因此称为嵌入式系统。中,因此称为嵌入
45、式系统。第第4 4代阶段:大规模集成电路时代代阶段:大规模集成电路时代(1980(1980年年-)-)嵌入式操作系统嵌入式操作系统47第第4 4代阶段:大规模集成电路时代代阶段:大规模集成电路时代(1980(1980年年-)-)第第4 4代阶段:大规模集成电路时代代阶段:大规模集成电路时代(1980(1980年年-)-)48嵌入式操作系统,嵌入式操作系统,是运行在嵌入式智能芯片环境中,对整个是运行在嵌入式智能芯片环境中,对整个智能芯片以及它所操作、控制的各种部件装置等等资源进行智能芯片以及它所操作、控制的各种部件装置等等资源进行统一协调、调度、指挥和控制的系统软件。统一协调、调度、指挥和控制的
46、系统软件。在嵌入式系统中的在嵌入式系统中的OS,称为称为嵌入式操作系统嵌入式操作系统第第4 4代阶段:大规模集成电路时代代阶段:大规模集成电路时代(1980(1980年年-)-)嵌入式操作系统嵌入式操作系统49典型嵌入式操作系统的特性典型嵌入式操作系统的特性 完成某一项或有限项功能;不是通用型的完成某一项或有限项功能;不是通用型的 在性能和实时性方面有严格的限制在性能和实时性方面有严格的限制 能源、成本和可靠性通常是影响设计的重要因素能源、成本和可靠性通常是影响设计的重要因素 占有资源少、易于连接占有资源少、易于连接 系统功能可针对需求进行裁剪、调整和生成系统功能可针对需求进行裁剪、调整和生成
47、 以便满足最终产品的设计要求以便满足最终产品的设计要求第第4 4代阶段:大规模集成电路时代代阶段:大规模集成电路时代(1980(1980年年-)-)50嵌入式操作系统的应用嵌入式操作系统的应用智能卡智能卡移动通信移动通信计算机外设计算机外设机顶盒机顶盒零售设备零售设备印刷机印刷机复印机复印机互联网服务器互联网服务器电话交换设备电话交换设备第第4 4代阶段:大规模集成电路时代代阶段:大规模集成电路时代(1980(1980年年-)-)511975年年4月,月,MITS公司推出了以公司推出了以8080为为CPU的世界上第一台的世界上第一台个人计算机个人计算机Altair 8800,它的内存只有它的内
48、存只有1K字节,当时的价格字节,当时的价格为为375美元。美元。值得一提的是,值得一提的是,Altair 8800的的BASIC语言解释器语言解释器是是Bill Gates。1975年,年,MOS Technology公司推出了公司推出了MC6501和和MC6502两两款款8位微处理器芯片,它们的价格分别为位微处理器芯片,它们的价格分别为20美元和美元和25美元,而美元,而当时当时Intel 8080的价格为的价格为150美元。日后美元。日后Steve Jobs在美国西海在美国西海岸的一个汽车库中组装岸的一个汽车库中组装Apple II微型计算机时,便采用了比较微型计算机时,便采用了比较便宜的
49、便宜的MC6502。Apple II具有具有4KB RAM、16KB ROM、键键盘、游戏杆、盘、游戏杆、8个扩充插槽以及彩色显示器,是世界上第一台个扩充插槽以及彩色显示器,是世界上第一台能够显示彩色图形的个人计算机。能够显示彩色图形的个人计算机。Apple II一经推出便在市场一经推出便在市场上迅速走红,为成立不久的上迅速走红,为成立不久的Apple带来滚滚财源,带来滚滚财源,Apple II的的热潮一直持续到热潮一直持续到80年代初。年代初。个人计算机的诞生个人计算机的诞生五、五、Windows操作系统的发展历程操作系统的发展历程52MS DOSMS DOS个人计算机的成功,逼得个人计算机
50、的成功,逼得IBMIBM采取紧急战略行动采取紧急战略行动,决定要在决定要在19801980年尽快生产出微型计算机,以应付挑战年尽快生产出微型计算机,以应付挑战但没有操作系统不行。要想快就是找现成系统配套,但没有操作系统不行。要想快就是找现成系统配套,IBMIBM公司公司洽谈洽谈 CP/MCP/M操作系统不顺利,机遇落到了微软公司操作系统不顺利,机遇落到了微软公司在关键时刻,开发新操作系统时间和人手上已经不可能,微在关键时刻,开发新操作系统时间和人手上已经不可能,微软找到西雅图计算机产品公司,用软找到西雅图计算机产品公司,用5 5万美圆的价格购买了西雅万美圆的价格购买了西雅图计算机产品公司的图计