微處理器設計/作業系統
外觀
< 微處理器設計
作業系統是系統軟體中必不可少的組成部分。它是一個程式,使計算機硬體能夠與計算機軟體通訊和操作。作業系統最初由載入程式載入到計算機中,它管理計算機中的所有其他程式。作業系統在計算機硬體之上提供了一個軟體平臺,其他應用程式可以在該平臺上執行。應用程式透過定義的應用程式程式設計介面 (API) 向作業系統發出服務請求來使用作業系統。此外,使用者可以透過使用者介面(如命令語言或圖形使用者介面 (GUI))直接與作業系統互動。作業系統通常配備了諸如多工處理、同步、中斷和事件處理、輸入/輸出、任務間通訊、定時器和時鐘以及記憶體管理等功能,以完成其主要作用,即管理硬體資源以滿足應用程式的需求。
幾乎所有包含計算機的裝置上都可以找到作業系統,從手機和影片遊戲機到超級計算機和網路伺服器。流行的現代作業系統的例子包括 "Android"、BSD、iOS、Linux、OS X、QNX、Microsoft Windows、Windows Phone 和 IBM z/OS。除了 Windows、Windows Phone 和 z/OS 之外,所有這些系統都源於 UNIX。
一個 "核心" 是一個程式,它構成作業系統的核心元件。它完全控制系統中發生的每件事。
- 它使系統更方便使用者使用。
- 它透過確保每個應用程式獲得必要的資源,同時管理所有其他應用程式,從而提高效率,來管理系統的硬體和軟體資源。
- 作業系統負責提供一致的應用程式程式設計介面 "(API)"。一致的應用程式程式設計介面允許軟體開發人員在一個裝置上編寫應用程式,並對應用程式在同一型別的另一個裝置上執行有高度的信心,即使這兩個機器上的記憶體大小或儲存量不同。
- 作業系統的構造方式應允許有效地開發、測試和引入新的系統功能,同時不干擾服務。
作業系統中的一部分稱為排程程式,負責決定何時執行哪個程式,並透過快速地在每個程式之間切換來提供同時執行的錯覺。作業系統的型別由排程程式決定何時執行哪個程式的方式定義。
- 即時作業系統 (RTOS) - 即時作業系統 (RTOS) 是一種旨在為即時應用程式請求提供服務的作業系統。它必須能夠處理傳入的資料,通常不需要緩衝延遲。
- 單使用者、單任務 - 顧名思義,這種作業系統旨在管理計算機,以便單個使用者可以有效地在同一時間做一件事。例如 Palm OS。
- 單使用者、多工 - 允許單個使用者同時執行多個程式的作業系統。這是如今大多數人在臺式機和筆記型電腦上使用的作業系統型別。例如,微軟的 Windows 和蘋果的 MacOS。
- 多使用者 - 多使用者作業系統允許許多不同的使用者同時利用計算機資源。作業系統必須確保平衡各種使用者的需求,以及他們正在使用的每個程式都有足夠的獨立資源,以便一個使用者的故障不會影響整個使用者社群。例如,Unix、VMS 和大型機作業系統。
在本書中,我們將僅詳細討論即時作業系統。