操作系統(tǒng)概述

操作系統(tǒng)的定義和作用

定義:操作系統(tǒng)是計(jì)算機(jī)系統(tǒng)中的一個(gè)系統(tǒng)軟件,是一些程序模塊的集合。

作用:

(1)資源管理:能盡量有效、合理的方式組織和管理計(jì)算機(jī)資源。其中包括各種軟硬件資源,CPU、內(nèi)存、設(shè)備、時(shí)鐘、網(wǎng)卡、文件等

資源管理的方式:

1、跟蹤記錄資源使用情況

2、確定資源分配策略

3、實(shí)施資源的分配和回收

4、提高資源的利用率

5、保護(hù)資源使用

6、協(xié)調(diào)多個(gè)進(jìn)程對(duì)資源請(qǐng)求的沖突

(2)提供服務(wù):為用戶提供一組功能強(qiáng)大、方便使用的命令系統(tǒng)調(diào)用(用戶和計(jì)算機(jī)交互的兩種方式)

(3)對(duì)硬件機(jī)器進(jìn)行拓展(對(duì)應(yīng)操作系統(tǒng)的虛擬性,見(jiàn)下文):屏蔽硬件的一些繁瑣操作和實(shí)現(xiàn)細(xì)節(jié),將其包裝成一些簡(jiǎn)單的操作,使硬件對(duì)程序員透明,對(duì)硬件進(jìn)行抽象。

操作系統(tǒng)的特征

1、并發(fā):能處理多個(gè)同時(shí)性的活動(dòng)。并發(fā)與并行不同,并行指的是不同的程序在多個(gè)硬件部件上同時(shí)執(zhí)行;但并發(fā)指的是同一個(gè)套硬件執(zhí)行多個(gè)程序,在宏觀上,不同的程序同時(shí)執(zhí)行,但在微觀上,同一時(shí)刻實(shí)際上只有一個(gè)程序在執(zhí)行

2、共享:操作系統(tǒng)與多個(gè)用戶的程序共同使用就計(jì)算機(jī)系統(tǒng)中的(有限的)資源。

互斥共享(如打印機(jī))

同時(shí)共享(如可重入代碼、磁盤(pán)文件等)

引發(fā)的問(wèn)題:資源分配難以達(dá)到最優(yōu),如何保護(hù)資源?

3、虛擬:一個(gè)物理實(shí)體映射為若干個(gè)對(duì)應(yīng)的邏輯實(shí)體——分時(shí)或分空間。

虛擬是操作系統(tǒng)管理資源的重要手段,可以提高資源利用率。

如:CPU——每個(gè)進(jìn)程的“虛處理機(jī)”

存儲(chǔ)器——每個(gè)進(jìn)程都有獨(dú)立的虛擬地址空間(代碼+數(shù)據(jù)+堆棧)

顯示設(shè)備——多窗口或虛擬終端

4、隨機(jī):操作系統(tǒng)必須隨時(shí)對(duì)以不可預(yù)測(cè)的次序發(fā)生的時(shí)間進(jìn)行響應(yīng)和處理。

多個(gè)進(jìn)程并發(fā)執(zhí)行,“走走停?!?,無(wú)法預(yù)知每個(gè)進(jìn)程的運(yùn)行快慢

也因此,難以重現(xiàn)在某個(gè)時(shí)刻的系統(tǒng)出現(xiàn)狀態(tài),包括難以重現(xiàn)同一個(gè)錯(cuò)誤,這給操作系統(tǒng)的調(diào)試帶來(lái)了很大的困難。


操作系統(tǒng)的架構(gòu)

不同的系統(tǒng)有著不同的架構(gòu),如WINDOWS、UNIX、LINUX等,下面只是一些大致的架構(gòu),可能和具體的實(shí)現(xiàn)有所不同

1、內(nèi)核模塊:

(1)硬件抽象層:屏蔽了硬件的細(xì)節(jié)

(2)內(nèi)核層:處理不同體系結(jié)構(gòu)之間的功能,如線程管理、線程調(diào)度、終端處理、文件系統(tǒng)等

(3)設(shè)備驅(qū)動(dòng)程序?qū)樱喊ǜ鱾€(gè)文件系統(tǒng)驅(qū)動(dòng)程序,設(shè)備驅(qū)動(dòng)程序等

(4)系統(tǒng)調(diào)用接口:與用戶模塊交互的通道

2、用戶模塊:

(1)動(dòng)態(tài)鏈接庫(kù)、環(huán)境子系統(tǒng)(WINDOWS獨(dú)有)

(2)用戶進(jìn)程

(3)庫(kù)函數(shù)

(4)應(yīng)用程序

操作體統(tǒng)分類(lèi)

根據(jù)需求和目的,操作系統(tǒng)的分類(lèi)方式也有多種,以下是一種分類(lèi)方式,根據(jù)工作方式和場(chǎng)景等來(lái)分類(lèi)

1、批處理操作系統(tǒng):用戶把作業(yè)交給操作員,操作員將一批作業(yè)交給系統(tǒng),那么操作系統(tǒng)會(huì)依次、順序執(zhí)行每個(gè)作業(yè)。一旦開(kāi)始執(zhí)行,用戶無(wú)法對(duì)系統(tǒng)進(jìn)行任何干預(yù),即不能有任何交互。

(1)單道批處理系統(tǒng):內(nèi)存中只能有一個(gè)作業(yè)

(2)多道批處理系統(tǒng):內(nèi)存中可以有多個(gè)作業(yè)同時(shí)存在,以能夠充分利用計(jì)算機(jī)的資源。

缺陷:由于慢速的輸入輸出,使得CPU在大部分時(shí)間處于空閑狀態(tài)

解決方案:

(1)衛(wèi)星機(jī):衛(wèi)星機(jī)完成面向用戶的輸入輸出(讀入紙帶或卡片),中間結(jié)果暫存在磁盤(pán)或磁帶上。由操作員將磁盤(pán)或磁帶交給一部處理性能強(qiáng)的計(jì)算機(jī)來(lái)計(jì)算,計(jì)算結(jié)果暫存在磁盤(pán)或磁帶中,由操作員將磁盤(pán)或磁帶到另一個(gè)衛(wèi)星機(jī)上來(lái)打印。

注:以上過(guò)程實(shí)際上涉及到了3臺(tái)計(jì)算機(jī),兩臺(tái)衛(wèi)星機(jī)分別負(fù)責(zé)輸入和輸出的工作,而一個(gè)較強(qiáng)計(jì)算能力的機(jī)器專(zhuān)門(mén)負(fù)責(zé)計(jì)算,將慢速的輸入輸出和快速的計(jì)算進(jìn)行分離,以提高CPU利用率。

(2)spooling技術(shù):spooling技術(shù)將上述案例中三臺(tái)計(jì)算機(jī)完成的任務(wù)合成到了一臺(tái)計(jì)算機(jī)中。

spooling技術(shù):是一個(gè)批處理系統(tǒng)實(shí)現(xiàn)通常采用的技術(shù)。又稱(chēng)為假脫機(jī)技術(shù)。

思想:利用磁盤(pán)作為緩沖,將輸入、計(jì)算、輸出分別組織成獨(dú)立的任務(wù)流,是I/O和計(jì)算真正的并行

過(guò)程:

(1)用戶作業(yè)加載到磁盤(pán)上的輸入井

(2)按照某種調(diào)度作業(yè)選擇幾個(gè)搭配得當(dāng)?shù)淖鳂I(yè),調(diào)入內(nèi)存。

(3)作業(yè)運(yùn)行的結(jié)果輸出到磁盤(pán)上的輸出井

(4)運(yùn)行的結(jié)果從磁盤(pán)上的輸出井送到打印機(jī)

時(shí)至今日,有些設(shè)備上依舊在使用spooling技術(shù),如打印機(jī)。每一頁(yè)可以認(rèn)為是一個(gè)作業(yè),一個(gè)文檔被輸入到打印機(jī)請(qǐng)求隊(duì)列中(輸入井),打印進(jìn)程從輸入井中讀取數(shù)據(jù)負(fù)責(zé)打印。

