操作系统中作业、程序、进程、线程的概念区别与联系

作业:

    作业指用户在一次解决或是一个事务处理过程中要求计算机系统所做的工作的集合。作业由三部分组成,即程序、数据和作业说明书。一个作业可以包含多个程序和多个数据集。作业说明书在系统中生成一个称为作业控制块(job control block,JCB)的表格。该表格登记该作业所要求的资源情况、预计执行时间和执行优先级等。从而,操作系统通过该表了解到作业要求,并分配资源和控制作业中程序和数据的编译、链接、装入和执行等。

作业是由一系列有序的步骤组成的。作业的完成要经过作业提交、作业收容、作业执行和作业完成4个阶段。在执行一个作业可能会运行多个不同的进程

需要说明的是,作业的概念主要用在批处理系统中,而且,在批处理系统中,作业是抢占内存的基本单位。也就是说,批处理系统以作业为单位把程序和数据调入内存以便执行。

程序:

    程序是一组有序指令的集合,并存放于某种介质中,是一个静态概念。

进程:

    进程是为使程序能并发执行,且为了对并发执行的程序加以描述和控制而引入的概念。

在了解进程前,先说明下进程实体。进程实体是由程序段、相关的数据段和PCB三部分组成,是一个能独立运行、独立分配资源和独立接受调动的基本单位。

    现在来说明进程的定义:进程是进程实体的一次执行过程,是系统进行资源分配和调度的一个独立单位。它是一个动态概念。

线程:

    随着多处理机系统的发展,提高程序的并发执行程度的要求越来越高。为提高系统的并发执行度,进而引入了线程的概念。线程是比进程更小的能独立运行的基本单位(故又称“轻型进程”),更好的提高了程序的并发执行程度充分发挥了多处理机的优势。

猜你喜欢

转载自weitao1026.iteye.com/blog/2354932