- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.8 Linux中的进程 Linux是一个多任务操作系统,它要尽量保证CPU始终在使用状态,如果某个正在运行的进程等待外部设备完成工作(例如等待打印机完成打印任务),这时,操作系统就可以选择其它进程运行,从而保持CPU的最大利用率,这就是多任务的基本思想。进程之间的切换由调度程序完成。 进程即程序的一次执行。从组成上看,进程可划分为三个部分:PCB、指令与数据。从动态执行的角度来看,进程可视为在操作系统(OS)根据PCB进行调度而分配的若干时间片内对程序的执行以及对数据的操作过程。 2.8.1 Linux进程控制块PCB Linux 内核利用一个数据结构(task_struct)标志一个进程的存在,表示每个进程的数据结构指针形成了一个task数组(Linux中,任务和进程是两个相同的术语),这种指针数组有时也称为指针向量。这个数组的大小默认为512,表明在Linux系统中能够同时运行的进程最多可有512个。当建立新进程的时候,Linux为新的进程分配一个task_struct结构,然后将其指针保存在task数组中。 task_struct结构的组成主要可分为如下几个部分: 1. 进程运行状态 Linux进程共有如下六种状态: ① TASK_RUNNING,当前运行进程以及运行队列中的进程都处于该状态中。进程调度 时,调度程序只在处于该状态的进程中选择优先级最高的进程来运行。 ② TASK_INTERRUPTIBLE,在等待队列中,可被信号中断的等待状态。收到信号后,进程可能停止或者重新插入到运行队列中。 ③ TASK_UNINTERRUPTIBLE,直接等待硬件状态,不可被中断。 ④ TASK_ZOMBIE,僵死状态。进程已经消亡,但其PCB仍存在task数组中。在进程退出时,将状态设为TASK_ZOMBIE,然后发送信号给父进程,由父进程在统计其中的一些数据后,释放它的task_struct结构。 ⑤ TASK_STOPPED,进程因接收到信号(如:SIGSTOP、SIGSTP、SIGTTIN、SIGTTOU)而停止或由于其它进程使用ptrace系统调用来跟踪而将控制权交回控制进程。 ⑥ TASK_SWAPPING,进程被交换到了交换区(2.0版中未实现)。 2. 用户标识信息 Linux使用用户标识符与组标识符来判断用户进程对文件和目录的访问许可。每个进程的task_struct中均有四对标识符。 uid、gid 执行该进程的用户的标识与组标识。在fork( )时,从父进程处继承。 (2) euid、egid (3) suid、sgid (4) fsuid、fsgid (5)struct task_struct *p_cptr 必威体育精装版的子进程指针,init_task的这个指针指向它自身。 (6)struct task_struct *p_ysptr 左兄弟进程指针。 (7)struct task_struct *p_osptr 右兄弟进程指针。 (8)struct wait_queue *wait_chldexit 等待队列,用于系统调用wait( ),等待子进程的返回。 root与pwd包含指向两个VFS索引节点的指针,这两个索引节点分别是进程的主目录以及进程的当前目录。索引节点中有一个引用计数器,当有新的进程指向某个索引节点时,该索引节点的引用计数器会增加计数。未被引用的索引节点的引用计数为0,因此,当包含在某个目录中的文件正在运行时,就无法删除这一目录,因为这一目录的引用计数大于0。 2.8.3 进程调度 1. 进程的调度策略 为了符合POSIX标准,Linux中实现了三种进程调度策略: ① SCHED_OTHER 一般进程。 ② SCHED_FIFO 先进先出(First In First out)的实时进程。 ③ SCHED_RR 轮转调度(Round Robin)方式执行的实时进程。 2.8.5 相关的系统调用 在表2.12中简要列出和进程及进程间通信相关的系统调用。在标志列中,各字母的意义为: m :手册页可查; + :POSIX
您可能关注的文档
最近下载
- 西门子S7-1500通过报文111实现对汇川SV660F伺服驱动器位置控制.docx VIP
- 通过InoDriverShop伺服调试软件连接汇川SV660F系列伺服的具体方法(以太网).docx VIP
- 12 《石钟山记》公开课一等奖创新教案统编版高中语文选择性必修下册.docx VIP
- 什么是智能体.docx VIP
- 2023年高考真题分类汇编:电磁学1.pdf VIP
- 伺服调试软件-InoDriverShop-用户手册.pdf VIP
- 个体工商户采购合同(通用).doc VIP
- 中央安全生产考核巡查明查暗访20项工作内容清单.pptx VIP
- 钢结构设计基础钢檩条设计檩条的布置连接与构造檀秋芬04课件讲解.pptx VIP
- 智能体与大模型的关系.docx VIP
有哪些信誉好的足球投注网站
文档评论(0)