关键词:
本文基于张尧学老师编写的《计算机操作系统教程(第4版)》第三章。
本文主要讲解如何引出进程这个概念。
现代操作系统的重要特点是在保证安全的前提下,程序并发执行,系统所拥有的资源被共享和系统的用户随机使用。采用一个什么样的概念来描述计算程序的执行过程和作为资源分配的基本单位,才能反映计算的特点了?这个概念就是进程。为理解进程的概念以及引入进程概念的必要性,下面从操作系统的特点讲起。
一、程序的并发执行
为讲清这个概念,我们先要弄清楚什么是程序,程序的执行,以及最后的程序的并发执行
1、程序
程序描述计算机索要完成的具有独立功能的,并在时间上按严格次序前后相继的计算机操作序列的集合,是一个静态的概念。
2、程序执行
程序的执行可以分为顺序执行和并发执行。
把一个具有独立功能的程序独占处理机直到最终结束的过程称为顺序执行。计算的CPU是通过时序脉冲来控制执行命令的。程序的顺序执行有以下特点:
a)顺序性
程序顺序执行时,其执行过程可看作一系列严格按照程序规定的状态转移过程,也就是每执行一条指令,系统将从上一个执行状态转移到下一个执行状态,且上一条指令的执行结束是下一条指令执行开始的充分条件。(个人理解:必须一条指令执行完了,下一条才开始);
b)封闭性
程序执行的最终结果由给定的初始条件决定,不受外界因素影响。
c)可再现性
程序执行的最终结果可再现。即,与执行速度无关,只有初始条件相同,则不论何时重复执行程序都会得到相同结果。
3、程序的并发(concurrent)执行
在许多情况下计算机需要能够同时处理多个具有独立功能的程序,其执行环境具有以下特点:
独立性:逻辑上独立,若资源充沛,每道程序都可以独立执行,执行速度与其他程序无关,起讫时间也独立;
随机性:程序和数据的输入和执行开始时间都是随机的;
资源共享性:即包括硬件也包括软件。
a)什么是程序的并发执行?
程序的并发执行时为增加计算系统的处理能力和提高资源利用率所采用的一种同时操作技术。
分为两种:一种是多道程序系统的程序执行环境变化(见上)所引起的多道程序的并发执行,(资源有限,资源的共享与竞争)多道程序的并发执行在宏观上是同时进行的,但在微观上(也就是执行级上)仍是顺序执行;一种是某道程序的几个程序段中包含着一部分可以同时执行或顺序颠倒执行的代码。
程序的并发执行总结为:一组在逻辑上互相独立的程序或程序段在执行过程中,其执行时间在客观上互相重叠,即,一个程序段的执行尚未结束,另一个程序段的执行已经开始的这种执行方式。
b)程序的并发执行带来的影响
好处:充分的利用了系统资源,从而提高系统的处理能力;另一方面,由于资源共享和竞争,改变了程序的执行速度。一般情况下,并发执行的各程序段如果共享软、硬件资源,都会造成其执行结果其执行速度影响的局面(封闭性和可再现性),为了控制和协调各程序段执行过程中的软、硬件资源的共享和竞争,必须应该有一个描述各程序段执行过程和共享资源的基本单位,即,进程。
二、进程的定义
进程是并发执行的程序在执行过程中分配和管理资源的基本单位,主要注意进程是一个动态的执行过程的概念。
进程和程序的区别和联系:
a)进程是一个动态概念,而程序是一个静态的概念。程序是指令的有序集合,没有任何执行的意义,而进程则强调执行过程,它动态被创建,并被调度执行消亡。如果把程序比作菜谱,那么进程就是按照菜谱炒菜的过程。
b)进程具有并发特点。进程具有并发特征的两个方面:独立性和异步性-----不考虑资源的情况下,各进程的执行是独立的,速度是异步的,而程序没有并发特征。
c)进程是竞争计算系统资源的基本单位,从而其并发性受到系统自己的制约,这里,制约就是对程序独立性和异步性的限制。
d)不同的进程可以包含同一程序,只要改程序所对应的数据集不同。
进程概念
进程概念进程是一个动态的概念,程序是个静态的文件。内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、安全功能等Process:运行中的程序的一个副本,是被载入内存的一个指令集合进程ID(ProcessID,PID)号... 查看详情
进程概念(详细)
进程概念文章目录进程概念进程pcb(进程控制块)进程状态创建进程其他进程孤儿进程守护进程(精灵进程)冯诺依曼体系结构程序地址空间进程进程(Process)是计算机中的程序关于某数据集合上的一次运行活动... 查看详情
僵尸进程和孤儿进程----概念
这里仅给出僵尸进程和孤儿进程的概念。来源《深入了解计算机系统(原书第3版)》和网上的博客,下面会给出博客来源。前言:回收子进程当一个进程由于某种原因终止时,内核并不是立即把它从系统中清除。相反,进程被... 查看详情
《linux从0到99》六进程概念下(代码片段)
进程概念下1.僵尸进程01僵尸进程的概念03解决僵死状态/僵尸进程04僵尸进程的模拟实现05僵尸进程的危害2.孤儿进程01孤儿进程的概念02孤儿进程的模拟实现03孤儿进程的危害3.进程优先级01PRIandNI02PRIvsNI查看进程优先级的命令4.环境... 查看详情
[os]进程的概念
进程概念:1.程序在执行中2.一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程,是系统进行资源分配和调度的独立单位。进程与程序的差别:·进程----动态, 程序----静态·进程----有生命周期... 查看详情
java多线程-进程和线程概念
进程和线程的概念以及他们之间的关系说起进程,就不得不说下程序,程序是指令和数据的有序集合,其本身没有任何允许的含义,是一个静态的概念进程(process)进程是执行程序的一个执行过程,它是一个动态的概念,是系统资源分配的... 查看详情
程序和进程的概念
一句话:程序是死的,进程是活的。一个程序运行起来就叫进程。 查看详情
linux-进程概念(代码片段)
进程是一个非常重要的概念,了解它,你会更清晰的认知计算机中的程序执行。看待计算机的角度都会不一样。冯诺依曼体系通信在体系下的硬件操作外设与CPU的交互操作系统OS逻辑图概括管理的概念PCB-进程描述进程概... 查看详情
linux-进程概念(代码片段)
进程是一个非常重要的概念,了解它,你会更清晰的认知计算机中的程序执行。看待计算机的角度都会不一样。冯诺依曼体系通信在体系下的硬件操作外设与CPU的交互操作系统OS逻辑图概括管理的概念PCB-进程描述进程概... 查看详情
进程概念
进程:本质上就是一段程序的运行过程(进程本身是一个抽象的概念)进程定义: 进程就是一个程序在一个数据集上的一次动态执行过程; 进程一般是有程序,数据集,进程控制块三部分组成; 数据集则是程序在执行过程中所... 查看详情
第72课进程与线程的概念
1.程序和进程的概念 程序进程概念程序是计算机存储系统中的数据文件①源代码程序:文本文件,描述程序行为和功能②可执行程序:二进制文件,直接加载并执行。①广义概念:程序关于某个数据集合的一次运行活动②狭... 查看详情
进程概念
1.进程 狭义定义:进程是正在运行的程序的实例 广义定义:进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分... 查看详情
进程——进程概念
进程和线程进程的定义进程是指一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程进程的组成进程包含了正在运行的一个程序的所有状态信息代码数据状态寄存器CPU状态CR0,指令指针IP通用寄存器AX,BX,CX...进程... 查看详情
进程间通信的概念-简介
进程间通信的概念进程是一个独立的资源分配单元,不同进程(这里所说的进程通常是指用户进程)之间的资源是独立的,没有关联。不能在一个进程中访问另一个进程的资源。但是,进程不是孤立的,不同的进程需要进行信息的... 查看详情
全面理解进程和线程的概念区别和联系
进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。进程与线程的一个简单解释在这个简单易懂的类比下,了... 查看详情
linux进程概念--操作系统与进程(代码片段)
进程概念(一)一、冯诺依曼体系结构二、操作系统(OperatorSystem)1、概念2、设计OS的目的3、定位--负责管理的软件如何理解“管理”小结4、系统调用和库函数概念三、进程1、基本概念2、描述进程-PCBtask_structtask... 查看详情
进程基本概念理解
一、进程和程序1.进程的基本概念 所谓进程是由正文段用户数据段以及系统数据段共同组成的一个执行环境,是一个动态实体。2.程序的基本概念 程序只是一个普通文件,是一个机器代码指令和数据的集合,这些指令和... 查看详情
linux入门进程概念(超详解,建议收藏)(代码片段)
目录1️⃣进程的基本概念2️⃣描述进程-PCB3️⃣通过系统调用获取进程标示符4️⃣通过系统调用创建进程-fork(初识)5️⃣进程的状态R可执行状态S睡眠状态D磁盘休眠状态T暂停状态X死亡状态&Z僵尸状态6️⃣僵尸进程僵尸进程... 查看详情