- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统_进程
Unix的进程状态之间的转换情况 运行 就绪 被抢占 被调度 等待 高优睡眠 低优睡眠 高优睡眠 低优睡眠 内存就绪 唤醒 等待事件 或资源 外存就绪 唤醒 换出 换出 换出 换入 等待 exit sleep sleep 谢 谢 ! 进 程 管理 LINUX UNIX 成员 进程控制块(PCB) PCB是进程的动态部分,不可见 PCBProcess Control Block 记录了OS控制和管理进程的所需的所有信息 是进程属性的动态描述(PCB在Linux中对应task_struct,也称为PD;PCB在Unix中对应于proc和user结构) 基本信息组成 进程标识(PID、父进程ID、家族关系、用户ID) 处理器状态及现场(寄存器状态、堆栈等) 进程控制信息(状态、优先权、资源情况等) Linux PCB(1)的内容及用途 Linux系统中的PCB 在Linux中,任务和进程是同一概念 Linux中的PCB即任务数据结构:task_strcut,也称为进程描述符PD (Processor Descriptor) 定义在include/linux/sched.h中 Linux PCB(2)的内容及用途 Linux PCB(task_struct) 包含进程所有信息 task_struct数据结构很庞大,但并不复杂,按功能将所有域划分: 1、进程状态(State) 2、进程调度信息(Scheduling Information) 3、各种标识符(Identifiers) 4、进程通信有关信息(IPC:Inter_Process Communication) 5、时间和定时器信息(Times and Timers) 6、进程链接信息(Links) 7、文件系统信息(File System) 8、虚拟内存信息(Virtual Memory) 9、页面管理信息(page) 10、对称多处理器(SMP)信息 11、和处理器相关的环境(上下文)信息(Processor Specific Context) 12、其它信息 Linux PCB(3)进程状态的设置、含义及转换情况 进程状态state 在Linux中任何进程,都处于6种状态之一 进程状态: 1、运行态或就绪态(可运行态),TASK_RUNNING(0) 等待态 2、可中断等待态,TASK_INTERRUPTIBLE(1) 3、不可中断等待态,TASK_UNINTERRUPTIBLE (2) 4、僵死态,TASK_STOPPED (4) 5、暂停态,TASK_ZOMBIE (8) 6、死亡态,TASK_DEAD (16) 请关注取值与Unix系统的差异! Linux PCB(4) 可运行状态 进程正在运行(运行态)、或者正准备运行(就绪态) 正在运行的进程就是当前进程 准备运行的进程只要得到CPU就可以立即投入运行,CPU是这些进程唯一等待的系统资源 可中断等待态、不可中断等待态 进程正等待某个事件(event)或某个资源 一定处于系统中的某个等待队列(wait_queue)中 两种等待态的差异: 可中断等待态:可被信号唤醒,被唤醒后进入可运行态,等待被调度; 不可中断等待态:因等待硬件资源,如某个通道、端口等,在任何情况下都不能被打断,直到资源满足。资源满足后只能用特定的方式来唤醒它,例如唤醒函数wake_up()等 Linux PCB(5) 暂停状态 进程暂时停止运行以接受某种特殊处理 通常当进程接收到SIGSTOP、SIGTSTP、SIGTTIN或 SIGTTOU信号后就处于这种状态(关于信号,将在第4章讲) 例如,正接受调试的进程就处于这种状态 僵死状态 进程执行了exit()函数后进入该状态,即进程被终止 此状态将由父进程执行wait()系统调用而“唤醒”,真正终止该进程,并回收其资源 处于该状态的进程是死进程,属于系统中的垃圾,必须进行相应处理以释放其占用的资源 死亡状态:僵死进程被父进程回收后的状态 Linux的进程状态之间的转换情况 linux案例撤销进程(1) 撤销进程的主要事务 释放占用资源,占用CPU时间累计到父进程 删除进程表中的该进程,释放PCB 转进程调度 被撤销的进程,不可能转任何进程状态 被撤销的进程生命周期结束 进程撤销的系统调用【exit(status)】不返回值 Linux中的进程撤销exit()函数 将进程设置为“僵死”状态 释放其所占用的资源 向父进程发进程“死”信号status 无返回值,父进程用wait()回收其占用CPU时间 linux案例撤销进程(2) 子进程终止,OS需做的工作 关闭软中断 回收资源(文件、内存、结构、i结点等) 记录相关数据(如占用CPU时间) 置该进程为“僵死”状态,并向
您可能关注的文档
最近下载
- 【外研社Unipus】新探索研究生英语(基础级)读写教程U6课件_AE2.pptx VIP
- 人教新起点五年级上册英语Unit2 lesson1课件.ppt VIP
- 脊柱常见病的介绍.pptx
- 英格索兰空压机操作培训.ppt VIP
- 机电专业毕业设计论文题目及机电一体化专业毕业论文.docx VIP
- 【外研社Unipus】新探索研究生英语(基础级)读写教程U1课件_AE1.pptx VIP
- 报价单范本完整版.doc VIP
- 2025年人教版七年级英语小升初暑假衔接:七上Starter Unit 2 Keep Tidy! 讲义(学生版+教师版).docx
- 2025年广东省中考英语试题卷(含标准答案及解析)+听力音频.docx
- XS9922B芯片用户指南_V1.3-海格.pdf
文档评论(0)