父进程

✍ dations ◷ 2024-12-22 17:38:21 #操作系统,进程,计算机科学

在计算机领域,父进程(英语:Parent Process)指已创建一个或多个子进程的进程。

在UNIX里,除了进程0(即PID=0的交换进程,)以外的所有进程都是由其他进程使用系统调用fork创建的,这里调用fork创建新进程的进程即为父进程,而相对应的为其创建出的进程则为子进程,因而除了进程0以外的进程都只有一个父进程,但一个进程可以有多个子进程。

操作系统内核以进程标识符(,即PID)来识别进程。进程0是系统引导时创建的一个特殊进程,在其调用fork创建出一个子进程(即PID=1的进程1,又称init)后,进程0就转为交换进程(有时也被称为空闲进程(英语:Idle (CPU))),而进程1(init进程)就是系统里其他所有进程的祖先。

当一个子进程结束运行(一般是调用exit(英语:exit (operating system))、运行时发生致命错误或收到终止信号所导致)时,子进程的退出状态(返回值)会回报给操作系统,系统则以SIGCHLD信号将子进程被结束的事件告知父进程,此时子进程的进程控制块(PCB)仍驻留在内存中。一般来说,收到SIGCHLD后,父进程会使用wait系统调用以获取子进程的退出状态,然后内核就可以从内存中释放已结束的子进程的PCB;而如若父进程没有这么做的话,子进程的PCB就会一直驻留在内存中,也即成为僵尸进程。

孤儿进程则是指父进程结束后仍在运行的子进程。在类UNIX系统中,孤儿进程一般会被init进程所“收养”,成为init的子进程。

为避免产生僵尸进程,实际应用中一般采取的方式是:

在Linux内核中,进程和POSIX线程有着相当微小的区别,父进程的定义也与UNIX不尽相同。Linux有两种父进程,分别称为(形式)父进程与实际父进程,对于一个子进程来说,其父进程是在子进程结束时收取SIGCHLD信号的进程,而实际父进程则是在多线程环境里实际创建该子进程的进程。对于普通进程来说,父进程与实际父进程是同一个进程,但对于一个以进程形式存在的POSIX线程,父进程和实际父进程可能是不一样的。

本条目部分或全部内容出自以GFDL授权发布的《自由在线电脑词典》(FOLDOC)。

相关

  • 免疫能力低下免疫缺陷(英语:immunodeficiency)是指免疫系统抵抗传染病的能力失常或欠缺。免疫缺陷还可能降低肿瘤免疫监视功能。免疫缺陷多为继发性(secondary)免疫缺陷,不过也有些人生来就有
  • 金属材料金属材料一般是指工业应用中的纯金属或合金。自然界中大约有70多种纯金属,其中常见的有铁、铜、铝、锡、镍、金、银、铅、锌等等。而合金常指两种或两种以上的金属或金属与非
  • 支持细胞瘤支持细胞瘤(英语:Sertoli cell tumour, Sertoli cell tumor),是一种隶属于卵巢肿瘤或睾丸肿瘤下的一类性索间质肿瘤,是由支持细胞病变引起。尽管支持细胞细胞通常在睾丸中,而此类
  • 达尔富尔广播电台达尔富尔广播电台(英语:Radio Dabanga 或 Radio Darfur),是一家由苏丹达尔富尔人设立的短波秘密电台,位于荷兰阿姆斯特丹,对苏丹西部的达尔富尔地区广播,开播于2008年12月1日。电台
  • NKT细胞自然杀伤T细胞(Natural killer T cells),简称NKT细胞(NKT cells),是一类异质的T细胞,与T细胞和NK细胞(自然杀伤细胞)拥有部分相同的特征。许多NKT细胞都能识别非多型的CD1d(英语:CD1d)分
  • 老花老花(英语:Presbyopia),是为人的眼睛老化的自然过程,基于当人眼看近物时,眼球内投射过多光线于水晶体而非视网膜,导致不能对近物对焦的视力问题,患者在看近物时视物变得模糊。老花的
  • 旺加里·马塔伊万加瑞·马塔伊(斯瓦希里语:Wangari Muta Maathai,1940年4月1日-2011年9月25日),肯尼亚的社会活动家,2004年诺贝尔和平奖得主,美国匹兹堡大学生物科学硕士。她是绿带运动和非洲减债
  • 自由指数列表现时有数个非政府组织根据自己的定义,发布对世界各地自由情况的评估,并会根据政治权利、经济权利和公民自由等标准对地区进行排名。下面列出根据各指数编制的地图和级别列表。
  • 齐格蒙特·克拉辛斯基齐格蒙特·克拉辛斯基(Zygmunt Krasiński)(1812年2月- 1859年2月23日),波兰贵族,伟大的浪漫主义诗人。齐格蒙特·克拉辛斯基与亚当·密茨凯维奇和尤利乌什·斯沃瓦茨基并列为波兰
  • 2015年巴西羽毛球大奖赛2015年巴西羽毛球大奖赛为第2015年度的巴西羽毛球公开赛,是2015年世界羽联大奖赛的其中一站。本届赛事于2015年11月24日至11月29日在巴西里约热内卢的Riocentro 4举行,总奖金