操作系統提供的服務

操作系統提供的基本服務

操作系統要負責程序的執行,也要負責編程任務等,所以它需要有以下基礎服務:

  • 創建程序,提供各種工具和服務,包括編輯程序和調試程序,幫助用戶編程並生成源程序

  • 執行程序,將用戶程序和數據裝入主存,爲其運行做好準備工作並啓動執行。當程序編譯或執行出現異常時,應當有異常報告並對異常做適當處理

  • 數據I/O,程序在運行過程中需要I/O設備上的數據時,可以通過I/O命令來請求操作系統的服務。操作系統不允許用戶直接控制I/O設備,但是可以讓用戶通過簡單方式實現I/O控制和讀寫數據

  • 信息存取,文件系統讓用戶按文件名來建立、讀寫、修改、刪除文件,當設計多用戶訪問時或共享文件時,操作系統應提供信息保護機制。

  • 通信服務,在許多情況下,一個進程要與另外的進程交換信息,這種通信通常發生在兩種場合,一種是在同一臺計算機上執行的進程之間通信;二是在被網絡連接在一起的不同計算機上執行的進程之間通信。進程通信可以藉助共享內存方法實現,也可以通過消息傳送實現。

  • 錯誤檢測和處理,操作系統能捕捉和處理各種硬件或軟件造成的差錯和異常,並適當處理這些問題,必要時及時報告給操作員或用戶。

除了上面提供給用戶的服務以外,操作系統還有一些提供給自身的服務,以保證自身高效工作

  • 資源分配:多道作業同時運行時,每一個必須獲得系統資源,而系統中的各類資源都由操作系統來管理

  • 統計:統計結果可以作爲進一步改進系統服務、對系統進行重組的工具,而且用戶也需要知道計算機資源的使用情況

  • 保護:對系統資源的所有存取都要確保受到控制,而且用戶程序對各種資源的需求可能會經常衝突,所以操作系統需要有合理的調度。

操作系統提供的用戶接口

提供了兩種接口,一種是程序接口可以通過系統調用的方式來獲得操作系統的服務;另一種是操作接口,主要是方便用戶直接使用的一些接口。

程序接口與系統調用

操作系統提供的系統調用很多,從功能上大致可分爲五類:

  • 進程,進程和作業管理,終止或異常終止進程、裝入和執行進程、創建和撤銷進程、獲取和設置進程屬性

  • 文件,建立文件、刪除文件,打開、關閉文件,讀寫文件

  • 設備管理,申請設備、釋放設備、設備I/O、獲得和設置設備屬性

  • 內存管理:申請內存和釋放內存

  • 信息維護,獲取和設置日期及時間、獲得和設置系統數據

  • 通信,建立和斷開通信連接、發送和接收消息、傳送狀態信息、連接和斷開遠程設備

windows通過三個組件來支持API:Kernel、User和GDI。Kernel包含了大多數操作系統函數,如內存管理、繼承管理;User集中了窗口管理函數,如窗口創建、撤銷、移動、對話及各種相關函數;GDI提供了畫圖函數、打印函數。

系統調用的實現要點

每個操作系統都提供幾十到幾百條系統調用,在操作系統中,實現系統調用功能的機制被稱爲陷入或異常處理機制,由於系統調用而因機器處理器中斷的機器指令稱訪管指令(supervisor),陷入指令(trap)或異常中斷指令(interrupt)。在操作系統中,每個系統調用都事先規定了變好,稱功能號,在訪管或陷入指令中必須指明對應系統調用的功能號,在大多數情況下,還附帶有傳遞給內部處理程序的參數。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章