本文地址:http://www.CUOXin.com/archimedes/p/os-introduction.html,轉載請注明源地址。
1.為什么要學習操作系統?需要總體上掌握系統設計
操作系統包括了所有軟件設計/實現問題,資源共享/管理、安全和身份驗證、靈活性,健壯性、友好界面設計
存在人們意識不到的大量“操作系統”
嵌入式系統(PDA、手機-WP7,Android、機頂盒等)
應用系統中的小操作系統(MINI-OS)
日常生活中并不總是使用Windows系列的操作系統(Unix、linux、Apple Macintosh、IBM OS/2等)
涉及到計算機科學的很多領域:
計算機體系結構/硬件
軟件設計
程序設計語言
數據結構
算法
抽象
執行用戶程序并使用戶問題更易解決。
以一種有效的方式使用資源(有效性--系統管理人員的觀點)。
使計算機系統更易于使用(方便性--用戶的觀點)。
采用新的OS結構,易于功能的增、刪、改(可擴充性)。
要求統一開放的環境,各種類型的計算機硬件系統,出自不同的廠家,能通過網絡集成并能夠正確、有效地協同工作,實現應用程序的移植(開放性)。
3.計算機系統的組成1.計算機系統的組成硬件系統(裸機):CPU、存儲器(主存、輔存)、I/O、I/O控制系統
軟件系統:系統軟件、應用軟件
系統軟件:管理計算機本身的操作。如操作系統、編譯系統
應用軟件:提供給用戶進行解題。如,科學計算、事務管理
2.計算機系統的層次結構OS作為用戶與計算機硬件系統之間的接口
命令方式
系統調用方式
圖形、窗口方式
OS作為計算機系統資源的管理者
管理對象包括:CPU、存儲器、外部設備、信息(數據和軟件);
管理的內容:資源的當前狀態(數量和使用情況)、資源的分配、回收和訪問操作,相應管理策略(包括用戶權限)……
OS實現了對計算機資源的抽象
在裸機上添加:設備管理、文件管理、存儲管理(針對內存和外存)、處理機管理(針對CPU);
即OS用作擴充機器 (extended machine)/虛擬機(virtual machine)。
5.操作系統的基本特征并發(concurrence)
共享(sharing)
虛擬(virtual)
異步性(asynchronism)
宏觀上:多道程序同時在執行
微觀上:任何時刻只有一道程序在執行,即微觀上多道程序在CPU上輪流(交替)執行(單機)
并行(parallel): 與并發相似,指多道程序在同一時刻執行,但需多個硬件支持
引入進程程序和進程:在多道程序系統中,程序不能獨立運行,更不能和其它程序并發執行。引入進程的目的,就是為了使多個程序并發執行。
引入線程進程是OS中擁有資源并獨立運行的基本單位。引入線程后,把進程作為分配資源的基本單位,把線程作為獨立運行和獨立調度的基本單位,進一步提高系統的并發性。
2、共享指系統中的資源不再為某道程序所獨占,而是供多道程序共同使用。
資源共享方式:互斥共享方式、同時訪問方式
并發和共享是操作系統的兩個最基本的特征,二者互為存在條件:
資源的共享是以程序(進程)的并發執行為條件。
程序的并發執行也以資源的共享為條件。
通過某種技術把一個物理實體映射為若干個對應的邏輯實體——分時(時分復用技術)或分空間(空分復用技術)。
虛擬是操作系統管理系統資源的重要手段,可提高資源利用率。如:虛擬處理機(分時)、虛擬設備(分時)、虛擬磁盤(分空間)、虛擬存儲器(分空間、分時)
4、異步也稱不確定性,指進程在執行中,其執行時間、順序、向前推進的速度和完成的時間等都是不可預知的。
只要在OS中配置有完善的進程同步機制,且運行環境相同,作業經多次運行都會獲得完全相同的結果。所以,異步運行方式是允許的,是OS的一個重要特征。
6.操作系統的功能處理機管理、存儲器管理、設備管理、文件管理、用戶接口
1、處理機管理的功能處理機管理的主要任務:
是對處理機進行分配
對處理機運行進行有效的控制和管理
注:處理機的分配和運行以進程為基本單位,因此對處理機的管理可歸結為對進程的管理
處理機管理的功能
主要任務:
功能:
主要任務
主要任務:
方便用戶使用操作系統
功能:
用戶接口(聯機用戶接口-命令方式、圖形用戶接口,脫機用戶接口)
程序接口(系統調用)
7.操作系統的結構設計操作系統的結構設計經歷了以下幾代:
傳統的操作系統結構客戶/服務器模式
面向對象的程序設計
微內核OS結構
參考資料《華東理工大學 操作系統》新聞熱點
疑難解答