1. 程式人生 > >CSSAPP稀裡糊塗的讀書筆記(一)計算機系統漫遊

CSSAPP稀裡糊塗的讀書筆記(一)計算機系統漫遊

主要介紹了計算機系統的一些概念知識等。

  1. 系統中的所有資訊,都是由一串位表示的。區分不同資料物件的唯一方法是我們讀到這些資料物件時的上下文。

  2. 將一個程式翻譯成一個可執行目標檔案經過四個階段:預處理階段、編譯階段、彙編階段和連結階段。

  3. 簡單的介紹了系統的硬體組成:匯流排、I/O裝置、主存、CPU。

  4. 簡單介紹了快取,如一個典型系統上的磁碟驅動器可能比主存大1000倍,但是對於處理器而言,從磁碟驅動器上讀取一個字的時間開銷要比從主存中讀取的開銷大1000萬倍。而處理器從暫存器檔案中讀資料比從主存中讀取幾乎要快100倍。

  5. 針對儲存器的層次結構做了一個簡單介紹,如圖: 在這裡插入圖片描述

  6. 簡單介紹了程序,程序是作業系統對一個正在執行的程式的一種抽象。

  7. 作業系統保持跟蹤程序執行所需的所有狀態資訊。這種狀態,就是上下文。

  8. 簡單介紹虛擬記憶體,它是一個抽象概念,為每個程序提供一個假象,即每個程序都在獨佔的使用主存。 在這裡插入圖片描述

每個程序看到的虛擬地址空間由大量準確定義的區構成,每個區都有專門的功能。我們從最低的地址開始,逐步向上介紹。

  • 程式程式碼和資料
  • 共享庫
  • 核心虛擬記憶體
  1. 檔案就是位元組序列,僅此而已。
  2. 作業系統核心是應用程式和硬體之間的媒介。它提供三個基本的抽象: 1) 檔案是對I/O裝置的抽象; 2)虛擬記憶體是對主存和磁碟的抽象; 3)程序是處理器、主存和I/O裝置的抽象。