計算機概論-作業系統(作業系統、程式分類)
作業系統定義與功能
定義
作業系統(Operating System)是一組主管並控制電腦操作、運用和執行硬體、軟體資源和提供公共服務來組織用戶互動的相互關聯的系統軟體程式
功能
- 行程管理(Processing mangagement):
分派優先權、行程間通訊(IPC)、行程異常終止處理以及死結(Dead Lock)偵測及處理等。 - 記憶體空間管理(Memory management):
分配管理記憶體,並讓各行程使用獨立記憶體位址。 - 檔案系統(File system):
管理磁碟資料,將資料以目錄或檔案的型式儲存。 - 網路通訊(Network):
使用TCP/IP或UDP與其他系統分享諸如檔案、印表機與掃描器等資源。 - 安全機制(Security):
允許/拒絕存取資源或記錄各種請求對資源存取的行為。 - 使用者介面(User interface):
GUI(Graphical User Interface)或CLI(command-line interface)。 - 驅動程式(Device drivers):
驅動並與硬體互動的軟體。
程式(軟體)分類
- 系統程式:能控制硬體的運作,讓使用者能很方便的操作電腦系統的一組軟體程式。如作業系統、編譯器、組譯器等。
- 應用程式:即電腦使用者針對其特殊需要而設計的程式。如工程計算、會計作業、電路模擬等。
作業系統分類
- 單人單工:同一時間只允許一個使用者且執行一個應用程式,如:MS-DOS、IOS3等
- 單人多工:同一時間只允許一個使用者執行多個應用程式,通常為家用(個人)作業系統。
- 多人多工:同一時間允許多個使用者執行多個應用程式,通常是伺服器級作業系統。
作業模式
批次處理系統(Batch system)
- 處理方式:將欲處理的資料或程式整批集中,當要處理時,CPU才會到媒體中讀取資料後加以處理。
- 優點:適用於工作量大而不太需要與使用者進行互動的環境。
- 缺點:因為CPU速度遠較存取資料的I/O為快,所以此方式CPU常被閒置,效率低,且不宜處理具有時效性的資料。
即時系統(Real-time system)
- 處理方式:當使用者需要系統去處理某項作業時,系統便會在特定時間內完成處理作業並回應。
分時系統(Time-sharing system)
- 處理方式:分時系統的處理方式和多重程式相似,不同的是分時系統的CPU每次分配給各process相同的一段時間,如果該process無法在該段時間內完成,無論有無I/O需求,都必須離開CPU回到佇列重新排隊等待下一週期再執行。
- 優點:由於電腦CPU的速度實在很快,分時系統上連線的各個終端機,縱使和主機相隔甚遠,仍然可以CPU很快地接受到電腦處理過的各項訊息或結果;達到人和電腦相互交談(interactive)的效果
- 缺點:由於CPU是各process共享的,因此一旦遇到很大資料,又有急迫的時效性需求時,分時系統將無法達成。
多重程式處理系統(Multi-programming system)
- 處理方式:將欲處理的各個程序式(process)全部在輸入到主記憶體的佇列(queue)中,CPU快速地在各個程序式中「循環」執行處理工作,遇到需要進行輸入/輸出時,CPU會將該記憶體process交給I/O處理機去處理,完成後再送回佇列等待被執行,另一方面CPU則繼續下一個process。
- 優點:process使用到I/O時,CPU仍然可以執行其他process,不會浪費CPU時間。
- 缺點:假如某一process很冗長又不需I/O時,CPU將被長期佔用,其他的process則需長期等候。
多工處理系統(Multi-processing system)
- 處理方式:又稱平行處理系統(parallel system),以兩個或兩個以上同型的CPU,以並行處理(parallel processing)的方式,去處理一個或一個以上的process稱為多工處理。
- 特點:多工處理作業系統可以在同一時間完成許多程式的處理工作。也可以由多個CPU去執行同一程式,並相互比較核對執行結果的正確性。常用於需要高度精確的太空工業或國防武器上。
分散式系統(distributed system)
- 處理方式:把工作拆成很多部分,分給網路連結的多的系統執行。
0留言