我是靠谱客的博主 激情滑板,最近开发中收集的这篇文章主要介绍进程管理——进程实体一、进程的重要性二、进程的实体,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、进程的重要性

操作系统的基本功能是为了管理底层硬件资源,在没有配置操作系统之前,资源只属于当前运行的程序。这时的计算机只能运行一个程序,并且是一个程序接着一个程序的运行。当计算机运行某一个程序时,所有资源都属于这个程序,它不可能合理的利用系统的资源,因此配置了操作系统,引入了多道程序设计的概念。
有了OS之后,进程就出现了,它是为了合理的隔离相关资源和运行环境,提升资源的利用率

1.进程是系统进行资源分配和调度的基本单位。 有了多道程序设计的概念,操作系统就可以对多个程序进行资源的分配,进程就是资源分配的基本单位。

2. 进程是程序独立运行的载体,它保障程序的正常执行。 因为有多道程序设计概念,在计算机内有可能有多个进程共同的使用某一物理设备。CPU可能是多个进程使用的,进程在这里发挥着运行资源隔离的作用。

3.进程的存在使操作系统资源的利用率大幅提升。 同样依赖多道程序设计的概念。

操作系统需要使用进程更合理更高效的运行

二、进程的实体

主存中的进程形态

在主存中,进程是一段连续存储的空间,这一空间被称为进程控制块。进程控制块包括标识符、状态、优先级、程序计数器、内存指针、上下文数据、IO状态信息、记账信息等重要信息。

1.标识符
是标记进程的唯一符号,用来区别其他进程,进程ID指的就是唯一标识符。

2.状态
在进程控制块里专门存储进程的进程状态的区域

3.程序计数器
指向进程即将要执行的下一条指令的地址

4.内存指针
程序代码或者进程数据的相关指针,指针可能有多个,分别指向程序具体的逻辑代码,或者指向进程数据相关的地址

5.上下文数据
存储进程执行时处理器所存储的数据,处理器里面寄存器、高速缓存,这些数据就是进程的上下文数据

6.IO状态信息
存储被进程IO操作所占用的文件列表,在这里操作的磁盘、操作的内存、操作的文件都是以文件的形式存储在IO状态信息里

7.记账信息
存储进程使用CPU的时间、时钟数总和、或者其他的运行数据等,这些数据在调试或者获取状态的时候发挥作用

可以把上述区域分类为4个部分:进程的唯一标识符、进程处理机状态、进程调度信息、进程控制信息

进程控制块(PCB)
是进程里最重要的内容,它用于描述和控制进程运行的通用数据结构,每一个进程都有PCB;
用于记录进程当前状态和控制进程运行的全部信息;
PCB使得进程是能够独立运行的基本单位,即每一个进程都依赖进程控制块被OS所调度和控制。
PSB是OS进行调度时经常被读取的信息,所以它是常驻内存的,存放在系统专门开辟的PCB区域内。

进程与线程

一个进程里面可能有多个线程,即进程对线程是一对多的关系。

关于线程的一些概念:
首先它是OS进行运行调度的最小单位,操作系统对进程的调度实际上是对进程里面线程的调度;
线程是包含在进程当中,是进程里面实际运行的工作单位,也就说在进程里面实际运行的是线程
一个进程可以并发多个线程,每个线程去执行不同的任务,此时多线程运行就会很快

上面的部分详细的说明了进程是操作系统中进行资源分配的基本单位,也就是说一个进程是拥有资源的,而线程不拥有资源,它们共享进程的资源。

简单总结线程与进程

进程线程
资源资源分配的基本单位不拥有资源
调度独立调度的基本单位独立调度的最小单位
开销系统开销大系统开销小
通信进程间的通信IPC读写同一进程数据通信

最后

以上就是激情滑板为你收集整理的进程管理——进程实体一、进程的重要性二、进程的实体的全部内容,希望文章能够帮你解决进程管理——进程实体一、进程的重要性二、进程的实体所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部