嚴謹的定義:作業系統是管理計算機硬體和軟體資源的電腦程式
管理配置記憶體,決定資源供需順序,控制輸入輸出裝置等方法管理計算機硬體資源
作業系統提供讓使用者和系統互動的介面,種類多種多樣,不侷限計算機,手機到超級計算機、操作可簡單也可複雜,同時在不同裝置上,可以向使用者呈現多種操作手段(手機通過觸屏,pc通過鍵盤滑鼠等)
管理硬體、提供使用者互動的軟體系統
為什麼一定要使用作業系統?
不可能直接操作計算機硬體
裝置種類繁多,需要統一的介面
簡易上手,操作方便
1.作業系統統一管理著計算機資源:處理器資源、儲存器資源、io裝置資源、檔案資源
2.從資源角度考慮,使用者無需面向硬體介面程式設計,實現了對計算機資源的抽象
3.提供了使用者與計算機之間的介面,提供影象視窗形式、命令形式、系統呼叫形式(開啟檔案,讀取資料等)
是後面三種特性的前提,與並行性作為對比一起了解併發性。
並行指的是兩個或者多個事件在同一時刻發生,比如我現在在寫部落格,我的貓咪現在在吃下午餐,我和我的貓就是並行的關係
而併發指的是兩個或者多個事件可以在同一時間間隔發生,假設現在16:30我在寫部落格,我16:40喝了一杯水,在16:00–16:40這一時間間隔裡我寫部落格和我喝水發生了併發。
並行和併發如何在計算機中體現?
聯想多道程式設計是並行和併發的基礎,對於單個處理器,程式主要是併發執行,在某乙個時候只能用乙個程式占用cpu,多道程式交替執行
雙處理器某一時刻都是兩個處理器並行執行的,雙處理器裡的每一核都是併發執行。
共享性指的是作業系統內的資源可以提供給多個併發程式共同使用,這種共用使用的形式是資源共享
如果一塊主存內有a和b兩個程式在使用記憶體,說明主存被共享了。
資源共享可以根據屬性可以分為兩種形式
互斥共享形式 (當某一資源被程式a占用時,其他程式使用只能等待到程序a使用完成)
同時訪問形式(某乙個資源在一段時間內可以併發的被多個程式訪問 ,巨集觀來看資源可以被同時訪問,比如a,b兩個程式需要向硬碟中寫資料,a在寫的時候b只能等待, 由於寫資料很快,可以認為它是同時訪問的)
如果強調的是一段時間內併發的使用,主要是強調共同時訪問形式;如果強調的是某乙個時刻或比較短的時間間隔,主要是強調互斥共享形式
虛擬性表現為把乙個物理實體(是真實存在的,可能是計算機中的某一裝置)轉變為若干個邏輯實體(是虛擬的)
虛擬的技術主要有時分復用技術和空分復用技術
時分復用技術
資源在時間上進行復用,不同程式併發的使用;多道程式分時的去使用硬體資源(比如單處理器程式的執行)它提高資源的利用率。它包含了虛擬處理器技術(借助多道程式設計技術為每個程式建立程序,多個程式分時復用處理器)和虛擬裝置技術(把乙個物理裝置虛擬為多個邏輯裝置,每乙個程式占用乙個邏輯裝置,多個程式通過邏輯裝置併發訪問)
空分復用技術
主要是用來實現虛擬磁碟、虛擬記憶體等,大大提神資源利用率並且提公升程式設計效率。
分為虛擬記憶體技術(在邏輯上擴大了程式的儲存容量,使用比實際記憶體更大的容量,大大提神程式設計效率)和虛擬磁碟技術(物理磁碟虛擬為多個邏輯磁碟,比如普通硬碟可以分為a、b、c盤等,使用磁碟更加方便安全,各盤互不影響)
在多道程式環境下,允許多個程序併發執行,程序在使用資源的時候可能需要等待或者放棄,程序的執行並非一氣呵成,而是走走停停的形式推進。程序在執行某一時刻需要使用資源,如果這個資源被占用,程序可能會停止等待這個資源被釋放,再獲取資源繼續執行下去。
如果有三個程式a、b、c,a執行結束釋放資源,此時b、c都需要使用這個資源,就會搶占它。但是無法確定是b搶占到還是c搶占到。所以程序推進的速度是無法預知的。無法確定程式何時執行、何時暫停或者何時結束就導致了程式的非同步性。
作業系統概述
作業系統幾大管理 1 cpu管理 cpu是作業系統中最重要的部分之一。cpu管理又稱程序管理,即是如何將cpu真正地分配給每個任務。我們無法直接操控硬體,只能通過程式來控制硬體。程序排程有以下幾種主要的排程方法 a fifo b 時間片輪轉排程 c 短程序優先 類似1970年一篇 中得比率單調演算法...
作業系統概述
一.現代計算機系統由硬體和軟體兩部分組成.1.硬體包括處理器,暫存器,記憶體,外存及各種i o裝置.2.軟體包括系統軟體,支撐軟體和應用軟體.2.1系統軟體 作業系統 最接近硬體的一層,把硬體封裝起來,負責管理和控制計算機硬體並對其做首次擴充和改造 2.2支撐軟體層 建立在作業系統的封裝上,利用作業...
作業系統概述
併發 共享 同步 非同步 虛擬 物理分隔到邏輯分隔,實現多使用者訪問 非同步 走走停停的程序 計算機系統中,通常cpu執行兩種不同性質的程式 一種是作業系統核心程式 另一種是使用者自編程式或系統外層的應用程式。作業系統在具體實現上劃分了使用者態 目態 和核心態 管態 以嚴格區分兩類程式。核心態 作業...