美文网首页
操作系统--进程

操作系统--进程

作者: 杨帅iOS | 来源:发表于2021-06-08 10:53 被阅读0次

一 进程的定义

进程是指一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程

进程的组成

进程包含了正在运行的一个程序的所有状态信息

代码
系统初始化(init)
正在运行的程序执行了创建进程的系统调用(比如 fork)
用户请求创建一个新进程
初始化一个批处理工作
数据
状态寄存器--CPU状态CR0,指令指针IP
通用寄存器--AX BX XX....
进程占用系统资源--打开文件,已分配内存...

进程的特点

动态性--可动态创建与结束进程
并发性--进程可以被独立调度并占用CPU运行
独立性--不同进程工作不互相影响
制约性--因访问共享资源/数据或进程间同步而产生制约

二 进程与程序的联系

进程是操作系统对于执行状态程序的抽象

程序 = 文件(静态的可执行文件)
进程 = 执行中的程序 = 程序+执行状态

统一程序的多次执行过程对应不同进程

如命令"xxx"的多次执行对应多个进程

进程执行需要的资源

内存--保存代码和数据
CPU--执行指令

进程与程序的区别

进程是动态的,程序是静态的

程序是有序代码的集合
进程是程序的执行,进程有内核态与用户态的切换

进程是暂时的,程序是永久的

进程是一个状态变化的过程
程序可长久保存在磁盘中

进行与程序组成不同

进程的组成包括程序 数据和进程控制块

三 进程的生命周期

进程创建

系统初始化(init)
正在运行的程序执行了创建进程的系统调用(比如 fork)
用户请求创建一个新进程
初始化一个批处理工作

进程执行

内核选择一个就绪的进程,让它占用CPU并执行

进程等待

进程进入等待(阻塞)的情况:
请求并等待系统服务,无法马上完成
启动某种操作,无法马上完成
需要的数据没有到达
只有进程自身才知道何时需要某种事件的发生,不会由于外部原因进入等待

进程抢占

进程被抢占的情况:
高优先级的进程就绪状态,需要马上进入执行状态,会将当前进程变成就绪状态.
当前进程执行当前时间超出最长时间,内核会让下一个进程运行

进程唤醒

唤醒进程的情况:
被阻塞进程需要的资源已经被满足
被阻塞进程等待事件到达
进程只能被别的进程或者操作系统唤醒

进程结束

唤醒结束的情况:
正常退出 错误退出 致命错误 被其他进程所杀

四 进程的状态以及切换

就绪状态

当进程已分配到除CPU以外的所有必要资源后,只要再获得CPU,便可立即执行,这种状态称为就绪状态

执行状态

进程已获得CPU,其程序正在执行

阻塞状态

正在执行的进程由于发生某事件而暂时无法继续执行时,便放弃CPU而处于暂停状态,亦即进程的执行受到阻塞,把这种暂停状态称为阻塞状态,有时也称为等待状态或封锁状态。比如进程当中调用wait()函数,会使得进程进入到阻塞状态。

创建状态与结束状态为辅助状态

五种状态的转换关系图

挂起状态

在不少系统中进程只有上述三种状态,但在另一些系统中,又增加了一些新状态,最重要的是挂起状态。引入挂起状态的原因有:
终端用户的请求。当终端用户在自己的程序运行期间发现有可疑问题时,希望暂时使自己的程序静止下来。
父进程请求。有时父进程希望挂起自己的某个子进程,以便考查和修改该子进程,或者协调各子进程间的活动。
负荷调节的需要。当实时系统中的工作负荷较重,已可能影响到对实时任务的控制时,可由系统把一些不重要的进程挂起,以保证系统能正常运行。
操作系统的需要。操作系统有时希望挂起某些进程,以便检查运行中的资源使用情况或进行记账。


具有挂起状态的转换图

相关文章

  • 进程和线程的理解

    进程:对于操作系统而言,进程是整个现代操作系统的核心根本,操作系统是以进程为单位执行任务。 线程:随着技术的发展,...

  • 43.进程和线程和事件循环

    操作系统-进程-线程 线程和进程是操作系统中的两个概念: 进程(process):计算机已经运行的程序,是操作系统...

  • 并发编程的理论基石

    一、进程和线程 1.操作系统、进程、线程的关系 操作系统是包含多个进程的容器,而每个进程又是容纳多个线程的容器。 ...

  • 这次进程、线程、多线程和线程安全问题,一次性帮你全解决了

    1. 什么是进程 一个软件,在操作系统中运行时,我们称其为进程。 进程是操作系统分配资源的最小单元,线程是操作系统...

  • 1-3节linux系统编程

    进程创建和调度 1)进程 进程:程序的一次执行在操作系统中的影像进程控制块(PCB):对于操作系统来说,PCB即代...

  • 第9天续,进程

    @(python)[笔记] 目录 一、什么是进程 1.1 进程的概念 进程的概念起源于操作系统,是操作系统最核心的...

  • 操作系统总览

    操作系统的 操作系统的用户界面 进程管理 处理机调度 存储管理 进程和存储管理示例 windows进程和内存管理 ...

  • s9python并发编程

    python之路——操作系统的发展史python之路——博客目录 书籍推荐:现代操作系统 进程 进程 join()...

  • 进程间通讯

    进程间通讯原理 现代操作系统的运行模式都是在保护模式。进程运行在虚拟内存中,进程之间相互隔离,进程成为了操作系统分...

  • 2 操作系统的进程,处理机调度与死锁

    # 2.1 操作系统的进程 ## 2.1.1 操作系统进程的引入 ### “史前时代”——前趋图 一:最早,程序采...

网友评论

      本文标题:操作系统--进程

      本文链接:https://www.haomeiwen.com/subject/wqqreltx.html