进程管理~

Posted yizhizhangblog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进程管理~相关的知识,希望对你有一定的参考价值。

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

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

   有间断性

   失去封闭性

   不可再现性

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

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

执行状态  

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

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

     引起挂起的原因:

   工作负荷比较重

  终端用户请求

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

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

 

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

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

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

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

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

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

  进程标识符

    内标识符:进程编号

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

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

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

  进程控制信息:

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

进程控制块的组织方式:

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

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

以上是关于进程管理~的主要内容,如果未能解决你的问题,请参考以下文章

进程管理 os编程

进程管理内存管理存储管理初步了解

Linux系统管理-进程管理

22. Linux的进程管理

进程管理之top命令

任务管理器 里面的进程