后台进程是什么时候发明的?

sup*_*pyo 14 history background-process

寻找日期和权威参考。预期的答案在 1960 年代的某个时候。

此信息对于编写有影响力的功能请求至关重要。

Ste*_*itt 29

第一个支持多个并发执行进程,或者至少可以模拟多个进程并发执行的系统,是六十年代初期在英国曼彻斯特大学开发的 Atlas 系统。参考文献是描述该系统的论文The Atlas supervisor,由 Tom Kilburn、R. Bruce Payne 和 David J. Howarth 撰写,并于 1961 年在 AFIPS 计算机会议上发表:

每当需要访问核心存储中不立即可用的信息块时,目标程序就会停止(由 SER)。

[...]

当一个程序暂停时,例如等待磁带传输的完成,协调器例程将控制切换到目标程序列表中的下一个可以自由进行的程序。

等待数据的进程被挂起并置于后台,直到数据可用。

您可以在 Per Brinch Hansen 的The Evolution of Operating Systems 中找到有关 Atlas 系统和操作系统历史的更多信息。他的《经典操作系统》一书重印了许多开创性论文,包括上面引用的 Atlas 论文。

如上所述,多道程序的概念最早由 Christopher Strachey 在 1959 年的论文《大型、快速计算机中的时间共享》中描述

最终被人们记住的分时共享与上面的并不完全相同。分时,对于习惯了现代多用户、多任务系统的人来说可能更熟悉,它是 1959 年由麻省理工学院的约翰麦卡锡发明的;请参阅操作系统的演变以获取参考。第一个展示分时的系统是 1961 年底在 IBM 709 上的 CTSS,在 1962 年出版的 Fernando Corbato、Marjorie Merwin-Daggett 和 Robert C. Daley 编写的实验性分时系统中进行了描述。CTSS 已经有了守护进程可能是最早形式的后台进程(在该短语的现代意义上)。

又见上下文切换的历史Retrocomputing,和约翰·麦卡锡自己对分时的历史回忆

如果您从 shell 的角度来看后台进程,它们会与C shell 中的作业控制一起出现,Jim Kulp 在 1980 年左右的某个时候实现了它(该功能在4BSD中可用,于 1980 年末发布)。