操作系统概论-笔记1进程管理

进程:操作系统资源分配与程序独立运行的基本单位

  1. 进程的特征:
  • 结构特征
    • 为使程序(含数据)能独立运行,应为之配置一进程控制块即 PCB(Process Control Block);而由程序段、相关的数据段PCB 三部分便构成了进程实体
  • 动态性
    • 进程的实质是进程实体的一次执行过程;动态性表现在:它由创建而产生,由调度而执行,由撤消而消亡。程序则只是一组有序指令的集合
  • 并发性
    • 引入进程的目的也正是为了使其进程实体能和其它进程实体并发执行
  • 独立性
    • 进程实体是一个能独立运行、独立分配资源和独立接受调度的基本单位
  • 异步性
    • 进程实体按异步方式运行
  1. 进程定义:
  • 进程是程序的一次执行。
  • 进程是一个程序及其数据在处理机上顺序执行时所发生的活动。
  • 进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。
  • 进程是进程实体的运行过程,是系统进行资源分配调度的一个独立单位
  1. 进程的基本状态:
  • 就绪状态
    • 当进程已分配到除 CPU 以外的所有必要资源后,只要再获得 CPU,便可立即执行
  • 执行状态
    • 在多处理机系统中,则有多个进程处于执行状态
  • 阻塞状态
    • 正在执行的进程由于发生某事件而暂时无法继续执行时,便放弃处理机而处于暂停状态
    • 致使进程阻塞的典型事件有:请求 I/O,申请缓冲空间等
  • 创建状态
    • 当一个新进程被创建时,系统为其分配了 PCB 和进程标识等信息,但由于该进程所必需的资源尚未分配,如主存等;所以不处于就绪状态
  • 终止状态
许可
进程调度
中断
时间片完
中断完成
释放资源
创建
就绪
执行
阻塞
终止
  1. 进程控制块

为了描述和控制进程的运行,系统为每个进程定义了一个数据结构——进程控制块 PCB(Process Control Block),它是进程实体的一部分。
PCB 中记录了操作系统所需的、用于描述进程的当前情况以及控制进程运行的全部信 息。
PCB 可以被操作系统中的多个模块读或修改,如被调度程序资源分配 程序中断处理程序以及监督和分析程序等读或修改。

  1. 进程控制块中的信息
  • 进程标识符
    • 进程标识符用于惟一地标识一个进程
  • 处理机状态
    • 主要是由处理机的各种寄存器中的内容组成
    • 处理机在运行时,许 多信息都放在寄存器中。当处理机被中断时,所有这些信息都必须保存在 PCB 中,以便在 该进程重新执行时,能从断点继续执行。
      • 通用寄存器 : 是用户程序可以访问的,用于暂存信息
      • 指令计数器 : 存放了下一条指令的地址
      • 程序状态字 PSW : 其中含有状态信息,如条件码、执行方式、中断屏蔽标志等
      • 用户栈指针 : 每个用户进程都有一个或若干个与之相关的系统栈,用 于存放过程和系统调用参数及调用地址
  • 进程调度信息
    • 进程状态,指明进 程的当前状态,作为进程调度和对换时的依据;
    • 进程优先级,用于描述进程使用处理机 的优先级别
    • 进程调度所需的其它信息, 它们与所采用的进程调度算法有关
    • 事件,指进程由执行状态转变为阻塞状态所等待发生的事件
  • 进程控制信息
    • 程序和数据的地址,指进程的程序和数据所在的内存或外存地 (首)址,以便再调度到该进程执行时,能从 PCB 中找到其程序和数据
    • 进程同步和通信 机制,指实现进程同步和进程通信时必需的机制,如消息队列指针、信号量等
    • 资源清单,即一张列出了除 CPU 以外的、进程所需的全部 资源及已经分配到该进程的资源的清单
    • 链接指针,它给出了本进程(PCB)所在队列中 的下一个进程的 PCB 的首地址。
  1. 进程控制块的组织方式
  • 链接方式
  • 索引方式
  1. 进程控制

进程控制一般是由 OS 的内核中的原语来实现的。
原语(Primitive)是由若干条指令组成的,用于完成一定功能的一个过程。它与一般过程 的区别在于:它们是“原子操作(Action Operation)”。原子操作在管态下执行,常驻内存。

原语的作用是为了实现进程的通信和控制,系统对进程的控制如不使用原语,就会造 成其状态的不确定性,从而达不到进程控制的目的。

  1. 进程的创建过程

一旦操作系统发现了要求创建新进程的事件后,便调用进程创建原语 按下述步骤创建一个新进程:

  • 申请空白 PCB
  • 为新进程分配资源 : 内存空间
  • 初始化进程控制块
  • 将新进程插入就绪队列
  1. 进程的终止过程
  • 根据被终止进程的标识符,从 PCB 集合中检索出该进程的 PCB,从中读出该进程
    的状态。
  • 若被终止进程正处于执行状态,应立即终止该进程的执行,并置调度标志为真,用
    于指示该进程被终止后应重新进行调度。
  • 若该进程还有子孙进程,还应将其所有子孙进程予以终止,以防它们成为不可控的
    进程。
  • 将被终止进程所拥有的全部资源,或者归还给其父进程,或者归还给系统。
  • 将被终止进程(PCB)从所在队列(或链表)中移出,等待其他程序来搜集信息。
  1. 进程阻塞过程

  2. 进程唤醒过程

  3. 进程同步

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值