章節重點

215 views
Skip to first unread message

OS大叔

unread,
Jan 1, 2024, 11:36:57 PM1/1/24
to 中正資工,作業系統概論
注意喔,這只是「重點」,考題不一定完全從這裡面出

記憶體管理
1. (動機)因為CPU的速度比較快,因此可以透過context-switch讓cpu與i/o平衡,所以需要同時存放多個應用程式在記憶體
2. (對應用程式)應用程式對記憶體的需求。程式碼區段、堆疊區段、資料區段。如果是多個應用程式要分享資料,還需要分享區段
3. (對系統)如果整台電腦是「簡單行為」,可以預先對記憶體的「空間」做好規劃。例如:game
4. (對系統)如果要確保定腦的穩定度,可以對記憶體的讀寫做限制。例如:不同區段有不同的 讀、寫、執行 屬性,核心與應用程式空間。「只有」保護功能的通常叫做MPU,memory protection unit
5. (一個不可解的問題)如果電腦的行為是「可以動態規劃」的,例如傳統PC,則會有「動態空間分配問題」,一定會造成碎裂問題(free space不連續)
6. (軟硬體協同)同時解決「空間規劃(分配)」和「穩定度」,可以透過硬體的協助。MMU,記憶體管理系統,memory management unit
7. (方法一)segment機制(目前多半用於坎入是系統,而且通常不會用它來動態分配)
8. (方法二)paging機制(主流,huge page table,可以降低overhead)(解決記憶體分配和記憶體保護)
9. (降低硬體設計的難度)了解MMU怎樣解決TLB miss(什麼事TLB miss呢?為什麼要有TLB呢?)



這個章節一開始的重點在於怎樣解決「非法存取」,例如:不能寫、不能讀寫執行
因此有了 demand paging、copy on write的觀念
有了上述觀念以後,程式和資料不需要完全地載入記憶體,所以全部軟體所「可能存取」的記憶體可以大於實體記憶體,這就是virtual memory
有了virtual memory 以後,再來就是「該把哪些東西放入記憶體」,working set的概念(延伸自locality)
在Linux和大部分的OS,使用page replacement演算法決定,當記憶體不足時,把哪些memory page踢出主記憶體
被踢出的記憶體,就是作業系統認定「比較不重要的」,認定的方式是採用這記憶體過去被存取的情況


Storage
Block device
在Linux中特別是指block device
如果是網路上的檔案系統,雖然下層是網路,但Linux依然以block的方式存取
Block device的存取模式是logic block address(LBA)去定址一個block
RAID
要特別注意,RAID 5之所以可以用額外一顆硬碟就「容許一顆硬碟發生錯誤」是因為:硬碟知道自己上面的資料讀取不出來。這個情況與記憶體的parity check不同
Linux的RAID可以使用md建立 https://hackmd.io/@cwhu/SkpHEAy9u
SSD與HDD的不同
循序存取都會比隨機存取快
每1000元可以購買到的「隨機存取速度」,SSD較好
對data center而言,硬碟比SSD要來得省電。SSD比硬碟穩定
目前硬碟壞了還有得救。SSD似乎不行
檔案系統
目錄系統
提供「key-value」服務,key是path-name,value是file id
提供「list」服務,因此使用者可以對某一個目錄做列表(例如:ls)
上述二個操作應該很有效率
傳統的UNIX,「目錄」是一個特別的「檔案」
新增、刪除、修改
檔案
將block device上一連串的block組合成有意義的資訊「檔案」
依然會遇到「動態空間管理」問題,所以會有碎裂問題
以UNIX為例,使用 i-node 將一連串的block組合成檔案
i-node上記載了很多額外的資訊

中正資工,作業系統概論

unread,
Jan 2, 2024, 2:52:51 AM1/2/24
to 中正資工,作業系統概論
太簡單了,
準備再修一次🤡

OS大叔 在 2024年1月2日 星期二中午12:36:57 [UTC+8] 的信中寫道:

OS大叔

unread,
Jan 2, 2024, 4:24:39 AM1/2/24
to 中正資工,作業系統概論
我已經修了18次了
哭哭

中正資工,作業系統概論 在 2024年1月2日 星期二下午3:52:51 [UTC+8] 的信中寫道:

OS大叔

unread,
Jan 3, 2024, 1:37:22 AM1/3/24
to 中正資工,作業系統概論
少寫了二個章節
第五章,同步的後半段,例如多核心的部分,memory order等
第六章,deadlock,deadlock是怎樣產生的,必要條件是什麼?

OS大叔 在 2024年1月2日 星期二下午5:24:39 [UTC+8] 的信中寫道:
Reply all
Reply to author
Forward
0 new messages