深入理解計算機系統學習- 計算機系統漫遊

fengxichang發表於2019-09-23

1. 資訊就是位 + 上下文

位又稱為位元,1位元組=8位元,ASC2碼,用一個唯一的單位元組大小的整數表示每個字元。因為表示資訊表示資訊的資料,最終被編譯為用位元表示的位,所以資訊就是位在特定上下文的表示。

2. 程式被編譯器翻譯

1. GCC編譯器編譯c原始檔4個階段:
hello.c->前處理器->hello.i->編譯器->hello.s->彙編器->hello.o->聯結器->可執行目標程式
2. 預處理階段:前處理器讀取標頭檔案的內容,並插入程式文字中,得到以.i結尾的程式
3. 編譯階段:編譯器將hello.i程式翻譯成組合語言程式,以.s結尾
4. 彙編階段:彙編器將hello.s翻譯成機器語言指令,打包成hello.o格式二進位制程式檔案
5. 連線階段:聯結器合併庫函式,庫函式檔案已經編譯好,直接合併到我們的程式中,打包成可執行目標檔案

深入理解計算機系統學習- 計算機系統漫遊

3.系統硬體組成

1. 匯流排:攜帶資訊在各個部件中傳遞。匯流排常被設計成傳送定長的位元組塊,要麼是4個位元組(32位),要麼是8個位元組(64位)
2. I/O裝置:系統與外界連線的通道
3. 主存:臨時儲存裝置,存放程式和要處理的資料。從物理上看,主存由一組動態隨機存取儲存器(DRAM)晶片組成;從邏輯上看,主存是一個線性位元組陣列。
4. 處理器:執行儲存在主存中的指令的引擎,執行程式的引擎。

深入理解計算機系統學習- 計算機系統漫遊

4.作業系統管理硬體

1. 程式:作業系統對正在執行的程式的抽象。CPU併發執行多個程式是通過程式間切換實現的。
2. 執行緒:一個程式由多個稱為執行緒的執行單元組成,每個執行緒執行在程式的上下文中,共享同樣的程式碼和資料。多執行緒是一種可以讓程式執行更快的方法。
3. 虛擬記憶體:對主存地址空間的抽象
4. 檔案:位元組序列,對I/O裝置的抽象
計算機作業系統通過對硬體的抽象,分配和管理硬體資源,提供統一的介面,使應用程式可以在計算機中執行。

相關文章