【計算機基礎】操作系統濃縮版1--概述


【計算機基礎】操作系統濃縮版1--概述

操作系統模塊架構圖

操作系統濃縮版總覽框架


本文目錄:

  1. OS的定義及特徵
  2. 操作系統的主要工作
  3. 操作系統的定義
  4. 操作系統的特徵
  5. OS的發展

1 OS的定義及特徵

1.1 操作系統的主要工作

<code>#include <stdio.h> 
int main(int argc, char *argv[])
{
int a,b;
scanf(“%d%d”,&a,&b); //從鍵盤接收數據
printf(“a+b=%d\\n”,a+b);//向屏幕輸出結果
return 0;
} /<stdio.h>/<code>

操作系統處理時,步驟如下:

  1. 用戶告訴操作系統執行該程序。該程序在運行前一般在外存上存放著,操作系統通過目錄表從外存找到該程序。
  2. 內存管理模塊根據程序的大小為代碼和變量分配內存,文件系統定位並讀磁盤塊將該程序寫入內存。
  3. 系統創建進程以執行該程序,進程由進程控制塊(PCB)和代碼、數據組成,PCB是系統用於管理進程的數據結構
  4. 進程開始執行, scanf(“%d%d”,&a,&b);涉及到硬件輸入設備(如鍵盤)的操作,設備處理模塊投入工作,使用戶輸入數據,用戶無須關心設備端口狀態以及機械操作細節。
  5. 操作系統以系統功能調用的形式在內部提供了完成從輸入設備輸入數據的程序模塊,該模塊負責所有涉及硬件機械電子特性的處理。
  6. printf(“a+b=%d\\n”,a+b);涉及到CPU的計算處理功能和輸出設備(如顯示器)的操作,在多任務系統中,需要有專門的處理機調度模塊負責分配處理機和保護處理機現場,在進程間完成進程切換的工作。
  7. return 0;結束用戶進程的運行,將控制權返回給操作系統,操作系統回收用戶進程所佔用的內存等軟硬件資源,進行結束處理,用戶同樣無須關心這些善後事宜。
  8. 對於用戶來說,操作系統屏蔽了上述處理過程,用戶只需通過鼠標的點擊或者在程序中簡單地安排幾條系統功能調用即可完成,無需關心底層細節。
  9. 綜上所述,操作系統在執行程序的過程中向用戶提供了文件存取服務、內存分配服務、處理機調度服務、設備分配和處理服務等功能。

1.2 操作系統定義

  • 從所處的位置看,操作系統充當了計算機用戶和計算機硬件資源之間的媒介。用戶是通過操作系統來使用計算機的。
  • 定義:
    OS 是一個系統程序集合,管理和控制計算機的所有軟件和硬件資源,合理地組織計算機工作流程,以便有效地利用系統資源,為用戶提供一個功能強大、使用方便的工作環境。

1.3 操作系統的特徵

併發性

併發性(Concurrence)是指兩個或兩個以上的運行程序在同一時間間隔段內同時執行。

併發性的例子:

  • 多個I/O設備同時在輸入輸出;
  • 設備輸入輸出和CPU計算同時進行;
  • 內存中同時有多個程序被啟動交替、穿插地執行。

共享性

共享指操作系統中的資源(包括硬件資源和信息資源)可被多個併發執行的進程所使用。

第一種是互斥共享。在同一時間內卻只允許一個進程訪問這些資源,稱為臨界資源。如打印機、磁帶機,以及一些變量、數據等都是臨界資源。

第二種是同時訪問。允許同一時間內多個進程對它進行訪問,這裡“同時”是宏觀上的說法。典型的可供多進程同時訪問的資源是磁盤。

共享性和併發性是操作系統兩個最基本的特徵,它們互為依存。

異步性:

  • 由於資源有限而進程眾多,多數情況,進程的執行不是一貫到底,而是“走走停停”

進程以不確定的方式運行,這種不確定性給系統帶來了潛在的危險,有可能導致與時間有關的錯誤。但只要運行環境相同,操作系統必須保證多次運行作業,都會獲得完全相同的結果。

共享性和併發性是操作系統兩個最基本的特徵,它們互為依存。

2 OS的發展

單道批處理系統:

內存中僅有單個作業在運行,致使系統中仍有許多資源空閒,設備利用率低,系統性能較差。

多道批處理系統:

是指允許多個程序同時進入一個計算機系統的主存儲器並啟動進行計算的方法。多道程序合理搭配輸入輸出為主與計算為主程序交替運行,充分利用資源,提高系統效率。

  • 多道:計算機內存中同時存放多道相互獨立的程序。
  • 並行:宏觀上並行運行,微觀上串行運行。
  • 無序性:程序完成順序與程序提交順序不一定相同。
  • 調度性:程序從提交到完成須經多次調度。
【計算機基礎】操作系統濃縮版1--概述


分時系統:

把處理機的運行時間分為很短的時間片,一般採用時間片輪轉的方式,使一臺計算機為多個終端服務

  • 推動多道批處理系統形成和發展的主要動力,是提高資源利用率和系統吞吐量。
  • 推動分時系統形成和發展的主要動力,則是用戶的需求。

典型案例:超市的收銀機。

UNIX是當今最流行的一種多用戶分時操作系統。

  • 交互性:系統能及時響應用戶的請求,方便程序的調試和修改。
  • 多路性:多個用戶分別利用不同的終端,共享系統資源,獲得主機的服務。
  • 獨立性:各用戶獨立操作,互不干擾。
  • 及時性:系統能在用戶可接受的時間內處理用戶請求。


實時操作系統:

是指當外界事件或數據產生時,能夠接收並以足夠快的速度予以處理,其處理的結果又能在規定的時間之內來控制監控的生產過程或對處理系統作出快速響應,並控制所有實行任務協調一致運行的操作系統。

典型應用:飛行器的自動控制,飛機訂票系統、銀行管理系統等。


如果想獲取思維導圖文件,請關注公眾號《程序員二毛》,回覆【操作系統】獲取。

未完待續,敬請期待下個系列文章...


分享到:


相關文章: