操做系統概述

咱們日常所說的計算機,嚴格的講應該指的是計算機系統,它包含硬件(如CPU,內存,顯示器,打印機等)和軟件(在硬件中運行的各類程序)。軟件部分又分爲系統軟件和應用軟件。應用軟件是人們平時用於管理和完成各類業務的程序,而系統軟件則是管理和控制計算機系統的核心一般把這部分稱爲計算機操做系統(如Windows,Linux等系統軟件。Windows是供PC使用的單用戶,多任務,分時操做系統;Linux是在大中型計算機系統中使用的多用戶,多任務,分時操做系統。因爲如今PC的硬件環境很是完善,也能夠在PC上安裝UNIX操做系統)。算法

一般把沒有配置系統軟件的計算機稱爲裸機,它的功能很是弱,只能進行0和1的二進制運算。把計算機操做系統加載到計算機硬件上後,就可使計算機功能變得很是強大,服務質量很是高,使用很是方便從而爲使用計算機的人提供一個安全可靠的應用環境。同時,操做系統能夠有效而合理地組織和安排多個用戶共享計算機系統的各種設施,最大限度地提升這些資源的利用率。 數據庫

操做系統的定義
根據馮·諾依曼的指導思想計算機硬件系統是將運控部件(CPU),內存,輸入輸出部件等安裝在計算機主板上經過邏輯鏈接構成。要使這些部件可以發揮其性能,就須要一套管理(控制,分配)硬件和組織程序有序運行的程序。這套程序就是人們一般所說的操做系統。編程

通常地操做系統由許多可供用戶調用的程序組成。這些程序分爲三類:安全

信息管理
主要提供對信息的存儲,檢索,修改和刪除等功能網絡

進程管理
主要爲程序的執行而建立進程,調度進程,掛起進程,終止進程和重啓進程等。併發

內存管理
主要爲內存分配所需的內存和回收進程以運行結束後所釋放的內存。性能

操做系統的功能及服務對象
在計算機系統上配置操做系統,就是讓硬件功能獲得成百上千倍的提高。一般,我的計算機系統是安裝小規模,單用戶,多任務的分時操做系統(如Windows);而證券,銀行,交通運輸行業中的信息處理系統,大都須要安裝大規模,多用戶,多任務的分時操做系統(如UNIX)。優化

操做系統的功能
管理和控制CPUspa

管理存儲器(包括內存和外存)操作系統

管理輸入輸出(I/O)設備

對系統中各種信息(一般也稱文件)進行管理

上述功能的完成,是靠計算機系統的控制器與操做系統的配合而實現的。

操做系統的服務對象
從大的方面講,操做系統或者說整個計算機系統都是爲人服務的。但具體則是用於完成計算機系統硬件的管理和控制,具體完成對各種信息的編輯,運行,輸入輸出等等實行控制。由於,在計算機系統中,有多個程序(做業)併發執行,競爭使用資源。這時操做系統根據資源的狀態和運行程序的優先級等條件按必定的算法將資源分配給具有條件的程序(進程或線程)。

在計算機系統中,人們是經過操做系統或者說是操做系統提供的各類相關命令來使用計算機的,因此說操做系統是用戶與計算機系統的接口。

操做系統的結構
操做系統是一個十分複雜而龐大的系統軟件。爲了控制該軟件的複雜性,能夠用軟件工程的概念,原理規範來開發,運行和維護該軟件,以杜絕開發軟件的隨意性,編程冗餘和維護困難等問題。爲此,人們把作工程的思路和方法應用到了軟件的開發過程當中。

層次結構
在層次結構中整個操做系統的構成一般以分層的結構來實現,各個部分關係清晰,一目瞭然

內核層
它是操做系統的最裏層,是惟一直接與計算機硬件打交道的一層。他使得操做系統和計算機硬件相互獨立。也就是說,只要改變操做系統的內核層就可使同一操做系統運行於不一樣的計算機硬件環境下。內核提供了操做系統中最基本的功能,它包括了裝入,執行程序以及爲程序分配各類硬件資源的子系統。把軟件和硬件所傳遞的各種信息在內核進行處理。這樣,對普通用戶來說,使複雜的計算機系統變得簡單易操做。

服務層
服務層接受來自應用程序或命令層的服務請求,並將這些請求譯碼爲傳送給內核執行的指令,而後再將處理結果回送到請求服務的程序。一般,服務層由衆多程序組成能夠提供以下服務。

訪問I/O設備:將數據進行輸入輸出。

訪問儲存設備(內存或外存):把數據從磁盤讀出後送到內存或將內存的數據寫到磁盤。

文件操做:一般指打開(關閉)文件,讀寫文件。

特殊服務:窗口管理,通訊網絡和數據庫訪問等。

命令層
它提供用戶接口,是操做系統中惟一直接與用戶(應用程序)打交道的部分

用戶
這裏一般指應用程序。

模塊結構
模塊結構是指在開發軟件尤爲是像計算機操做系統這樣的大型軟件時,因爲其功能複雜,參加開發工做的人員衆多,要讓每一個人都能各負其責,各盡其職,有序的完成開發任務,一般的作法是根據軟件的大小,功能的強弱和參與人員的具體狀況,把開發軟件工做按功能劃分爲若干塊,分散開發,集中組合,調試,使開發的軟件功能完善結構優化。

圖片描述

在整個計算機系統中,不論是層次機構仍是模塊結構操做系統均可以用下圖來講明其構造體系。

高層:用戶接口(命令接口,程序接口,圖形接口)

中層:對對象實施操做和管理的軟件合集

底層:操做系統的對象(CPU,內存,I/O設備,文件和做業)

從上圖能夠看到,底層其實是操做系統控制和管理的計算機硬件,各種信息和須要運行的程序等部分。

中層是指完成底層任務所須要的各種程序,這是一個龐大的軟件體。

除了上面所講的兩個部分外,餘下的就應該是用戶的各種應用程序了,這些應用程序這樣與操做系統的管理程序實現調用呢?這須要一個契入點,也就是人們平常所說的接口。也就是說,應用程序是經過這些接口滲透到計算機系統的核心的。反之同樣。

相關文章
相關標籤/搜索