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

下载本文档

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

文档简介

计算机科学导论龚捷西南石油大学计算机科学学院电邮:gongjie.swpu@电话言计算机硬件系统各类应用软件网络浏览、游戏、影音娱乐、机票预定、银行业务、文字处理、数据管理……操作系统

第4章操作系统几个重要问题4.操作系统的结构组成3.操作系统的功能2.什么是操作系统1.常用操作系统5.一、什么是操作系统最靠近硬件的软件让用户无需了解计算机内部工作原理而使用计算机分配、管理、调度计算机的各类硬、软件资源硬、软件之间的接口和桥梁复杂而庞大的系统软件通常存放于辅存中必须经过引导才能开始工作操作系统OS:OperatingSystem系统上电BIOS自检正常?引导OS内核OS工作系统提示错误NoYesBasicI/OSystem通常存放于ROMBoot从外存读入内存OS的由来计算机的手工操作阶段

任务简单,对资源利用率要求不高,没有OS的需求或概念批处理操作阶段

应用面扩大,需要对同一批次的作业运行进行调度搜集作业作业1作业2作业n制作卡片写磁带读磁带运行作业写磁带读磁带打印结果散发结果结果1结果2结果n......控制程序:OS的雏形问题:CPU效率较低1、若某个作业仅进行简单的I/O操作?2、若多个作业都要求排队靠前?多道程序运行阶段

应用进一步发生改变,对CPU的利用率要求提高内存作业1作业2作业3作业调度问题:用户无法自己与作业交互1、若负责机票预定的职员在处理业务?2、若用户在撰写一个文档?3、若用户在玩游戏?4、……分时操作阶段提供多个用户与单个CPU的各自独立交互功能终端2终端3终端4终端5终端1主机OS:资源管理 人机交互Unix最著名的分时OS分时操作:多个任务在微观上串行,但宏观上并行又称为并发操作现代操作系统个人电脑的普及促进了操作系统的发展DOS、Windows、Linux……网络操作系统屏蔽网络环境下的异构特性,提供统一通信协议分布式操作系统在分布式环境中为用户提供透明的统一资源管理服务实时操作系统特别强调系统对外界请求(即人机交互)的响应速度嵌入式操作系统具有较少功能,但在体积、功耗、响应等方面要求较高手机中的OS:Symbian、Android、WindowsPhone7……

二、操作系统的功能软件资源硬件资源两大功能:资源管理、人机交互程序/数据/文档存储器处理器I/O设备用户接口操作系统人机交互资源管理处理器:处理机管理、任务管理任务调度为各个任务分配CPU时间片,在任务之间进行切换任务1任务2任务3CPU时间轴如何分配?怎样调度?有没有问题?不同系统、不同情况下的策略不同1.若任务的实时性要求不同,应平等分配吗?2.若任务需等待外部事件后才能继续,还应再分配吗?3.在多个等待执行的任务中,应选择哪一个继续呢?4.当执行过程中出现更高优先级任务,应如何处理呢?任务的优先权抢夺调度:实时OS的特征处理机管理的目标:合理调度多个任务,实现对处理机资源的高效利用存储器:内存管理内存程序代码区程序1程序2考虑单任务环境下的内存管理数据区程序3相对比较简单存储器:内存管理内存程序1程序2程序3考虑多任务环境下的内存管理考虑单任务环境下的内存管理内存分配为每个任务的运行分配内存空间当任务结束时,回收其内存空间并统一管理任务间保护保护多个用户程序之间不会相互影响保护用户程序不会影响系统程序思考:若程序所需内存量超过实际可用内存量,应怎么处理?采用虚拟存储,将执行程序的一部分常驻内存,其它部分则根据需要在内、外存之间切换需实现由逻辑地址到物理地址的转换或映射存储管理:很大程度上影响到处理机管理I/O设备:设备管理提供用户程序和外设之间的接口分配设备启动设备回收设备屏蔽I/O设备与CPU的速度差异数据缓冲虚拟设备技术实现设备无关性用户无需了解设备的具体特性,而能够采用一种通用的方式实现对所有设备的操作例如:虚拟打印机例如:Print程序/数据/文档:文件管理、信息管理文件:File将逻辑完整的信息资源(程序和数据)组织成一个个单体,存放在辅存中,并为其赋予一个名字文件名:基本名.扩展名区别不同文件类型提供用户对文件的操作创建、打开、读写、删除、关闭、检索、修改……保证文件的安全性共享、保密、保护、可靠性……对辅存空间进行管理分层(树形)结构:分区→文件夹(目录)→文件程序/数据/文档:文件管理、信息管理硬盘C:D:E:WindowsMusic周杰伦Systemver.dll01.wma02.mp3该文件的路径c:\windows\system\ver.dllOS的虚拟机功能:VirtualMachine如果没有操作系统?用户必须直接面对硬件进行复杂的程序设计!任务管理内存管理设备管理文件管理人机交互用户面对的是什么机器?三、操作系统的结构组成主要功能组件任务管理内存管理设备管理文件管理人机交互调度程序分派程序内存管理程序设备驱动程序文件管理程序用户接口程序OS内核kernel核心态用户态OS的工作在两种状态间不断切换命令接口Shell:命令解释器,命令脚本语言GUI:GraphicalUserInterface,图形用户接口编程接口系统调用:通过编号调用OS的众多内部例程用户接口程序:提供人机交互Windows“命令提示符”……SystemCall……系统调用表用户态核心态系统例程系统调用向用户屏蔽了OS的内部细节不同OS所提供的系统调用不同调度程序与分派程序:协调进程管理进程:现代操作系统最核心的概念之一进程:Process,执行中的程序具有动态行为特征:位置与现场(PC、寄存器、存储器)具有并发操作特征:同一程序可以有多个进程执行具有三种工作状态:运行Run、就绪Ready、等待Wait多个进程的并发执行存在什么问题?对系统资源的冲突和竞争

