1、11點半睡覺,8點起牀,8:30開始學習
2、除了生活必須的吃喝拉沙都應該用在學習上
3、每天作業要求:條理清晰的歸納與總結每天知識點(發佈到博客上),做到能讓有linux基礎的人看完能夠理解與操作。(更好的強化你的知識結構['記憶'],面試的時候也能夠講清楚)
4、筆記與梳理,優化自己的思維框架
4wdh寫博客的規範:
1、聲明是什麼
2、用在什麼地方
3、什麼時候用
4、爲什麼要用到它
5、怎麼去用
一、計算機體系結構:
1、通過I/O設備輸入發信息——控制器調用指令——調用數據(電信號)——交付運算器運算
2、一個線路的複合使用,把前一個數據暫時存在寄存器,再接收下一個數據,再合併計算
虛擬機是模擬的計算機結構
RAM:隨機訪問存儲器
ROM:只讀存儲器(適用於這臺計算機設備的指令)
加電字節:元芯片(保存硬件指令)一開機就加載到內存最前端運行的識別顯示器鍵盤顯卡等硬件的指令
調優就是調內存裏的數據怎麼排列,CPU怎麼去運行程序
poll(輪詢)如cpu不停去查看鍵盤
interrupt(中斷)硬件通知機制——可編程中斷控制器(硬件),連接着各個硬件(多條線),哪根線來的就是哪個硬件(一根線可以連接多個同設備如多個硬盤)CUP處理中斷數據越多性能下降
前端總線:
北橋是高速總線控制器(一根線連接,以及其他高速總線控制【如顯卡】){現在的內存直接與cpu相連、以前也會通過北橋}
南橋低速總線控制器(連接各種外圍設備【顯示器、鍵盤】)
傳統硬盤通過南橋連接如web併發多會很慢,淘寶已經使用固態直接連接北橋的方式
cpu I/O頻率:通過特殊的電器設備使CPU I/O設備的閉合速度極快
折中(技術與人都需要折中):cpu與內存頻率不同導致內存拖慢CPU,折中通過中間放一箇中間設備(緩存[cpu的1級緩存..])
緩存:級越小距離cpu越近,越貴,越小。緩存越大整體性能越好,(緩存造價很高所以很小)
寄存器與cpu相同頻率工作,1級更慢..(先到2級再到1級)
程序的局部性原理:緩存工作遵循的原理【時間上局部性(我一會就要訪問所以直接放在1或2級緩存裏)、空間上的局部性(我訪問一個數據同時需要的其他數據也放在旁邊就可以加快訪問效率)】
CPU的運算邏輯不一樣彙編語言不一樣
API應用編程接口(庫):在不同的CPU上使用彙編語言編寫的具有相同功能的程序(使用軟件的形式抽象出來),虛擬一個相同的開發執行環境
二、硬件架構:(cpu芯片的不同,需要移值)
ARM:移動硬件架構芯片
x86
x64
安騰
alpha
UltraSparc
Power
M68000, M68K
PowerPC
OS:
Windows
Linux
Unix
HP-UX
Solaris
AIX
SCO UNIX
Unixware
OS/2
三、操作系統(協調程序工作的軟件):
1、運行在硬件上的軟件,(進程)把CPU分成多個片來分給多個程序(按時間)或多核心,內存切成多段(1[0、1..]、2[0、1..])\32位默認按4G來分割
2、庫提供調用接口call,程序看到的就是庫API了(操作系統的接口)
3、通過操作系統協調使用硬件(system call最底層)麪粉
4、將底層接口再封裝就形成了API(庫、功能、饅頭)
5、shell:外殼 人機交互接口(圖形化{GUI}、命令行{CLI})翻譯成內核可以理解的命令
6、kernel:內核 操作系統的核心(通過內核(系統調用{底層})硬件供程序使用)
7、庫的調用接口一樣的程序,可以在不同系統運行
8、四環:CPU的0級在內存中的內核程序對應0級,程序不能訪問(只能訪問4級)