Background-Process

後台程序是什麼時候發明的?

  • May 19, 2018

尋找日期和權威參考。預期的答案在 1960 年代的某個時候。

此資訊對於編寫有影響力的功能請求至關重要。

第一個支持多個並發執行程序,或者至少模擬多個程序並發執行的系統,是六十年代初在英國曼徹斯特大學開發的 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 年由麻省理工學院的約翰麥卡錫發明的;有關參考,請參閱作業系統的演變。第一個展示分時的系統是 CTSS,它是 1961 年末在 IBM 709 上的,在由 Fernando Corbato、Marjorie Merwin-Daggett 和 Robert C. Daley 於 1962 年出版的An experimental time-sharing system中進行了描述。CTSS 已經有可能有資格作為最早形式的後台程序的守護程序(在該片語的現代意義上)。

另請參見Retrocomputing的上下文切換歷史和 John McCarthy 自己的關於分時歷史的回憶

如果您從 shell 的角度來指代後台程序,它們與作業控制一起出現在 C shell 中,Jim Kulp 在 1980 年左右的某個時候實現了它(該功能在4BSD中可用,於 1980 年末發布)。

引用自:https://unix.stackexchange.com/questions/444638