进程的初步认识

目录

1、进程的概念

2、进程的管理

2.1 进程的描述

2.2 PCB的属性

2.3 进程的组织

3、进程的调度

3.1 两种执行方式

3.2 实现调度的属性

3.3 状态

3.4 优先级

3.5 上下文

3.6 记账信息


1、进程的概念

  进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。在一个操作系统中,每个独立执行的程序都可以称为一个进程,也就是一个正在运行的程序。

2、进程的管理

进程主要通过两个角度来进行管理,分别是描述和组织。

2.1 进程的描述

系统中专门有一个结构体描述进程的属性,这个结构体统称为“进程控制块”(PCB),一个进程就可以使用一个或多个PCB来表示。

2.2 PCB的属性

1、pid:进程的身份标识

每个进程都会有一个pid,同一时刻,不同进程之间的pid是不同的。

2、内存指针(一组属性)

每个进程在运行时,都会分配一定的内存空间,这个进程具体在哪里,分配的空间有哪些部分,都是通过一组指针来进行区分。

3、文件描述符表

一个进程也需要涉及到硬盘操作,就需要按照文件的方式来操作。当前进程关联的文件,都是通过文件描述符来描述进程持有的”硬盘资源“。

2.3 进程的组织

在系统中会使用类似于双向链表的数据结构来组织多个PCB。

创建进程,就是创建PCB并且把PCB插入到链表中。

销毁进程,就是把PCB从链表上删除并且释放。

展示进程,就相当于遍历链表的每个节点。

3、进程的调度

多个进程在CPU上执行,CPU会给每个进程分配使用权,这种机制就叫做进程的调度。

3.1 两种执行方式

1、并发执行

在一个CPU核心上,通过快速轮换的方式,执行多个进程,在宏观上是”同时执行“,微观上是”有先有后“,这种情况称为”并发“。

2、并行执行

如果两个进程同时在两个CPU核心上,微观上也是”同时进行“,称为”并行“。

平时使用并发来代指 并行和并发

3.2 实现调度的属性

 PCB中引用了一些属性,用来支持操作系统实现进程调度的效果。

 分别为 状态、优先级、上下文、记账信息。

3.3 状态

进程的状态分为两种,就绪状态和阻塞状态。

就绪状态

1、进程正在CPU上执行

2、进程时刻准备去CPU上执行

阻塞状态

某个进程的某个条件不具备,就导致进程无法参与CPU的调度执行。

3.4 优先级

操作系统在调度多个进程的时候,并非一视同仁,有些进程会给更高的优先级,优先调度。

3.5 上下文

进程从CPU离开之前,需要保存现场,把当前CPU中各种寄存器的状态,都记录到内存中,等到下次进程回到CPU上执行的时候,此时就可以把保存的这些寄存器的值恢复回去,进程就会沿着上次执行的位置,继续往后执行。

3.6 记账信息

通过优先级机制,对不同的进程分配了不同权重的资源,有可能会出现极端情况,所有的资源都会给某一个进程,其他进程一点也没有。

记账信息,会记录当前进程持有的CPU资源的情况,就可以作为操作系统调度进程的参考依据。


  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值