操作系統的基本架構
一個普通的操作系統,即類似于一個軟件中間件,是用戶程序和硬件之間的“中介”
因此,一個達到要求的操作系統,便能夠運行許多用戶級別的應用程序(第三方程序)。
同時,這些應用程序可以:
- 和用戶交互
- 和互聯網交互
- 和文件系統交互
對于應用程序來說,操作系統就像是計算機本身,這臺“計算機”提供了:
(1)進程(應用程序的可執行單元);
(2)內存;
(3)文件系統(位于磁盤中);
(4)互聯網交互;
(5)用戶交互設備(即輸入輸出設備,常見的諸如鍵盤,鼠標,顯示器等,專用的設備諸如空間球,游戲手柄等);
(6)對于多用戶操作系統,還需要給每個用戶分配權限,管理他們可以操作等文件等;
(7)計算機安全,比如防止黑客入侵某個部分,或者防止第三方應用程序的肆意破壞= =;
(8)其它。(Whatever needed)
(日后補充操作系統的架構概念圖)
因此,當我們學習操作系統時,可以從一下幾個方面入手:
(1)內存管理與CPU:
首當其沖,這是操作系統,也就是應用程序所謂的“計算機”的核心。
(2)進程與線程:
這是最重要的部分,事實上和內存管理、CPU唇齒相連。沒有了進程和線程,操作系統也就失去了意義。
(3)文件系統:
對于一個操作系統,管理磁盤也相當重要;進程相關的內容都存儲在內存中,可是進程需要讀寫,需要長期存儲一些東西,這些都是文件系統都功勞。
(4)硬件設備接口:
硬件設備,包括磁盤,鼠標,鍵盤等,是操作系統的另一個重要任務;對于磁盤,關系到文件系統的讀取;而對于其它設備,關系到操作系統能否良好地提供一個交互式應用程序環境。
(5)互聯網接口:
這關系到操作系統能否提供一個良好的網絡應用程序環境。面對互聯網發達的今天,沒有一個操作系統可以不提供這樣的接口。
(注:Chromium OS,Firefox OS,幾乎完全依賴與網絡。Web OS,我認為是以后操作系統發展的方向)
在有了以上幾個部分以后,其實操作系統已經可以運行。但是為了更好的服務與應用程序,操作系統需要這些:
*虛擬內存:可以在磁盤中擴張內存。當應用程序需要的內存大于物理內存時,操作系統可以不受束縛的提供更大的內存。
*計算機安全:為了保護操作系統、硬盤、用戶資料或者別的用戶進程,操作系統應該需要提供安全保護。
posted on 2014-03-31 11:45 順其自然EVO 閱讀(274) 評論(0) 編輯 收藏 所屬分類: 測試學習專欄