程式設計師視角的計算機系統 第一章 計算機系統 之旅

2021-10-21 14:37:21 字數 1059 閱讀 3312

程式設計師視角的計算機系統 第一章 計算機系統 之旅

乙個計算機系統由硬體和系統軟體組成,硬體和軟體一起工作來執行應用程式。

系統的特定的實現隨時間的流逝而改變,但是它的本質性的概念不會改變。

所有的計算機系統都有相似的硬體和軟體元件來執行相似的功能。這本書為程式設計師

而寫,程式設計師們需要在他們的工作中做得更好,這要通過理解這些軟硬體的元件是如何

工作的,這些元件如何影響他們的程式的正確性和效能。

對於乙個令人興奮的旅程,你要沉著。如果你決定學習本書的概念,那麼你將在乙個通向

成為乙個稀少的大程式設計師的道路上,通過對內在的計算機系統和系統對你的應用程式的影響

的理解而豁然開朗。

你將能學習到實踐的技能,例如,如何避免奇怪的數字的錯誤,這種錯誤是由計算機表示

資料的方式引起的。通過使用聰明的技巧和探索現代處理器和記憶體系統的設計,你將學習

到如何優化你的c語言的**。你將學習到編譯器是如何實現程式呼叫的,和如何使用這個

知識來避免來自於折磨網路和網際網路軟體的緩衝區溢位的脆弱點的安全漏洞。你將學習如

何識別與避免鏈結期間的嚴重的錯誤,這種錯誤挫敗了一般水平的程式設計師。你將學習如何寫

你自己的unix外殼程式,你自己的動態儲存分配軟體包,和甚至是你自己的網路伺服器。你

將學習併發的承諾和陷阱,多個處理器核心被整合到乙個晶元時的提公升效能的主題。

在c程式語言的經典的文字中,克尼根和里奇使用了在圖1.1中顯示的你好這個程式向讀者

介紹了c語言。儘管你好是乙個非常簡單的程式,為了這個程式能夠執行完畢,系統的主要

的部分必須協力工作才行。總之,這本書的目標是當你在你的系統上執行你好程式時,幫助你

理解發生了什麼和為什麼。

通過跟蹤你好程式的生命週期,從程式設計師建立它開始,直到它在系統中執行,列印出它的

簡單的資訊,和中止執行,我們開始了對系統的學習。正如我們追蹤程式的生命週期,我們

將簡明地介紹使用到的關鍵的概念,術語,元件。稍後的章節中將擴充套件這些思想。

第一章 計算機系統概述

第一章 計算機系統概述 1 基本構成 處理器 控制計算機的操作,執行資料處理功能 儲存器 儲存資料和程式,此類儲存器通常是易失的 輸入 輸出部件 在計算機與外部環境之間移動資料,如硬碟 系統匯流排 為處理器 記憶體和輸入 輸出模組間提供通訊的設施 2 微處理器的演變過程 微處理器 多核微處理器 片上...

計算機系統要素 第一章

咱們自己學習的高階語言,例如c 寫出乙個hello world程式是十分簡單的,可到底如何在計算機上執行在這個程式的呢!其實就是將高階語言進行編譯生成計算機能夠識別的機器碼,那些機器碼就是需要某種硬體體系 hardware architecture 來實現。這個硬體體系又是由晶元組 chip set...

第一章 計算機系統概述

含義 能為多個部件分時共享的一組資訊傳輸通路。根據傳送資訊的不同,可分為三類。傳送各種 資料資訊 的 資料匯流排 data bus 傳送各種 位址資訊 的 位址匯流排 address bus 傳送各種 控制訊號 的 控制匯流排 control bus 使匯流排與外設連線,具有緩衝 轉換 連線等功能。...