第十章 UNIX系统内核结构解读.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第十章 UNIX系统内核结构 10.1 UNIX系统概述 10.1.1 UNIX系统发展史 UNIX系统由美国Bell实验室设计和实现; 由IBM和DEC等公司结成了开放软件基金会OSF集团,由ATT、SUN和NCR形成UI集团; 1980年BELL实验室为美国国防部在Berkeley的UNIX上开发了TCP/IP网络协议,使UNIX成为网络操作系统; 10.1.2 UNIX系统的特征 开放性:遵循国际标准规范,因此可以互连。UNIX是目前开放性最好的OS,可以稳定运行在从微机到大、中型等各种机器上的OS; 多用户、多任务环境; 功能强大、高效:目录结构、磁盘空间的管理方式、I/O重定向和管道功能; 丰富的网络功能:TCP/IP协议; 支持多处理器; 10.1.3 UNIX系统的内核结构 进程控制子系统: 进程控制:fork创建进程,exit结束进程执行; 进程通信:消息机制、信号量机制; 存储器管理:采用段页式存储管理; 进程调度:动态优先数轮转调度算法,优先数最小值优先; 文件子系统 文件管理:为文件分配空间,管理空闲磁盘块,控制文件存取; 高速缓冲机制:缓冲区大小与一个盘块的大小相当,缓冲区链入各种链表中; 设备驱动程序:UNIX把设备分为块设备和字符设备,文件系统在缓冲机制支持下,与块设备额驱动程序之间进行交互; 10.2 进程的描述和控制 UNIX系统V采用段页式存储管理,在该系统中把段称为区-Region。一个进程由:正文区、数据区、栈区和共享存储区等组成,每个区又分为若干页。每个进程还有一个进程控制块PCB。 10.2.1 进程控制块 进程控制块PCB分为四个部分: 1)进程表项:常驻内存; 2)U区:存放进程表项的扩充数据; 3)系统区表:管理进程的各个区,每个区的物理存储地址; 4)进程区表:记录进程的每个区在进程中的虚地址; 10.2.2 进程状态与进程映像 1、进程状态 执行状态,处于核心态的进程,能访问所有的内存空间,处理器不允许被抢占; 就绪状态:内存就绪和就绪且换出; 睡眠状态:调用系统调用wait,最多64个睡眠队列; 创建与僵死:创建指调用fork后,僵死为调用exit后; 被抢占:优先级低进程被优先级高进程抢占; 2.进程映像 1)用户级上下文:用户程序; 2)寄存器上下文:程序寄存器,处理机状态寄存器,通用寄存器; 3)系统上下文:A、静态部分:进程表项、U区及进程区表项、系统表项和页表;B、动态部分:核心栈,寄存器上下文; 10.2.3 进程控制 1、fork调用 引导时创建0进程,系统初启时,由0进程创建1进程,0进程变为对换进程,1进程为祖先进程。 1)为新进程分配进程表项和进程标识符; 2)检查同时运行进程数量是否超限; 3)拷贝进程表项中的数据; 4)子进程继承父进程所有的文件; 5)为子进程创建进程上下文; 6)子进程执行; 2、exec系统调用 用一个可执行文件的二进制文件覆盖新进程的用户级上下文的存储空间; 3、exit系统调用 1)关闭软中断; 2)回收资源:关闭文件,是否进程所有的区及相应内存; 3)记账; 4)设置进程状态为“僵死”,进行上下文切换; 4、wait调用 等待子进程退出,然后被唤醒; 10.2.4 进程调度与切换 1、引起进程调度的原因 进程执行wait、exit及sleep调用后放弃处理机,会引起调度程序重新进行调度,另外从核心态返回用户态时,如果有更高优先级进程,则也会引起调度; 2、调度算法 采用动态优先数轮转调度算法进行进程调度,如果有相同优先级,将处于就绪状态或被抢占状态最久的进程调度执行; 3、进程优先级的分类 第一类为核心优先级:分为可中断和不可中断两种,当软中断到达时,可中断进程被唤醒;第二类为用户级优先级,0级最高; 4、进程优先数的计算 优先数=最近使用CPU的时间/2+基本用户优先数,随占用CPU的时间增加,优先级降低; 5、进程切换 进程调度后,需要执行进程的上下文切换; 10.3 进程的同步与通信 10.3.1 sleep与wakeup同步机制 1、sleep过程 进入sleep后,提高处理机的运行优先级屏蔽中断,将进程设为“睡眠”状态,将进程放入睡眠队列,如果进程的睡眠不可中断,在做了进程上下文切换后,进程进入安稳睡眠。如果进程的睡眠可中断,则在进入睡眠前检测是否有软中断信号,如有,则不进入睡眠,而是响应软中断; 2、Wakeup 唤醒在指定事件队列上睡眠的所有进程,并将她们放入可被调度的进程队列中。如进程尚未装入内存,则唤醒对换进程,如果被唤醒进程优先级高于当前进程的优先级,则置调度标识,然后恢复处理机的运行级后返回; 10.3.2 信号机制 1、信号机制的基本概念 信号机制作为在同一用户的诸进程之间通信的简单工具

文档评论(0)

钱缘 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档