P1 01_01_Linux--計算機硬件基礎

序:
1943-1946年美國賓夕法尼亞大學研製的電子數字積分器和計算機ENIAC(Electronic Numerical And Computer)是世界上第一臺電子多用途計算機。一般認爲它是現代計算機的始祖。

 與ENIAC計算機研製的同時,馮諾依曼(Von Neumann)與莫爾小組合作研製EDVAC計算機,採用了存儲程序方案,其後開發的計算機都是採用這種方式,稱爲馮諾依曼計算機。

馮諾依曼計算機體系結構:運算器、控制器、存儲器、輸入設備和輸出設備。

運算器(Arithmetical and Logical Unit):計算機中執行各種算術和邏輯運算操作的部件。運算器的基本操作包括加、減、乘、除四則運算,與、或、非、異或等邏輯操作,以及移位、比較和傳送等操作,亦稱算術邏輯部件。

控制器(Control Unit):控制器是整個計算機系統的控制中心,它指揮計算機各部分協調地工作,保證計算機按照預先規定的目標和步驟有條不絮地進行操作及處理。

存儲器(Memory unit):存儲器的主要功能是存儲程序和各種數據信息,並能在計算機運行過程中高速、自動地完成程序或數據的存取。

輸入設備(Input device):向計算機輸入數據和信息的設備,是計算機與用戶或其他設備通信的橋樑,是用戶和計算機系統之間進行信息交換的主要裝置之一。常見的輸入設備有,鍵盤、鼠標、圖形輸入板、視頻攝像機等。

輸出設備(Output Device):是計算機硬件系統的終端設備,用於接收計算機數據的輸出顯示、打印、聲音、控制外圍設備操作等。也是把各種計算結果數據或信息以數字、字符、圖像、聲音等形式表現出來。常見的輸出設備有顯示器、打印機、繪圖儀、影像輸出系統、語音輸出系統、磁記錄設備等。

操作系統(Operatinig System):是管理和控制計算機硬件與軟件資源的計算機程序,是直接運行在“裸機”傷的最基本的系統軟件,任何其他軟件都必須在操作系統的支持下才能運行。

應用軟件(application software):是和系統軟件相對應的,是用戶可以使用的各種程序設計語言,以及用各種程序設計語言編制的應用程序的集合,分爲應用軟件包和用戶程序。爲滿足用戶不同領域、不同問題的應用需求而提供的那部分軟件。 它可以拓寬計算機系統的應用領域,放大硬件的功能。

機器語言:二進制語言,機器能識別的語言
低級語言:也叫微碼,或叫彙編語言。人能夠識別的語言,被集成到芯片當中,也就是芯片自帶的語言,而這個語言是無法移植 的。同時還有個編譯器,把彙編語言編譯成二進制讓計算機能夠識別。
高級語言:本身需要先轉換成彙編語言再翻譯成機器語言。要結合一些額外的機制來磨合(承上啓下的一個接口API庫)底層芯片的不同。

加電自檢過程:cpu要想執行指令,指令必須在內存當中,而指令必須是先放好在內存中才能執行的,但是計算機剛開機那一刻根本不 知道有鍵盤、顯示器等。內存是易失性存儲器,開機時裏面沒有任何數據和指令,如何實現的呢?ok,他是藉助於外圍 設備(如硬盤等)來實現的。在開機那一刻,芯片裏的指令會映射給內存(這是有硬件邏輯結構來完成的),之後cpu 才能讀取指令進行自檢。

輪詢:就是計算機不停地對外圍設備進行查看。效率低。

中斷interrupt:鍵盤敲擊後,上電通知cpu,然後cpu停下手頭工作去查看鍵盤,這種機制叫中斷機制。cpu不用時時對外圍設備進行查看是誰工作的,誰通知的自己,然後cpu在過來查看。這裏有一個問題,中斷時cpu如何知道是鍵盤還是鼠標通知的信息呢?很簡單,計算機內部有個控制芯片,控制芯片通過針腳和cpu相連,而每一個針腳對應一個外圍設備。

北橋設備:離cpu近,高速總線控制器。早期用來連接內存。硬件調優的時候,可以把外圍設備從南橋直接接在北橋上。當今大多數都 是內存直接連接到cpu,這樣速度更快,北橋只負責連接南橋。

南橋設備:離cpu遠,低速總線控制器。早期用來連接外圍設備。所有外圍設備連接到南橋,南橋通過一根總線連接到北橋。

程序=指令+數據
程序一般從外存讀取到內存中,然後cpu在對內存進行數據加工(運算)
程序1:system call 更高效,但太過於底層,難於編程移植
程序2:library call 是系統調用的封裝,提供公共的基本模塊,便於編程移植

32位cpu(2^32)最多能訪問4Gbyte內存容量

kernel:管理硬件,將硬件資源虛擬成其他樣子爲上層程序提供支持

庫(API):是一個程序,沒有執行入口,不能單獨執行,只能在被調用的時候才能運行。

操作系統:一個程序,指令和數據存放在內存當中,管理硬件資源和監控所有的程序。當計算機按鍵時:指令傳送cpu-cpu發送給內核-由內核解析是硬件做了什麼-發送給cpu

多進程:cpu分片,內存分段來實現多進程多任務

電腦的kernel和bios都放在內存的特定位置中

Shell:人機交互接口,用戶管理界面。
GUI: gnome、kde、xface
CLI:sh、bash、csh、ksh、tsh...P1  01_01_Linux--計算機硬件基礎

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章