Linux操作系统分析与实践操作系统概述.pptx
《Linux操作系统分析与实践操作系统概述.pptx》由会员分享,可在线阅读,更多相关《Linux操作系统分析与实践操作系统概述.pptx(106页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、几个问题几个问题 什么是操作系统?解决什么问题?什么是操作系统?解决什么问题? 学到哪些原理?学到哪些原理? 设计处理器时,如何对操作系统支持?设计处理器时,如何对操作系统支持? 有硬件、软件(应用软件),实现一个功能有硬件、软件(应用软件),实现一个功能应该放在哪里?如果放在操作系统中,应该应该放在哪里?如果放在操作系统中,应该放在何处?内核或库?放在何处?内核或库? UNIXUNIX的缺点?如果你要重新设计,怎么做?的缺点?如果你要重新设计,怎么做? 一个一个WebWeb请求是怎么走的?(请求是怎么走的?(OSOS怎样接?)怎样接?)几个问题(续)几个问题(续) 描述中断响应过程,说明操作
2、系统对这描述中断响应过程,说明操作系统对这一过程的支持。一过程的支持。 谈谈谈谈TLBTLB的作用、特点和内容。的作用、特点和内容。 为什么引入工作集模型?软件开发人员为什么引入工作集模型?软件开发人员在编程时怎样考虑?在编程时怎样考虑? 设计一个多级目录结构,要求目录检索设计一个多级目录结构,要求目录检索速度快,请给出设计方案。速度快,请给出设计方案。操作系统做什么?操作系统做什么? #include int main(int argc, char *argv) puts(hello world); return 0; 用户告诉操作系统执行用户告诉操作系统执行hellohello程序程序 操
3、作系统找到该程序,检查其类型操作系统找到该程序,检查其类型 检查程序首部,找出正文和数据的地址检查程序首部,找出正文和数据的地址 文件系统找到第一个磁盘块文件系统找到第一个磁盘块 父进程需要创建一个新的子进程,执行父进程需要创建一个新的子进程,执行hellohello程序程序 操作系统需要将执行文件映射到进程结构操作系统需要将执行文件映射到进程结构 操作系统设置操作系统设置CPUCPU上下文环境,并跳到程序开始处上下文环境,并跳到程序开始处 程序的第一条指令执行,失败,缺页中断发生程序的第一条指令执行,失败,缺页中断发生 操作系统分配一页内存,并将代码从磁盘读入,继续执行操作系统分配一页内存,
4、并将代码从磁盘读入,继续执行 更多的缺页中断,读入更多的页面更多的缺页中断,读入更多的页面 操作系统检查字符串的位置是否正确操作系统检查字符串的位置是否正确 操作系统找到字符串被送往的设备操作系统找到字符串被送往的设备 设备是一个伪终端,由一个进程控制设备是一个伪终端,由一个进程控制 操作系统将字符串送给该进程操作系统将字符串送给该进程 该进程告诉窗口系统它要显示字符串该进程告诉窗口系统它要显示字符串 窗口系统确定这是一个合法的操作,然后将字符串转换窗口系统确定这是一个合法的操作,然后将字符串转换成像素成像素 窗口系统将像素写入存储映像区窗口系统将像素写入存储映像区 视频硬件将像素表示转换成一
5、组模拟信号控制显示器视频硬件将像素表示转换成一组模拟信号控制显示器(重画屏幕)(重画屏幕) 显示器发射电子束显示器发射电子束 你在屏幕上看到你在屏幕上看到hello worldhello world 程序执行系统调用,在文件描述符中写一字符串程序执行系统调用,在文件描述符中写一字符串本讲主要内容本讲主要内容 操作系统在计算机系统中的地位操作系统在计算机系统中的地位 操作系统的定义、特征和功能操作系统的定义、特征和功能 操作系统的发展历史及分类操作系统的发展历史及分类 操作系统的内核体系结构模型操作系统的内核体系结构模型 Linux的特点及发展简史的特点及发展简史 Linux内核的结构及主要组成
6、部分内核的结构及主要组成部分 一、操作系统在计算机系统中的地位一、操作系统在计算机系统中的地位 计算机系统包括计算机系统包括硬件(子)系统硬件(子)系统和和软件(子)系统软件(子)系统。 操作系统属于计算机系统软件(子)系统中的系操作系统属于计算机系统软件(子)系统中的系统软统软件件,是紧密接近硬件的,是紧密接近硬件的第一层软件第一层软件,是对硬件功能的,是对硬件功能的首次扩充,其他软件则是建立在操作系统之上的。首次扩充,其他软件则是建立在操作系统之上的。 各种软件在操作系统的统一管理和支持下运行。各种软件在操作系统的统一管理和支持下运行。 计算机系统计算机系统 操作系统是计算机系统中软件技术
7、含量最大、操作系统是计算机系统中软件技术含量最大、附加值最高的部分,是软件(子)系统的核心,附加值最高的部分,是软件(子)系统的核心,是是软件的基础运行平台软件的基础运行平台。操作系统实际上是一个计算机系统中操作系统实际上是一个计算机系统中硬、软件资源硬、软件资源的总指挥部的总指挥部 。操作系统的性能高低,决定了整个计算机的操作系统的性能高低,决定了整个计算机的潜在硬潜在硬件性能件性能能否发挥出来。能否发挥出来。 操作系统本身的安全可靠程度,决定了整个计算机操作系统本身的安全可靠程度,决定了整个计算机系统的系统的安全性和可靠性安全性和可靠性。 操作系统设计者操作系统设计者应用软件设计者应用软件
8、设计者二、操作系统的定义、特征和功能二、操作系统的定义、特征和功能 操作系统的定义操作系统的定义 操作系统的特征操作系统的特征 操作系统的功能操作系统的功能2.1 操作系统的定义操作系统的定义 定义:定义:操作系统是计算机系统中的一个系统软件,它是这操作系统是计算机系统中的一个系统软件,它是这样一些程序模块的集合样一些程序模块的集合它们能它们能有效有效地组织和管地组织和管理计算机系统中的硬件及软件资源,理计算机系统中的硬件及软件资源,合理合理地组织计地组织计算机工作流程,控制程序的执行,并向用户提供各算机工作流程,控制程序的执行,并向用户提供各种服务功能,使得用户能够灵活、种服务功能,使得用户
9、能够灵活、方便方便、有效地使、有效地使用计算机,并使整个计算机系统能高效地运行。用计算机,并使整个计算机系统能高效地运行。 操作系统的任务之一是操作系统的任务之一是组织和管理计算机系统组织和管理计算机系统中的硬件及软件资源中的硬件及软件资源。 操作系统另一项重要任务是操作系统另一项重要任务是向用户提供各种服向用户提供各种服务功能务功能。 2.2 操作系统的特征操作系统的特征并发(并发(concurrencyconcurrency):): 处理多个同时性活动的能力处理多个同时性活动的能力在计算机系统中同时存在多个程序在计算机系统中同时存在多个程序宏观上:这些程序是同时在执行的宏观上:这些程序是同
10、时在执行的微观上:任何时刻只有一个程序在执行(单微观上:任何时刻只有一个程序在执行(单CPUCPU) 即微观上这些程序在即微观上这些程序在CPUCPU上轮流执行上轮流执行并行(并行(parallelparallel):( (与并发相似,但多指硬件支与并发相似,但多指硬件支持)持)由并发引起的问题由并发引起的问题:活动切换、保护、相互依赖:活动切换、保护、相互依赖的活动间的同步的活动间的同步操作系统特征(续)操作系统特征(续)共享(共享(sharingsharing):): 操作系统与多个用户的程序共同使用计算操作系统与多个用户的程序共同使用计算机系统中的资源(共享有限的系统资源)机系统中的资源
11、(共享有限的系统资源) 操作系统要对系统资源进行合理分配和使用操作系统要对系统资源进行合理分配和使用 资源在一个时间段内交替被多个进程所用资源在一个时间段内交替被多个进程所用 互斥共享(如音频设备)互斥共享(如音频设备) 同时访问(如可重入代码,磁盘文件)同时访问(如可重入代码,磁盘文件) 资源分配难以达到最优化资源分配难以达到最优化虚拟(虚拟(VirtualVirtual):): 一个物理实体映射为若干个对应的逻辑实体一个物理实体映射为若干个对应的逻辑实体分时或分空间。虚拟是操作系统管理系统资分时或分空间。虚拟是操作系统管理系统资源的重要手段,可提高资源利用率源的重要手段,可提高资源利用率操
12、作系统特征(续)操作系统特征(续) CPU CPU每个用户(进程)的每个用户(进程)的 虚处理机虚处理机 存储器每个进程都占有的地址空间(指令存储器每个进程都占有的地址空间(指令数据堆栈)数据堆栈) 显示设备多窗口或虚拟终端显示设备多窗口或虚拟终端随机性:随机性: 操作系统必须随时对以不可预测的次操作系统必须随时对以不可预测的次序发生的事件进行响应序发生的事件进行响应操作系统特征(续)操作系统特征(续) 进程的运行速度不可预知:分时系统中,多个进程并发进程的运行速度不可预知:分时系统中,多个进程并发执行,执行,“走走停停走走停停”,无法预知每个进程的运行推进快慢,无法预知每个进程的运行推进快慢
13、 难以重现系统在某个时刻的状态(包括重现运行中的错难以重现系统在某个时刻的状态(包括重现运行中的错误)误)不确定性:不确定性: 由共享和并发引起由共享和并发引起 在操作系统中可运行多道用户程序,而每个用户程序在操作系统中可运行多道用户程序,而每个用户程序的运行时间、要使用哪些系统资源、使用多长时间、使的运行时间、要使用哪些系统资源、使用多长时间、使用的资源是共享还是独占的,操作系统在程序运行前是用的资源是共享还是独占的,操作系统在程序运行前是不知道的不知道的 要求操作系统的设计要很好地解决并发和共享的问题,要求操作系统的设计要很好地解决并发和共享的问题,否则,将会产生不可重现的错误,这种不可重
14、现的错误否则,将会产生不可重现的错误,这种不可重现的错误称为不确定性称为不确定性 例子:两个用户共享一台打印机例子:两个用户共享一台打印机操作系统特征(续)操作系统特征(续)2.3 操作系统的功能操作系统的功能 进程管理进程管理进程管理的实质是对进程管理的实质是对CPUCPU进行管理,所以进程管理往往又被称进行管理,所以进程管理往往又被称为处理器管理。为处理器管理。 存储管理存储管理 存储管理的任务是管理计算机内存的资源。存储管理的任务是管理计算机内存的资源。 文件管理文件管理有效地支持文件的存储、检索和修改等操作,解决文件的共有效地支持文件的存储、检索和修改等操作,解决文件的共享、保密和保护
15、问题,以使用户方便、安全地访问文件。享、保密和保护问题,以使用户方便、安全地访问文件。 设备管理设备管理 负责外部设备的分配、启动和故障处理,用户不必详细了解负责外部设备的分配、启动和故障处理,用户不必详细了解设备及接口的技术细节,就可以方便地通过操作系统提供的设备及接口的技术细节,就可以方便地通过操作系统提供的设备管理手段,对设备进行操作。设备管理手段,对设备进行操作。 三、操作系统的发展历史及分类三、操作系统的发展历史及分类 操作系统如同任何其他事物一样,也有它的操作系统如同任何其他事物一样,也有它的诞诞生、成长和发展生、成长和发展的过程。的过程。手工操作手工操作; ;监控程序(早期批处理
16、)监控程序(早期批处理) ; ;多道批处理多道批处理 ; ;分时与实时系统分时与实时系统 ; ;UNIXUNIX通用操作系统通用操作系统 ; ;个人计算机操作系统个人计算机操作系统 ; ;当代操作系统的两大发展方向当代操作系统的两大发展方向宏观应用与微观宏观应用与微观应用应用 . .操作系统的发展操作系统的发展操作系统发展是随着计算机硬件技术、应用软操作系统发展是随着计算机硬件技术、应用软件的发展而发展的件的发展而发展的目标:充分利用硬件目标:充分利用硬件 提供更好的服务提供更好的服务大型机 PC机 后PC时代历史上的操作系统历史上的操作系统随历史线索,介绍一些重要的操作系统随历史线索,介绍一
17、些重要的操作系统 FMSFMS(FORTRAN Monitor SystemFORTRAN Monitor System)和)和IBSYSIBSYS (IBMIBM为为70947094配备的操作系统)配备的操作系统) OS/360OS/360(IBMIBM为系列机为系列机360360配备的操作系统)配备的操作系统) CTSSCTSS(Compatible Time Sharing SystemCompatible Time Sharing System) MULTICSMULTICS(MULTiplexed Information and MULTiplexed Information and
18、 Computer ServiceComputer Service) UNIXUNIX类、类、LinuxLinux CP/M CP/M 历史上的操作系统历史上的操作系统 MS-DOSMS-DOS、Windows 3.1/95/98/MeWindows 3.1/95/98/Me、Windows Windows NTNT、Windows 2000/XPWindows 2000/XP、 Windows CEWindows CE、 Windows Server 2003Windows Server 2003 MacintoshMacintosh OS/390OS/390 MachMach VxWork
19、sVxWorks 嵌入式领域嵌入式领域 国产操作系统国产操作系统 研究型操作系统研究型操作系统卡片卡片早期批处理系统早期批处理系统IBM1401IBM7094IBM1401输入磁带输入磁带磁带机磁带机卡片阅读机卡片阅读机输出磁带输出磁带打印机打印机典型的操作系统典型的操作系统FMSFMS(FORTRAN Monitor SystemFORTRAN Monitor System,FORTRANFORTRAN监控监控系统)系统)IBMSYSIBMSYS(IBMIBM为为70947094机配备的操作系统)机配备的操作系统)这些操作系统由监控程序,特权指令,存储保这些操作系统由监控程序,特权指令,存储
20、保护和简单的批处理构成护和简单的批处理构成OS/360OS/360操作系统操作系统 2020世纪世纪6060年代初期,计算机开始采用集成电路,多年代初期,计算机开始采用集成电路,多数厂商有几条完全不同的生产线,生产不同的计算数厂商有几条完全不同的生产线,生产不同的计算机机 开发和维护完全不同的产品,对厂商来说是昂贵的开发和维护完全不同的产品,对厂商来说是昂贵的 新的用户在开始时只需要一台小计算机,后来可能新的用户在开始时只需要一台小计算机,后来可能需要一台大的计算机,并希望能在新计算机上执行需要一台大的计算机,并希望能在新计算机上执行原有的程序原有的程序 厂家和用户需要软件在不同型号的计算机之
21、间兼容厂家和用户需要软件在不同型号的计算机之间兼容 1964 1964 年年IBM IBM 宣布推出宣布推出System/360System/360计算机系统计算机系统 第一个采用小规模集成电路的主流机型第一个采用小规模集成电路的主流机型 试图一次性地解决上述问题试图一次性地解决上述问题 由于所有的计算机由于所有的计算机 都有相同的体系结都有相同的体系结 构和指令集构和指令集 在理论上,为一型在理论上,为一型 号编写的程序可以号编写的程序可以 在其他型号机器上在其他型号机器上 运行运行OS/360操作系统IBM System/360IBM System/360的若干问题的若干问题 IBMIBM
22、无法写出同时满足互冲突需要的操作系统无法写出同时满足互冲突需要的操作系统 其实别人也一样不能完成此项任务其实别人也一样不能完成此项任务 IBM OS/360IBM OS/360文件系统中有类型字段,定义文件的类文件系统中有类型字段,定义文件的类型,有定长、不定长记录、块状和非块状文件型,有定长、不定长记录、块状和非块状文件 用户对于输出文件的大小,只有通过猜测用户对于输出文件的大小,只有通过猜测 存储管理有基地址寄存器寻址方式,程序也可以访存储管理有基地址寄存器寻址方式,程序也可以访问和修改基地址寄存器,但是问和修改基地址寄存器,但是CPUCPU生成的却是绝对生成的却是绝对地址,虽然不用进行动
23、态再分配地址,虽然不用进行动态再分配 但程序却被但程序却被“钉死钉死”在调入内存时的物理地址上在调入内存时的物理地址上IBM System/360, IBM System/360, 庞大的软件怪兽庞大的软件怪兽 数千名程序员写的数百万行汇编数千名程序员写的数百万行汇编语言代码语言代码 系统自身占据了大量存储空间和系统自身占据了大量存储空间和一半的一半的CPUCPU时间时间 数百万行汇编代码中有成千上万数百万行汇编代码中有成千上万处错误处错误 IBMIBM不断发行新的版本试图更正不断发行新的版本试图更正这些错误这些错误 每个新版本在更正老错误的同时每个新版本在更正老错误的同时又引入新错误又引入新
24、错误 随着时间的流逝,错误的数量大随着时间的流逝,错误的数量大致保持不变致保持不变 分时系统的思想分时系统的思想19591959年在年在MITMIT提出提出 每个用户有一个联机终端每个用户有一个联机终端 在分时系统中,假设在分时系统中,假设2020个用户登录个用户登录 其中其中1717个在思考或谈论或喝咖啡个在思考或谈论或喝咖啡 则则CPUCPU可分配给那三个需要的作业(轮流服务)可分配给那三个需要的作业(轮流服务) 调试程序的用户常常只发出简短的命令调试程序的用户常常只发出简短的命令 很少有长的费时命令很少有长的费时命令 计算机能够为许多用户提供交互式、快速服务计算机能够为许多用户提供交互式
25、、快速服务 同时在同时在CPUCPU空闲时还能在后台运行大作业空闲时还能在后台运行大作业第一个分时操作系统第一个分时操作系统CTSSCTSS 第一个分时系统(第一个分时系统(CTSSCTSS)由)由 MITMIT的的Fernando Fernando Corbato Corbato 等等19611961年在一改装的年在一改装的IBM 7090/94IBM 7090/94机上开机上开发成功(有发成功(有3232个交互式用户)个交互式用户) IBM 7090/94IBM 7090/94计算机有计算机有32K32K内存,系统用内存,系统用5K5K,用户用,用户用27K27K,用户存储映象在内存和一台
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 操作系统 分析 实践 概述
限制150内