现代操作系统(第四版)————进程

目录

一、进程的模型

二、进程的创建

三、进程的终止

四、进程的层次结构

五、进程的状态

六、进程的实现


在操作系统中引入“进程”概念的主要目的是描述程序动态执行过程的性质

操作系统中最核心的概念就是进程这是对正在运行程序的一个抽象
 

一、进程的模型

一个进程是某种类型的一个活动,他有程序、输入、输出以及状态。单个处理器可以被若干进程共享,它使用某种调度算法决定何时停止一个进程的工作,并转而为另一个进程提供服务。

举例:

二、进程的创建

四种主要事件会导致进程的创建

  1. 系统初始化
  2. 正在运行的程序执行了创建进程的系统调用
  3. 用户请求创建一个新进程
  4. 一个批处理作业的初始化

启动操作系统时,通常会创建若干个进程。

其中有些是前台进程,也就是同用户交互并且替他们完成工作的那些进程

有些是后台进程,这些进程与特定用户没有关系,却具有某些专门的功能

停留在后台处理诸如电子邮件、Web页面、新闻、打印之类活动的进程称为守护进程。

并发性是指两个或多个事件在同一时间间隔内发生

并行性主要指的是硬件上的概念,是指两个或多个事件在同一时刻发生。

三、进程的终止

通常由下列条件引起:

1、正常退出(自愿的)

2、出错退出(自愿的)

3、严重错误(非自愿的)

4、被其他进程杀死(非自愿的)

四、进程的层次结构

某些系统中,当进程创建了另一个进程后,父进程和子进程就以某种形式继续保持关联。

子进程自身可以创建更多进程,组成一个进程的层次结构。

进程只有一个父进程(但是可以有零个、一个、两个或多个子进程)。

进程的结构是:进程=进程控制块PCB+程序+数据集合

进程在系统中是否存在的唯一标志是进程控制块

进程控制块是进程实体的一部分,是操作系统中最重要的记录型数据结构。

它记录了操作系统所需的、用于描述进程情况及控制进程运行所需的全部信息。

进程控制块的作用,是使一个在多道程序环境下不能独立运行的程序(含数据)成为一个能独立运行的基本单位,一个能与其他进程并发执行的进程。或者说,操作系统是根据PCB来对并发执行的进程进行控制和管理的。

在进程的整个生命期中,系统总是通过进程控制块对进程进行控制,也就是说,系统是根据进程的进程控制块感知到该进程的存在的,所以说,进程控制块是进程存在的标志。

五、进程的状态

1、运行态(该时刻进程实际占用CPU)。

2、就绪态(可运行,但因为其他进程正在运行而暂时停止)。

3、阻塞态(除非某种外部事件发生,否则进程不能运行)。

六、进程的实现

为了实现进程模型,操作系统维护着一张表格(一个结构数组),即进程表。

每一个进程占用一个进程表项(进程控制块),该表项包含了进程状态的重要信息,包括程序计数器、堆栈指针、内存分配状况、所打开文件的状态、账号信息和调度信息,以及其他进程由运行态转换到就绪态或阻塞态时必须保存的信息,从而保证该进程随后能再次启动,好像从未被中断过一样

与每一I/O类关联的是一个称作中断向量的位置(靠近内存底部的固定区域)。它包含中断服务程序的入口地址。

中断指当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。当执行完一条指令后,准备执行下一条指令,当前就需要检查有无中断事件发生

七、多道程序设计

计算机的早期,多任务被称作多道程序。多道程序是令CPU一次读取多个程序放入内存,先运行第一个程序直到它出现了I/O操作,因为I/O操作慢,CPU需要等待。为了提高CPU利用率,此时运行第二个程序。

计算机系统中引入多道程序设计的目的在于提高CPU利用率

多道程序设计的环境中,必须对存储的信息采取各种保护措施,其目的是防止各道进程相互之间的干扰,甚至破坏。一个分区一般分给一个进程独占使用,磁盘和临界区访问不属于存储管理的范围。

发布了151 篇原创文章 · 获赞 11 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_41808387/article/details/104837415