若有錯誤,歡迎指出。編程
互幫互助,共同進步。編程語言
更新時間:2020-01-09spa
節選自《C語言程序設計現代方法》第2版操作系統
1.起源設計
C語言是貝爾實驗室的Ken Thompson、Dennis Ritchie等 人開發的UNIX操做系統的「 副產品」。Thompson獨白編寫出了UNIX操做系統的最第一版本,這套系統運行在DEC PDP-7計算機上。這款早期的小型計算機僅有16KB內存(畢竟那是在1969年)。調試
與同時代的其餘操做系統樣,UNIX系統最初也是用匯編語言編寫的。用匯編語言編寫的程序每每難以調試和改進,UNIX 系統也不例外。Thompson意 識到須要用一種更加高級的編程語言來完成UNIX系統將來的開發,因而他設計了一種小型的B語言。Thompson的B語言是在BCPL語言(20世紀60年代中期產生的一種系統編程語言)的基礎上開發的,而BCPL語言又能夠追溯到最先(且影響最深遠)的語言之一一 Algol 60語言。內存
不久,Ritchie也加入到UNIX項目中,而且開始着手用B語言編寫程序。1970年,貝爾實驗室爲UNIX項目爭取到一臺PDP-11計算機。當B語言通過改進並可以在PDP-11計算機上成功運行後,Thompson用B語言從新編寫了部分UNIX代碼。到了1971年,B語言已經明顯不適合PDP-11計算機了,因而Ritchie着手開發B語言的升級版。最初,他將新開發的語言命名爲NB語言(意爲「New B」),可是後來新語言愈來愈偏離B語言,因而他將其更名爲C語言。到了1973年,C語言已經足夠穩定,能夠用來從新編寫UNIX系統了。改用C語言編寫程序有一個很是重要的好處:可移植性。只要爲貝爾實驗室的其餘計算機編寫C語言編譯器,他們的團隊就能讓UNIX系統也運行在那些機器上。開發