计算机操作系统进程的概念
扫描二维码
随时随地手机看文章
资源分配得合理与否是与需要获得资源的对象直接相关的。这就像一个旅游宾馆在对客房的分配一样,是以旅游团作为分配客房的对象.还是把旅游者作为分配客房的对象,其分配结果和客房的利用率显然是大不一样的。所以,为了对计算机的资源进行合理的分配,就必须先明确在计算机系统中究竟是哪些对象需要使用这些资源。 在计算机系统中,为了分配资源,人们引进了“进程”这个最基本、最重要的概念。在操作系统中,进程是享用系统资源的对象,是资源分配的基本单位。 为了提高处理器的利用率,可以像下图所描述的那样使程序并发执行。乍看起来,系统似乎是以参与并发执行的程序为对象来分配处理器这个资源的,或者说是系统以程序为资源分配单位的。其实不然.既然程序可以并发运行,那么就是说,在计算机中可能同时存在着同一个程序的两个甚至多个运行。例如,某人正在用word修改一个文挡,那么极有可能又打开了另外一个word文挡作为参考,这就是说,现在同时有两个word在同时运行。因此,系 统只给一个word分配资源是不行的。
如果需要使用处理器资源的不是程序,那么是什么呢?仔细分析一下就会知道,程序只是 一段可执行代码,它需要的是存储空间而不是处理器的时间,只有当程序运行时才会需要占用 处理器时间。这也就是说,需要占用处理器的是程序的一次运行过程,而不是程序本身。打个比方来说,程序就像一本书,这本书放在桌子上是不会占用读者的时间资源的,只有这本书被阅读时,才会占用读者的时间。更准确地说,占用读者时间的是这个读书的过程。因此,在计算机中,程序的一次运行过程才应该是处理器资源分配的基本单位。为了方便,人们把程序的 一次运行过程就叫做进程。 同样,就像一个读书过程肯定对应着一本书,但同一本书可能有多个读书的过程一样,系统中的一个进程肯定对应着一个程序,但同一个程序可以有多个进程。所以要切记,进程和程 序是相关的,但并不是一回事。 由于并发活动的复杂性,到目前为止,各个操作系统对进程的定义尚未统一。有的操作系 统把进程叫做任务,也有的操作系统把它叫做活动。在国内,一般把进程理解为:“可并发执 行且具有独立功能的程序在一个数据集合上的运行过程,它是操作系统进行资源分配和保护 的基本单位”。这句话首先强调了进程是一个程序运行的动态过程,而且该程序必须具有并发 运行的程序结构;其次强调了这个运行过程必须依赖一个数据集合而独立运行,从而形成了系统中的一个单位。它具有动态性、并发性、独立性、异步性和结构性五大特性。 ●所谓动态性,是指进程是程序的一次活动,程序是进程活动的蓝本,而进程活动是程序的一次运行过程。进程和程序之间的关系,就像话剧和剧本的关系一样;剧本是一场话剧的蓝本,而话剧则是剧本的一次实现;要占用剧场这个资源的是话剧,而不是剧本。一个进程也像一场话剧一样,有诞生(开幕)、运行(表演)、消亡(闭幕)的过程。 ●所谓并发性,是指在一个系统内可以同时存在多个进程,它们交替使用处理器这个资源,并各自按照自己独立的进度推进。 ●所谓异步性,是指进程之间在交替使用计算机资源时没有强制的顺序。因此,在多个进程使用一些共享资源时,为了防止共享资源被破坏,计算机与其操作系统应提供保证进程之间能协调工作的硬件和软件机制。 ●所谓独立性,是指进程在系统中是一个可独立运行的并具有独立功能的基本单位,也是系统分配资源和进行调度的独立单位。 ●所谓结构性,是指为了记录、描述、跟踪进程运行时的状态变化以便对进程进行控制,由系统建立的一套数据结构。系统中的每个进程都有对应的数据结构及其数据表项。 系统正是根据这些数据来感知进程的存在的,而程序也正是通过这些数据结构不停地 循环交替更新而活动的。 上面以处理器资源的分配介绍了进程这个重要的基本概念。其实,系统中其他资源的分配也是以进程为基本单位的。
欢迎转载,信息来源维库电子市场网()