操作系统之进程的描述与控制1

进程的基本概念

  1. 进程的顺序执行及特征
    顺序性,封闭性,可再现性

  2. 前趋图和前趋关系
    有向无循环图

  3. 程序的并发执行
    这里写图片描述
    并发执行特征:

    • 失去间断性:多个程序共享资源
    • 不可再现性
    • 间断性:停停走走
  4. 进程的定义
    一个具有独立功能的程序在一个数据集合上的一次执行过程.
    进程是并发程序的一次执行过程,是系统进行资源分配和调度打基本单位.
    进程是可以和别的计算并发的计算.

    • 他是对虚拟处理机,虚拟存储设备的资源的分配和回收.
    • 引入多进程,提高了对硬件资源的利用率,但又带来额外的空间和时间开销,增加了OS的复杂性。
  5. 进程和程序的区别

    • 进程是动态的,程序是静态的,程序是有序代码的集合;进程是程序的执行.通常进程不可在计算机之间迁移.而程序通常对应着文件.
    • 进程是暂时的而程序是永久的 .进程是一个状态的变化过程,而程序可以长久保存.
    • 进程与程序的组成不同.进程是由PCB(进程控制块进程状态信息),程序和数据组成的.
      -进程和程序对应关系通过多次执行, 一个程序可对应多个进程,通过调用关系,一个进程可对应多个程序.
  6. 进程的特征与状态
    • 动态性
      进程由创建而产生,由调用而执行,由撤销而消亡.进程具有动态的地址空间.地址空间包括:
      • 代码:指令执行和CPU状态的改变
      • 数据:变量的生成和赋值
      • 系统信息:进程控制块PCB的创建和删除.
    • 独立性
      进程能够独立调度,独立运行,独立分配资源的基本单位.各进程的地址空间相互独立.
    • 异步性
      进程按照各自独立的,不可预知的速度前进.
    • 结构性
      进程由程序段,数据段和PCB段构成
      这里写图片描述
    • 并发性
      引入进程的目的是为了各个程序并发执行.
  7. 进程的基本状态和转换
    • 就绪状态
      得到了除了CPU以外所需要的所有系统资源
    • 执行状态
      已获得CPU,程序正在执行
    • 阻塞状态
      因等待某事件发生而暂时无法继续执行,从而放弃处理机,使程序执行处于暂停状态。阻塞队列
      引起阻塞的事件:请求I/O,申请缓存
      这里写图片描述
      进程的挂起状态(静止)
      活动——–静止
      内存——–外存
      这里写图片描述
  8. 进程控制块
    • PCB(Process Control Block)中记录了操作系统所需的,当前进程的运行情况和控制进程运行的全部信息.
    • os通过pcb对并发执行的进程进行控制和管理,是进程存在的唯一标志.
    • 进程可以被os的多个模块进行读或修改,如被调度程序,资源分配模块,中断处理程序,以及监督和分析程序进行读和写.
    • 程序经常被系统访问,故应称常驻模块.
      这里写图片描述

9.进程块结构

  1. 进程标识符
    • os内部标识符:系统内制定的编号
    • 外部标识符号:系统外制定的编号
  2. 进程处理机状态
    • 通用寄存器
    • 指令计数器
    • 程序状态字
    • 用户栈指针
  3. 进程调度信息
    • 进程状态
    • 进程优先级
    • 与调度算法有关的信息
    • 等待事件
  4. 进程控制信息
    • 程序地址
    • 同步通信机制
    • 资源清单
    • 链表指针
  5. 执行程序开始地址
  6. CPU现场保护区
  7. 进程通信
  8. 家族联系
  9. 占有资源清单

10 进程控制块的组织方式
- 链接方式:将统一状态的PCB,用其链接字链接成一个队列,就绪队列,阻塞队列
- 索引方式:系统根据所有进程的状态建立相应的索引表,就绪索引表,阻塞索引表
这里写图片描述

进程的控制

  1. 进程管理最关键的就是进程的控制,进程控制一般由操作系统的内核实现.
  2. OS内核:将系统中与硬件息息相关的模块,以及运行频率较高的常用的模块组合起来放到靠近硬件的一层,以提高系统的效率,称之为系统的内核.OS内核是内存常驻数据和程序.
  3. 内核是执行各种原语操作来实现进程的控制和管理功能.
  4. 由若干条指令构成的原子操作,作为一个整体而不可分割.要么全都完成,要么全都不做.许多系统调用就是原语.进程控制原语:进程撤销,进程创建,进程阻塞,进程唤醒,进程挂起与激活
    这里写图片描述

1.进程的创建
- 引起创建进程的事件
用户登录、作业调度、提供服务、应用请求
- 原语Creat( )按下述步骤创建一个新进程
(1)申请空白PCB:若无空闲PCB, 则创建失败
(2)为新进程分配资源:内存大小——用户提供(作业说明书);应用进程提供;系统默认分配
(3)初始化PCB:ppid、uid; 程序计数器=程序入口地址;将进程状态设置为就绪状态或静止就绪状态;设置优先级
(4)插入就绪进程队列
2.进程撤销
- 引起进程终止的事件
正常结束:执行到最后的结束指令,产生中断
异常结束:出现错误或因故障而被迫终止(如等待超时)
外界干扰:进程应外界的请求而终止运行(父进程终止)
- 进程撤消的过程
(1)从PCB集合中检索该进程的PCB,从中读出该进程的状态。
(2)若处于执行状态,终止该进程的执行,并置调度标志为真,重新调度。
(3)若有子孙进程,将所有子孙进程终止。
(4)将进程全部资源归还其父进程或系统。
(5)将其PCB从所在队列中移出。
3进程阻塞
-引起阻塞的事件
请求系统服务、启动某种操作、新数据尚未到达、无新工作可做(系统进程阻塞自己)
-进程的阻塞是进程自身的一种主动行为。
进程阻塞的过程(由阻塞原语BLOCK( )完成)
这里写图片描述
引起唤醒的事件—与引起阻塞的事件相对应:I/O完成,所期待的数据已经到达
进程唤醒的过程(由唤醒原语WAKEUP( )完成)
这里写图片描述
阻塞原语与唤醒原语要匹配使用,以免造成“永久阻塞”
进程挂起(由挂起原语SUSPEND( )完成)
引起挂起的事件:如用户进程请求将自己挂起,或父进程请求将自己的某个子进程挂起
过程:检查被挂进程的状态,改为相应的挂起状态;把进程的PCB复制到指定的区域;最后,转向调度程序重新调度。
进程激活(由激活原语ACTIVE( )完成)
发生激活的事件:如父进程或用户进程请求激活进程
过程:先将进程从外存调入内存;检查该进程的现行状态,改为相应的活动状态;根据优先级确定是否需要重新调度

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值