spooling技術(shù)

2、分時(shí)操作系統(tǒng):將CPU的時(shí)間劃分為若干個(gè)片段,即時(shí)間片。操作系統(tǒng)以時(shí)間片尾單位,輪流為每個(gè)終端用戶服務(wù),每次服務(wù)的時(shí)間一個(gè)時(shí)間片,給每個(gè)用戶的錯(cuò)覺(jué)是計(jì)算機(jī)上沒(méi)有其他的用戶,系統(tǒng)由其獨(dú)占。

3、通用操作系統(tǒng):分時(shí)操作系統(tǒng)和批處理系統(tǒng)相結(jié)合。分時(shí)優(yōu)先、批處理在后。白天分時(shí)給大家用,晚上的時(shí)候用戶不使用終端的時(shí)候再把大部分CPU用來(lái)處理批作業(yè),因?yàn)榉謺r(shí)系統(tǒng)對(duì)即時(shí)性要求較高,而批處理對(duì)響應(yīng)時(shí)間要求不高。

4、實(shí)時(shí)操作系統(tǒng):指計(jì)算機(jī)能及時(shí)響應(yīng)外部事件的請(qǐng)求,在規(guī)定的嚴(yán)格時(shí)間內(nèi)做出響應(yīng),高可靠性。

5、個(gè)人計(jì)算機(jī)操作系統(tǒng):追求界面友好,功能豐富

6、網(wǎng)絡(luò)操作系統(tǒng):追求相互通信、資源共享

7、分布式系統(tǒng):以計(jì)算機(jī)網(wǎng)絡(luò)為基礎(chǔ),或者以多個(gè)處理機(jī)為基礎(chǔ),基本特征是處理分布在不同計(jì)算機(jī)上,允許若干個(gè)計(jì)算機(jī)相互協(xié)作來(lái)完成同一項(xiàng)任務(wù)。處理能力增強(qiáng)、速度更快、對(duì)用戶透明,即用戶感覺(jué)不到分布式的存在。

8、嵌入式系統(tǒng):它們是一個(gè)大設(shè)備的一部分,運(yùn)行在嵌入式設(shè)備中。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 這里是學(xué)習(xí)了北大的操作系統(tǒng)原理課程做的筆記,這門(mén)課有一個(gè)好處就是基本上按照《現(xiàn)代操作系統(tǒng)》這本書(shū)來(lái)講的,可以對(duì)照著...
    yjaal閱讀 5,706評(píng)論 1 104
  • 本系列文章力求用最簡(jiǎn)潔的語(yǔ)言整理出操作系統(tǒng)的知識(shí)框架,幫助求職的同學(xué)對(duì)操作系統(tǒng)的知識(shí)做一個(gè)梳理。 1. 操作系統(tǒng)的...
    saviochen閱讀 939評(píng)論 1 7
  • 1.1操作系統(tǒng)概述 操作系統(tǒng)定義 ■ 沒(méi)有公認(rèn)的精確定義 ■ 操作系統(tǒng)是一個(gè)控制程序 一個(gè)系統(tǒng)軟件 控制程序執(zhí)行過(guò)...
    龜龜51閱讀 494評(píng)論 0 0
  • word直接復(fù)制來(lái)了,格式就不改了。至于這門(mén)課怎么復(fù)習(xí),只要平時(shí)實(shí)驗(yàn)都認(rèn)真完成、報(bào)告認(rèn)真寫(xiě),平時(shí)分都很高;考試的話...
    Jozhn閱讀 4,905評(píng)論 0 8
  • 我在春天潑墨 在秋天收割 除了發(fā)黃的詩(shī)篇 一無(wú)所獲 也許不是詩(shī),我也終將成不了詩(shī)人 有什么關(guān)系呢 那些春花 那些秋...
    桐萬(wàn)里閱讀 357評(píng)論 0 3

友情鏈接更多精彩內(nèi)容