孫鍾秀--《操做系統教程》註釋(陳懷臨)-- 讀書筆記

計算機系統的抽象基礎---進程、虛存和文件。安全

 

進程抽象:操做系統內核的主要任務之一就是講處理器「虛擬化」,製造每個運行進程都獨自擁有一個處理器的假象。函數

虛存抽象:進程擁有一個碩大的聯繫地址空間。並且進程的虛擬主存空間彼此隔離,具備很好的安全性。學習

文件抽象:除處理器和主存職位,將磁盤和其餘外部設備資源都抽象爲文件。優化

 

[註釋(19)#在學習操做系統的時候,一個重要的概念是傳統操做系統內
核是獨佔,不可剝奪的,Kernel is not preemptive。這個概念的理解把握
對閱讀源碼,理解Unix/Linux的演化是相當重要的。對鎖機制,鎖粒度的
優化也是最重要的。操作系統

 

[註釋(20)# 用戶態/核心態的本質是: 保護。保護什麼?Kernel的全局
變量。爲何? Kernel是共享的。每一個進程,例如,32位系統Linux,是
4G空間。3G用戶+1G核心 =進程。由於是共享的kernel,因此須要互
斥。不然,全局變量用一半就被衝了。。。 
 
[註釋(21)# 理解kernel空間是PART OF 一個進程空間,是對現代操做
系統把握最重要的概念之一。例如,經典OS有一個重要的statement:blog

kernel是沒有context的。什麼意思?kernel不存在生命。是屬於一個進程
的,並且是共享的。 進程

 

[註釋(22)#系統調用是操做系統裏略微難理解的一個概念。其實就是通
過一個特殊指令,使得CPU挑戰到異常處理,而後經過查表(事先填好)
,最後調用相應的kernel庫函數。(在經典os裏),kernel就是全局變量
+函數。寫系統調用時,要注意的是對參數傳遞的約定要比較清楚。資源

相關文章
相關標籤/搜索