调度程序与分派程序:调度进程状态、分派进程执行内存调度程序Scheduler:跟踪进程P0表项P1表项P1的起始地址P1的优先权P1的当前状态P0P1P2进程表OSKernelP2表项当启动任务2时,由S添加相应进程表项当结束任务0时,由S删除相应进程表项当进程状态发生变化时,由S修改相应表项当进程优先权发生变化时,由S修改相应表项不难看出:任何时候,进程表中只有一个表项状态为Run进程池Scheduler分派程序Dispatcher:切换进程P0P1Pn-2程序计数器PCPx■运行进程

■就绪进程

■等待进程

Dispatcher中断服务程序时间片定时器定时到!P2Pn-1P0P1切换P3P1切换切换切换CPU时间轴中断中断中断中断进程切换、上下文切换:显然会产生额外开销,但多任务分时操作的高效率如何体现?内存管理程序:协调内存使用内存OSKernel最简单的管理:单一分区除OS外,存储空间仅分配给一个进程使用缺陷:内存利用率不高、不能实现多任务

更有效的管理:多分区空间被划分为多个分区并提供给多个进程分区1(16MB)分区2(16MB)分区3(16MB)分区4(16MB)方法1:大小相同的固定分区方法2:大小不同的固定分区分区1(2MB)分区2(4MB)分区3(8MB)分区4(32MB)问题?

对并发执行进程数量的影响?

方法3:按进程的需求和内存的状况动态分配内存管理程序:协调内存使用内存OSKernel最简单的管理:单一分区除OS外,存储空间仅分配给一个进程使用缺陷:内存利用率不高、不能实现多任务

更有效的管理:多分区空间被划分为多个分区并提供给多个进程P1(8MB)方法1:大小相同的固定分区方法2:大小不同的固定分区问题?

对并发执行进程数量的影响?

方法3:按进程的需求和内存的状况动态分配P2(16MB)P3(4MB)P4(2MB)P5(64MB)随时间的推移?

内存分配需解决的2个主要问题

分配效率、减少碎片

分页机制:将内存和进程需求以页为单位划分海量辅存1024MB虚存512MB内存内存管理程序:协调内存使用Page0Page1Page2Pagen-1内存管理程序Page0Page1Pagei现代内存管理的重要任务虚拟存储

我需要1GB内存通过页面调度:可保证虚存中的任何一页都进入到内存中设备驱动程序:连接设备与用户软件用户I/O软件打印机驱动程序显示器驱动程序Print硬盘驱动程序OSkernel可独立于设备的技术细节不同类型的设备有各自特定的驱动程序

中断:I/O设备管理的关键技术当CPU接到外设的I/O请求时,则暂停当前工作,转而为I/O服务,并随后再返回原来暂停处继续中断控制器CPU外设1外设2外设n。。。中断请求中断响应类型号内存中断向量表处理程序类型号I/O软件的分层中断处理程序设备驱动程序设备无关程序用户I/O软件文件管理程序:实现“按名存取”硬盘i簇i+1簇……i-1簇……i簇表项文件分配表FAT

文件名属性起始簇号长度文件n表项文件目录表FDT

当创建文件时:在FDT中添加表项在FAT中寻找可用簇在FDT中填入起始簇号

当读写文件时:在FDT中查找表项找到文件起始簇号

定位到文件起始位置

当删除文件时:在FDT中查找表项找到文件起始簇号

在FAT中抹掉起始簇号

删除后,文件数据真的没有了吗?四、几个重要问题进程间的同步与互斥进程间的通信关系进程间存在直接关系:利用缓冲区传递数据进程间存在间接关系:申请同一打印机进程3进程4内存缓冲区进程1进程2同步、互斥分别解决以上两类关系信号量Semaphore:进程之间的旗语考虑某进程P请求访问打印机进程P向OS提出I/O请求若打印机空闲,OS设置进程P就绪若打印机正忙,OS设置进程P等待内存进程POS关键是:OS如何跟踪打印机的状态?

状态标志单元0/1指示打印机可用的信号量打印驱动程序再考虑打印机驱动程序一次只能由一个进程执行进程间的互斥临界区临界资源独占资源

结论:对临界资源,进程间必须实现互斥访问死锁:互斥可能引起的问题两列火车互不让路,从而造成死锁什么原因ProcessAProcessB打印机光驱死锁:多个进程因请求对方的独占资源而相互永久等待如何解决?杀掉其中一个进程进程一次性请求所需全部资源假脱机:进程共享虚拟设备“饥饿”问题:因为互斥,某进程可能较长时间得不到其所需独占资源操作系统的安全:决定整个系统安全系统硬件、软件资源操作系统抵御外部非法侵入用户注册分配用户不同的权限登录(身份验证)审计(监视)系统行为如何防止内部非法攻击?内存进程POS

操作系统的安全:决定整个系统安全进程P访问限制区域

CPU上界寄存器下界寄存器为CPU设置特权指令和特权模式任务进程工作在非特权模式若进程执行特权指令,CPU将转入特权模式,从而引发中断若进程P可无限制访问内存?甚至可以破坏OS若进程P可修改边界寄存器?五、常用操作系统不同类型的操作系统Windows目前个人电脑的主流OS多任务、多用户、GUI、应用软件丰富DOS:DiskOperatingSystem曾经被认为16位OS的标准单任务、单用户、字符操作界面Unix高端工作站和服务器的主要OS多任务、多用户

温馨提示

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

评论

0/150

提交评论