码迷,mamicode.com
首页 > 系统相关 > 详细

进程管理~

时间:2018-12-08 13:34:21      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:存在   功能   逻辑运算   清单   标识   请求   情况   操作系统   顺序   

未配置操作系统  程序是顺序执行。

多道程序系统的 程序是并发执行。

   有间断性

   失去封闭性

   不可再现性

间断性又 导致 进程有 三个基本状态。

就绪状态(多个进程等待,就绪队列)获得除cpu以为的全部资源,只要一得到cpu立刻执行。

执行状态  

阻塞状态(正在执行的进程因为发生事件无法执行 阻塞)

       挂起状态是新增的最重要的状态。(可以定义为暂时被淘汰出内存的进程)

     引起挂起的原因:

   工作负荷比较重

  终端用户请求

  父进程请求(a进程创建了b进程,那么a进程就是b进程的父进程),挂起某个子进程以协调各子进程的关系。

    操作系统请求 需要检查运行资源

 

除了以上状态,还有两个比较常见的 创建 和终止

   创建状态:新建一个进程,分配一个PCB(进程管理和控制信息,进行控制块。多道程序并发时根据pcb控制多个程序并发。),填写进程标识符等信息。但是此时主存等还没分配,暂时不能调度。就是创建状态。

当获得主存等资源后以及对其初始化后,就能变成就绪状态。

    终止状态::等操作状态做善后,清零pcb,返还资源。

      进程控制块:系统将所有的 PCB 组织成若 干个链表(或队列),存放在操作系统中专门开辟的 PCB 区内。例如在 Linux 系统中用 task_struct 数据结构来描述每个进程的进程控制块,在 Windows 操作系统中则使用一个执行 体进程块(EPROCESS)来表示进程对象的基本属性。 

          进程控制块主要包含下面四个信息:

  进程标识符

    内标识符:进程编号

    外标识符:描述进程家族之间关系。

  CPU状态信息:由寄存器的内容决定(比如通用寄存器:用于传送和暂存数据,也可参与算术逻辑运算,并保存运算结果。除此之外,它们还各自具有一些特殊功能。 指令计数器, 程序状态字  用户栈指针,)。如果突然中断,保存在PCB的信息可以从断点处接着执行。

  调度信息:进程状态,优先级,进程其他信息(已等待cpu时间总和等)事件(阻塞原因等)

  进程控制信息:

数据和程序地址,需要的资源清单,进程同步和通信机制,链接指针---指向下一个PCB的地址。

进程控制块的组织方式:

  链接方式  :相同状态Pcb组成一个队列。因此有阻塞队列,就绪队列,空白队列等

(线性表方式:不论进程的状态如何,将所有的PCB连续地存放在内存的系统区。这种方式适用于系统中进程数目不多的情况。)
索引表方式:该方式是线性表方式的改进,系统按照进程的状态分别建立就绪索引表、阻塞索引表 。
 
 
 
进程控制:  创建一个新进程,终止一个进程,终止一个因为某事件无法执行的进程。实现进程之间状态转换。

进程管理~

标签:存在   功能   逻辑运算   清单   标识   请求   情况   操作系统   顺序   

原文地址:https://www.cnblogs.com/yizhizhangBlog/p/10087102.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!