进程的三态模型

三态模型:在多道程序系统中,进程在处理器上交替运行,状态也不断地发生变化。进程一般有3种基本状态:运行、就绪和阻塞。

(1)运行:当一个进程在处理机上运行时,则称该进程处于运行状态。处于此状态的进程的数目小于等于处理器的数目,对于单处理机系统,处于运行状态的进程只有一个。在没有其他进程可以执行时(如所有进程都在阻塞状态),通常会自动执行系统的空闲进程。

(2)就绪:当一个进程获得了除处理机以外的一切所需资源,一旦得到处理机即可运行,则称此进程处于就绪状态。就绪进程可以按多个优先级来划分队列。例如,当一个进程由于时间片用完而进入就绪状态时,排入低优先级队列;当进程由I/O操作完成而进入就绪状态时,排入高优先级队列。

(3)阻塞:也称为等待或睡眠状态,一个进程正在等待某一事件发生(例如请求I/O而等待I/O完成等)而暂时停止运行,这时即使把处理机分配给进程也无法运行,故称该进程处于阻塞状态。

时间: 2024-08-07 05:14:28

进程的三态模型的相关文章

原创:Twemproxy源码分析之三:其进程以及时间模型

概述:本来自己写了一篇,但是看到http://www.tuicool.com/articles/NfqeEf这篇更好,于是就算转载过来了吧.下一篇我们会讲到twemproxy的核心,即其转发响应转发请求. 作为一个proxy服务,我们应该深入了解它的进程和事件模型. 进程模型: 通过grep代码,查找fork()和pthread_create()函数的调用,并分析调用者两个函数的代码.我们可以看到twemproxy使用的是单进程单线程来处理请求,另外有一个线程来处理统计数据,但并不参与处理请求功

进程与线程(二) java进程的内存模型

从我出生那天起,我就知道我有个兄弟,他桀骜不驯,但实力强悍 ,人家都叫它C+++            ----java 上回说到了,C进程的内存分配,那么一个java运行过程也是一个进程,java内存是如何分配的呢? http://blog.csdn.net/shimiso/article/details/8595564 详情请看:http://blog.csdn.net/a859522265/article/details/7282817 1.学习java,学过java多线程,没有学过多进程

[linux] 进程五状态模型

运行态:该进程正在执行:就绪态:进程做好了准备,只要有机会就开始执行:阻塞态:进程在某些事件发生前不能执行,如I/O 操作完成:新建态:刚刚创建的进程,操作系统还没有把它加入到可执行进程组中.通常是进程控制块已经创建但还没有加载到内存中的新进程:退出态:操作系统从可执行进程组中释放出的进程,或者是因为它自身停止了,或者是因为某种原因被取消. 进程的三态转换 原文地址:https://www.cnblogs.com/taoshihan/p/11279814.html

操作系统介绍-操作系统历史,IO,进程的三态,同步异步阻塞非阻塞

1.操作系统历史 2.进程,IO,同步异步阻塞非阻塞 操作系统历史: 手工操作: 1946年第一台计算机诞生--20世纪50年代中期,计算机工作还在采用手工操作方式.此时还没有操作系统的概念. 手工操作方式两个特点: (1)用户独占全机.不会出现因资源已被其他用户占用而等待的现象,但资源的利用率低. (2)CPU 等待手工操作.CPU的利用不充分. 批处理-磁带操作: 主机与输入机之间增加一个存储设备--磁带,在运行于主机上的监督程序的自动控制下,计算机可自动完成:成批地把输入机上的用户作业读入

基于toyix的进程和轻权进程的学习

我们在平时的计算机课上学习过进程,知道程序的执行的背后其实就是进程在进行一些操作.大家都知道打开windows的任务管理器可以看到正在运行的进程,当程序卡死时,可以在任务管理器里强制关闭相关程序的进程,这样就可以关闭卡死的程序,所以我们知道进程就是程序执行所产生的,但是我们对进程没有很清楚的认识.什么是进程?进程在程序的执行过程中到底起了什么样的作用?我们在toyix平台上来对进程进行研究学习. 一.什么是toyix? Toyix是王爽老师为了进行操作系统基础理论教学而开发的一个系统.它的特点是

一文理解进程与线程 ---操作系统

进程与线程 进程: 百度百科的定义:   进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础.在早期面向进程设计的计算机结构中,进程是程序的基本执行实体:在当代面向线程设计的计算机结构中,进程是线程的容器.程序是指令.数据及其组织形式的描述,进程是程序的实体. 个人理解: 进程是可并发程序执行的时候的一个实例.从内核的观点看,进程的目的就是分配系统资源(CPU时间,内存等)和调度的基本单位 线程: 百度百科的定义:  

线程,锁,高并发

线程 线程(英语:thread)是操作系统能够进行运算调度的最小单位.它被包含在进程之中,是进程中的实际运作单位.一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务.Java 虚拟机允许应用程序并发地运行多个执行线程. Thread类:该类的对象代表一个线程 主要方法: Start()方法: Java虚拟机调用该线程的 run 方法,使该线程开始执行(启动线程) sleep()方法: 限时等待 休眠,sleep有时间 join()方法: 当前线程进入

第一次作业:深入Linux源码分析其进程模型

一.进程 1.进程的概念 (1)进程:Process,是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础. (2)进程由程序.数据和进程控制块PCB组成.当系统创建一个进程时,实际上是建立一个PCB.当进程消失时,实际上是撤销PCB.在进程活动的整个生命周期内,系统通过PCB对进程进行管理和调度. 2.查看进程状态 (1)ps指令(常用组合:aux.ef.eFH.-eo.axo) (2)示例 # ps  aux:显示所有与终端有无关联的进程信

第一次作业:关于Linux进程模型的分析

1.前言 本文主要基于Linux Kernel 2.6.32 的源码,对Linux的进程模型进行分析,大致可以概括为如下内容: 1.前言 2.进程介绍 3.操作系统如何组织进程 4.进程状态的转化 5.进程的调度 6.参考资料 2.进程介绍 2.1 进程的概念 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础.在早期面向进程设计的计算机结构中,进程是程序的基本执行实体:在当代面向线程设计的计算机结构中,进程是线程的容器