深入理解計(jì)算機(jī)系統(tǒng) -- 第一章 計(jì)算機(jī)系統(tǒng)漫游

1.1 信息就是位 + 上下文

1.2 編譯系統(tǒng)的四個(gè)階段

預(yù)處理階段 生成 修改了的源文件(.i 文本文件)、編譯階段 生成匯編語言文件(.s 文本文件)、匯編階段 生成可重定位目標(biāo)程序(.o 二進(jìn)制文件)、鏈接階段 生成可執(zhí)行目標(biāo)程序 (二進(jìn)制文件)

1.3 學(xué)習(xí)編譯系統(tǒng)的益處

  1. 優(yōu)化程序性能
  2. 理解鏈接時(shí)出現(xiàn)的錯(cuò)誤
  3. 避免安全漏洞

1.4 處理器讀并解釋存在內(nèi)存中的指令

1.4.1 系統(tǒng)的硬件組成

  1. 總線
  2. I/O設(shè)備
  3. 主存
  4. 處理器 程序計(jì)數(shù)器(PC),寄存器文件、算術(shù)邏輯處理單元(ALU)

1.5 高速緩存至關(guān)重要

1.6 存儲(chǔ)設(shè)備形成層次結(jié)構(gòu)

1.7 操作系統(tǒng)管理硬件

1.7.1 進(jìn)程

操作系統(tǒng)對(duì)一個(gè)正在運(yùn)行的程序的一種抽象。進(jìn)程運(yùn)行時(shí)的所有狀態(tài)信息,成為上下文。

1.7.2 線程

一個(gè)進(jìn)程可以由多個(gè)成為線程的執(zhí)行單元組成,運(yùn)行在進(jìn)程的上下文中,共享同樣的代碼和全局?jǐn)?shù)據(jù)。

1.7.3 虛擬內(nèi)存

每個(gè)進(jìn)程看到的內(nèi)存都是一樣的,成為虛擬內(nèi)存地址空間。


1.7.4 文件

每個(gè)I/O設(shè)備,包括磁盤、鍵盤、顯示器、甚至網(wǎng)絡(luò),都可以看成是文件。

1.8 系統(tǒng)之間利用網(wǎng)絡(luò)通信

1.9 重要主題

1.9.1 Amdahl定律

當(dāng)我們對(duì)系統(tǒng)的某個(gè)部分加速時(shí),其對(duì)系統(tǒng)整體性能的影響取決于該部分的重要性和加速程度。若系統(tǒng)執(zhí)行某應(yīng)用程序需要時(shí)間為Told。假設(shè)系統(tǒng)某部分所需執(zhí)行時(shí)間與該時(shí)間的比例為a,而該部分性能提升比例為k。則系統(tǒng)整體計(jì)算加速比為

[圖片上傳失敗...(image-f34aee-1600528021564)]

[圖片上傳失敗...(image-8e7179-1600528021564)]+\alpha/k})

1.9.2 并發(fā)和并行

并發(fā) 一個(gè)通用的概念,指一個(gè)同時(shí)具有多個(gè)活動(dòng)的系統(tǒng)。

并行 指的是用并發(fā)來時(shí)一個(gè)系統(tǒng)運(yùn)行得更快。

三個(gè)層次的并發(fā)

  • 線程級(jí)并行

    • 多核處理器 是將多個(gè)CPU集成到一個(gè)集成電路芯片上。
    • 超線程(同時(shí)多線程)是一項(xiàng)允許一個(gè)CPU執(zhí)行多個(gè)控制流的技術(shù)。它涉及CPU 某些硬件有多個(gè)備份,比如程序計(jì)數(shù)器和寄存器文件,而其他的硬件部分只有一份。
  • 指令級(jí)并行 現(xiàn)代處理器可以同時(shí)執(zhí)行多條指令的屬性稱為指令級(jí)并行。

  • 單指令、多數(shù)據(jù)并行。許多現(xiàn)代處理器擁有特殊的硬件,允許一條指令產(chǎn)生多個(gè)可以并行執(zhí)行的操作,這種方式成為單指令、多數(shù)據(jù)。

1.9.3 計(jì)算機(jī)系統(tǒng)中抽象的重要性

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容