在相容于POSIX标准的操作系统中,行程群组(英语:Process group,又译过程群组)是指一个或多个进程的集合。行程群组被使用于控制信号的分配。对于一个行程群组发出的的信号,会被个别递送到这个群组下的每个行程成员中。
概念行程群组本身,也可以被集合成一个群组来管理,称为会议群组(sessions)。归属于某个特定会议群组下的行程群组,不能移动到别的会议群组下;在某个行程群组下的特定行程,在创造出新的行程时,这个行程也只能属于这个父行程所归属的相同会议群组。1
应用shell程式借由送出信号(Signal)给行程群组(Process groups)的方式来控制任务(job)。tty装置使用所谓的前景行程群组(foreground process group),借由键盘送给这种群组的信号来产生中断:
SIGINT (INTerrupt, Control+C)
SIGTSTP (Terminal SToP, Control+Z)
SIGQUIT (QUIT, Control+\)
而背景行程群组(Background process group)在尝试读取或者写至终端机(Terminal)时,行程将收到SIGTTIN或SIGTTOU信号。接下来shell会切开该指令丢进行程群组,然后控制在前景的行程群组来处理终端机有关的指令。1
POSIX可移植操作系统接口(英语:Portable Operating System Interface,缩写为POSIX),是IEEE为要在各种UNIX操作系统上运行软件,而定义API的一系列互相关联的标准的总称,其正式称呼为IEEE Std 1003,而国际标准名称为ISO/IEC9945。此标准源于一个大约开始于1985年的项目。POSIX这个名称是由理查德·斯托曼(RMS)应IEEE的要求而提议的一个易于记忆的名称。它基本上是Portable Operating System Interface(可移植操作系统接口)的缩写,而X则表明其对Unix API的传承。
Linux基本上逐步实现了POSIX兼容,但并没有参加正式的POSIX认证。
微软的Windows NT声称部分实现了POSIX标准。
当前的POSIX主要分为四个部分:Base Definitions、System Interfaces、Shell and Utilities和Rationale。2
进程进程(英语:process),是计算机中已运行程序的实体。进程为曾经是分时系统的基本运作单位。在面向进程设计的系统(如早期的UNIX,Linux2.4及更早的版本)中,进程是程序的基本执行实体;在面向线程设计的系统(如当代多数操作系统、Linux2.6及更新的版本)中,进程本身不是基本运行单位,而是线程的容器。程序本身只是指令、数据及其组织形式的描述,进程才是程序(那些指令和数据)的真正运行实例。若干进程有可能与同一个程序相关系,且每个进程皆可以同步(循序)或异步(平行)的方式独立运行。现代计算机系统可在同一段时间内以进程的形式将多个程序加载到存储器中,并借由时间共享(或称时分复用),以在一个处理器上表现出同时(平行性)运行的感觉。同样的,使用多线程技术(多线程即每一个线程都代表一个进程内的一个独立执行上下文)的操作系统或计算机体系结构,同样程序的平行线程,可在多CPU主机或网络上真正同时运行(在不同的CPU上)。1
本词条内容贡献者为:
黄伦先 - 副教授 - 西南大学