进程(Process)和操作系统(Operation System)

操作系统

操作系统是计算机中最重要的一个软件。

市面上最常见的操作系统有:windows,Linux,MacOs,IOS,Android。

操作系统的作用

操作系统的作用通俗讲是搞管理,可以分为对上和对下:对上是要给软件提供一个稳定的运行环境(我们现在后台所运行的各种软件,都是在Windows这个操作系统之上所运行的);对下是管理所有的硬件设备。

操作系统的还一个重要工作是会让用问题的程序只影响自身,而不去影响别的程序。

操作系统如何进行管理

操作系统进行管理分为描述和组织。

描述:操作系统要进行管理硬件资源和软件资源,需要一些“结构体”进行描述硬件和软件的属性。

组织:把若干个对象通过数据结构串起来,方便后续的增删改查。

操作系统的BUG

操作系统也会遇到BUG,例如windows会出现蓝屏情况(Windows特有的情况),这就是操作系统中的驱动程序(在操作系统内部运行)出现bug,导致蓝屏。

进程(Process)

操作系统要管理的软件和硬件资源很多,但进程这一软件资源很重要。

”运行起来的程序“在计算机术语中叫进程,当运行一个程序(双击一个.exe),就会在操作系统中生成一个或多个进程,每个进程都要消耗一定的系统资源。

在操纵系统中,进程是资源分配的基本单位。

进程管理

操作系统会对进程进行管理。

描述:操作系统会通过一些结构体把一个进程的关键属性描述出来——PCB((Process Controtll Block)进程控制块)

组织:操作系统会通过一些数据结构(最典型是链表)将上面得结构体对象串起来(不可以使用数据库表示进程,数据库本质上是在操作系统上的一个软件,数据库是先有数据结构,再有数据库)。

那么所谓的创建进程:创建一个新的PCB对象,将它插入链表。

销毁进程:将链表上的PCB对象进行删除,释放。

进程使用CPU资源(进程调度)

并行:同一时刻,两个处理器核心,分别运行两个进程。

并发:一个处理器核心,通过”分时复用“的方式,运行两个进程。

CPU中的处理器在同一时刻,要处理几百个进程,所以操作系统在实际执行过程中会同时进行并行和并发。

 

进程PCB的关键属性

1)PID(进程的ID)

进程在系统上的身份表示,不会重复(当前计算机,同一时刻)。

2)内存指令(一组/多个)

进程在执行时,要申请一系列的内存资源,因此,操作系统就要能够知道,每个进程的整个内存空间中分成了哪几个区域,每个区域什么样的作用。而通过内存指针,操作系统就可以知道,哪里可以找到数据,哪里可以找到指令。

这里体现了进程使用”内存资源“。

3)文件操作符表

硬盘资源,也是重要的资源,操作系统通过”文件“进行管理硬盘,进程在使用某一文件时,就是在访问相应的硬盘空间。

进程进行访问文件,需要打开文件才能访问,那么如果打开成功,就会得到一个文件描述符,而一个进程在运行时会打开多个文件,就会得到多个文件描述符,这些文件描述符通过数组/顺序表就得到了文件操作符表。

体现了进程使用硬盘资源。

4)状态

有些进程不方便被CPU调度执行,有些方便。

状态有很多种,其中最重要的两个:

就绪状态:进程随时可以调度到CPU上。

阻塞状态:进程随时可以进行调度。

5)优先级

CPU给进程分配的资源不同。

6)上下文

一个进程在进行运行的时候,会有一系列的中间状态,当进程被从CPU上调度走时,就需要把这一中间结果保存,等下次进程重新回到CPU上时,就把中间状态恢复,继续执行,类似于”存档“。

7)记账信息

PCB会在记录该进程在过去在CPU上一共执行了多久/执行了多少次。

可以识别出是不是某个进程太久没在CPU上执行。

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值