如何理解进程

目录

一、进程的概念 

二、进程中的状态切换

1、就绪态/运行态

2、阻塞态/休眠态

不可中断阻塞

可中断阻塞

3、终止态/僵尸态

4、停止态

 三、进程分配的资源

 四、进程的内存管理

五、进程标识


 

一、进程的概念 

   进程:顾名思义,就是一个完整执行程序的过程。没错,就是这么简单,但是在程序执行的过程之中,系统会为这个执行的程序分配内存资源,这些过程也包含在进程当中。

        进程是动态的,是程序的一次执行过程,有开始,有结束,包含了进程的创建、调度、消亡,是在内存空间中

        程序是静态的,没有执行的概念,一串二进制指令,在外存上存储的二进制文件

         如下图所示,每个进程都被CPU调度执行

  

  • 第一步:操作系统 管理程序的入队顺序,这个入队有操作系统管理分配
  • 第二步:CPU分配时间片给在队列中的程序,这个时间片控制程序运行的时间
  • 第三步:当程序拿到CPU配的时间片之后就执行该程序,否则程序在队列中就绪,不执行

二、进程中的状态切换

1、就绪态/运行态

        就绪态   是指进程已经准备好执行,只等待 CPU 的分配。此时,进程已经拥有了所有它执行所需的资源和条件,如程序代码、数据、以及系统资源等,只是因为 CPU 还没有分配给它,进程没有真正运行。

         运行态   :进程正在 CPU 上执行。就绪态拿到时间片运行后的状态

2、阻塞态/休眠态

不可中断阻塞

        当资源有效时,由操作系统唤醒,否则一直处于阻塞等待状态,此时处于休眠态,进程不占用 CPU 资源,操作系统可以将 CPU 分配给其他需要执行的进程

可中断阻塞

        当资源有效时,由操作系统唤醒,与不可中断阻塞的区别:处于可中断阻塞态进程可以被其他进程唤醒

        唤醒:当进程在休眠态时,它会被操作系统的某些事件唤醒。例如,当 I/O 操作完成、定时器到期,或者其他事件发生时,进程会从休眠态变为就绪态,重新进入调度队列,等待 CPU 的分配。

3、终止态/僵尸态

        终止态:表示进程结束但尚未消亡的一种状态,此时进程已经结束运行并释放大部分资源,比如还未释放进程控制块

        僵尸态:指的是一个进程已经终止执行,但仍然在系统的进程表中保留着其信息。这些信息包括进程的退出状态和一些统计信息,供其父进程在调用 wait 系统调用时获取

4、停止态

停止运行,暂时挂起,进程被暂停,通过其他进程唤醒

 

 三、进程分配的资源

        以进程为单位申请释放内存空间

        以进程为单位分配CPU资源和时间片

        以进程为单位管理自己的虚拟内存空间,在需要的时候映射到物理内存地址上

        以进程为单位分配文件描述符:1024个

 四、进程的内存管理

        操作系统为每个进程都分配4G的内存空间(虚拟内存空间)

        0~3G是用户内存空间(所有进程相互独立),3G~4G是内核内存空间(所有进程共享)

         注意:分配的内存是虚拟内存。虚拟内存是计算机系统内存管理的一种技术,旨在使应用程序在执行时能够使用比实际物理内存更大的内存空间。虚拟内存为每个运行的程序提供了一个统一的、连续的地址空间,独立于实际的物理内存。操作系统会为每个进程分配一个虚拟地址空间,这个地址空间可以远大于实际的物理内存。

 

在用户空间里面,会为进程运行分配资源,这些资源分配如下图: 

五、进程标识

        操作系统会给每个进程都分配一个编号,编号唯一,这个编号称之为进程号

        操作系统标识进程不是通过程序名,而是通过进程号(pid)

主要进程标识:

        进程号:PID(process id)

        父进程号:PPID(parent process id)

        进程组号:PGID,进程组:若干个进程的集合称之为进程组,默认情况下,新创建的进程会进程父进程的进程组ID

        会话组号:SID,会话组:若干个进程组的集合称之为会话组,默认情况下,新创建的进程会继承父进程的会话ID

 特殊的进程号:

        0:idle进程,操作系统引导程序进程,创建1 和2 进程

        1:init进程 初始化内核的各个模块,当内核启动完毕后,用于收养孤儿进程(没有父进程的进程)

        2:kthread进程 用于进程调度

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值