《深刻理解計算機系統(第三版)》第一章學習總結
1.1信息就是位+上下文
hello程序的生命週期是從一個源程序開始的,文件名是hello.c。源程序實際上就是由0和1 組成的位序列,8個被組織成一組,稱字節,每一個字節表示程序中的某些字符。由ASCII字符構成的文件稱爲文本文件,全部其餘文件稱爲二進制文件。
1.2程序被其餘程序翻譯成不一樣的格式
GCC編譯驅動程序讀取源文件hello.c,並把它翻譯成一個可執行目標文件。這個過程能夠分爲四個階段完成。
![](http://static.javashuo.com/static/loading.gif)
1.3瞭解編譯系統如何工做是大有益處的
理解編譯系統如何工做對於優化程序性能、理解連接時出現的錯誤、避免安全漏洞等等大有益處。
1.4處理器讀並解釋儲存在內存的指令
1.硬件組成
![](http://static.javashuo.com/static/loading.gif)
2.運行hello程序:讀取鍵盤的「hello」命令,將hello文件中的代碼與數據從磁盤加載到主存,執行hello文件中的指令。
1.5高速緩存相當重要
![](http://static.javashuo.com/static/loading.gif)
1.6存儲設備造成層次結構
在處理器和一個較大較慢的設備之間插入一個更小更快的存儲設備。
1.7操做系統管理硬件
操做系統兩個基本的功能:防止硬件被失控的應用程序濫用;嚮應用程序提供簡單一致的機制來控制複雜而又一般大不相同的低級硬件設備。經過進程、虛擬內存、文件的抽象概念來實現這兩個功能。
1.8系統之間利用網絡通訊
![](http://static.javashuo.com/static/loading.gif)