操作系統是管理計算機硬件和軟件資源的計算機程序(軟件)
1. 操作系統的種類是多種多樣的,不侷限於計算機
2. 從手機到超級計算機,操作系統可簡單也可複雜
3. 在不同設備上,操作系統可向用戶呈現多種操作手段
一 爲什麼我們需要操作系統
1. 我們不可能直接操作計算機硬件
2. 設備種類繁多複雜,需要統一界面
3. 使更多人可以使用計算機
二 操作系統的基本功能
1. 處理器資源 存儲器資源 IO設備資源 文件資源 操作系統統一管理
2. 用戶無需面向硬件接口編程
3. IO設備管理軟件,提供讀寫接口
4. 文件管理軟件,提供操作文件接口
操作系統提供了用戶與計算機之間的接口
三 操作系統相關概念
1. 併發性
並行是指兩個或多個事件可以在同一時刻發生
併發是指兩個或多個事件可以在同一個時間間隔發生
多道程序設計:
單處理器:程序併發
多處理器:某一時刻,可以有兩個程序並行。但在每一核內還是併發的。
2. 共享性
共享性表現爲操作系統中的資源可供多個併發的程序共同使用,稱之爲資源共享
兩種共享形式:
(1)互斥共享:當資源被程序A佔用時,其他想使用的話只能等待。只有當進程A使用完以後,其他進程纔可以使用該資源
打印機的例子
(2)同時訪問:某種資源在一段時間內併發地被多個程序訪問,從宏觀看,該程序可以被同時訪問
3. 虛擬性
虛擬性表現爲把一個物理實體轉變爲若干邏輯實體,物理實體是真實存在的,邏輯實體是虛擬的。
主要有時分複用技術和空分複用技術
(1)時分複用技術:資源在時間上覆用,不同程序併發使用。多道程序分時使用計算機的硬件資源。提高資源利用率。
有虛擬處理器技術:藉助多道程序設計技術,爲每個程序建立進程。多個程序分時複用處理器。
和虛擬設備技術:物理設備虛擬爲多個邏輯設備,每個程序佔用一個邏輯設備。多個程序通過邏輯設備併發訪問。
(2)空分複用技術:用來實現虛擬磁盤和虛擬內存。提高資源利用率,提高編程效率。
虛擬磁盤技術:物理磁盤虛擬爲邏輯磁盤,使用起來安全,方便。C,D,E等邏輯盤。
虛擬內存技術:在邏輯上擴大程序等存儲容量,使用比實際內存更大的容量。大大提高編程效率。
4. 異步性
在多道程序環境下,允許多個進程併發執行。進程使用資源時,可能需要等待或放棄。進程執行不是一氣呵成,而是以走走停停的形式推進。