Section 1 - 操作系統(tǒng)引論

Section 1 - 操作系統(tǒng)引論

  • 0.操作系統(tǒng)定義:是一組能有效組織和管理計(jì)算機(jī)硬件和軟件資源佩脊,合理對(duì)各類操作進(jìn)行調(diào)度褒繁,以方便用戶使用的程序的集合
  • 1.操作系統(tǒng)的作用

    • OS 作為用戶和電腦硬件系統(tǒng)之間的接口
    • OS 作為計(jì)算機(jī)系統(tǒng)資源的管理者
    • OS實(shí)現(xiàn)了對(duì)計(jì)算機(jī)資源的抽象(個(gè)人理解:對(duì)計(jì)算機(jī)的具體實(shí)現(xiàn)不關(guān)系系草,即面向?qū)ο笏枷?
  • 2.操作系統(tǒng)的演變過程

    • 未配置操作系統(tǒng)的計(jì)算機(jī)系統(tǒng)
      • 人工操作方式(人工傳輸穿孔紙帶)
      • 脫機(jī)輸入/輸出(Off-Line I/O)方式(外圍設(shè)備自動(dòng)傳輸穿孔紙帶)
    • 單道批處理系統(tǒng)
    • 多道批處理系統(tǒng)(作業(yè)保存在外存上排成隊(duì)列,按照一定算法調(diào)入內(nèi)存,達(dá)到利用 I/O 操作使 CPU 空擋閑置的時(shí)間抗果,使 CPU 使用率提升)
    • 分時(shí)系統(tǒng)(因?yàn)?0年代計(jì)算機(jī)很稀缺倡怎,一臺(tái)計(jì)算機(jī)被多人使用迅耘,但可以獲得一定的及時(shí)響應(yīng))
    • 實(shí)時(shí)系統(tǒng)(將時(shí)間作為關(guān)鍵參數(shù)贱枣,必須對(duì)接收到的信號(hào)做出及時(shí)的反應(yīng))
    • 微機(jī)操作系統(tǒng)的發(fā)展
      • 單用戶單任務(wù)操作系統(tǒng)(只允許一位用戶上機(jī),只允許用戶的一個(gè)程序運(yùn)行颤专,主要是8位/16位為微機(jī)上纽哥,如 MS-DOS,CP/M)
      • 單用戶多任務(wù)操作系統(tǒng)(只允許一位用戶上機(jī),但允許用戶把程序分成多個(gè)任務(wù)栖秕,使這些任務(wù)并發(fā)執(zhí)行)
      • 多用戶多任務(wù)操作系統(tǒng)(允許多個(gè)用戶通過各自的終端春塌,使用同一臺(tái)機(jī)器,共享主機(jī)系統(tǒng)的各種資源累魔,每個(gè)用戶的程序又可分為多個(gè)任務(wù)摔笤,并發(fā)執(zhí)行,一般用在大中型機(jī)器上垦写,微機(jī)上應(yīng)用的是 UNIX OS(Linux OS是 UNIX 一個(gè)重要變種吕世,MAC OS 是基于 UNIX 內(nèi)核重新開發(fā)))
  • 3.操作系統(tǒng)的基本特性

    • 并發(fā)

      • 并行與并發(fā)區(qū)別:并行是多個(gè)任務(wù)在同一時(shí)刻內(nèi)同時(shí)發(fā)生,并發(fā)是多個(gè)任務(wù)在同一時(shí)間內(nèi)間隔進(jìn)行
      • 引入進(jìn)程:進(jìn)程是在系統(tǒng)中獨(dú)立運(yùn)行并作為資源分配的基本單位梯投,由一組機(jī)器指令和數(shù)據(jù)命辖、堆棧等組成的,
        • 未引入進(jìn)程的系統(tǒng)中分蓖,屬于同一個(gè)應(yīng)用程序的計(jì)算程序和 I/O 程序之間只能是順序執(zhí)行
        • 引入進(jìn)程后尔艇,計(jì)算程序和 I/O 程序可以并發(fā)進(jìn)行
        • 極大地提高系統(tǒng)資源的利用率,增加系統(tǒng)的吞吐量
    • 共享

      • 日常生活中的共享:如圖書館的書籍可以共享么鹤,但并未限定使用者必須在同一時(shí)間和同一地點(diǎn)閱讀
      • OS環(huán)境下的共享:又稱為資源復(fù)用终娃,指系統(tǒng)中的資源可供內(nèi)存中多個(gè)并發(fā)執(zhí)行的進(jìn)程共同使用,既限定了時(shí)間(進(jìn)程在內(nèi)存期間)蒸甜,又限定了地點(diǎn)(內(nèi)存)棠耕,因?yàn)楸容^復(fù)雜,實(shí)現(xiàn) OS 環(huán)境下的共享分為以下兩種:
        • 互斥共享方式
          • 規(guī)定在一段時(shí)間內(nèi)柠新,只允許一個(gè)進(jìn)程訪問該資源窍荧,這種共享類型的資源稱為臨界資源
        • 同時(shí)訪問方式
          • 允許在一段時(shí)間內(nèi)由多個(gè)進(jìn)程“同時(shí)”對(duì)它們進(jìn)行訪問,這個(gè)"同時(shí)"是指微觀上進(jìn)程訪問該資源是交替進(jìn)行的恨憎,比較常見的“同時(shí)”訪問的資源是磁盤設(shè)備(即硬盤)
    • 并發(fā)和共享的關(guān)系:

      • 是多用戶多任務(wù) OS 的兩個(gè)最基本的特征蕊退,又是互為存在的條件
    • 虛擬:

      • 將一個(gè)物理實(shí)體變?yōu)槿舾蓚€(gè)邏輯上的對(duì)應(yīng)為的功能稱為”虛擬“,前者是實(shí)的憔恳,即實(shí)際存在的瓤荔,后者是虛的,只是用戶感覺上的東西
      • 時(shí)分復(fù)用技術(shù)
        • 利用某設(shè)備為一用戶服務(wù)的空閑時(shí)間钥组,轉(zhuǎn)而去為其他用戶服務(wù)茉贡,使設(shè)備得到最充分的利用
      • 空分復(fù)用技術(shù)
        • 利用存儲(chǔ)器的空閑空間分區(qū)域存放和運(yùn)行其他的多道程序,使得提高存儲(chǔ)空間的利用率
        • 單純的空分復(fù)用存儲(chǔ)器只能提高內(nèi)存的利用率者铜,并不能實(shí)現(xiàn)在邏輯上擴(kuò)大存儲(chǔ)器容量的功能腔丧,還需要引入虛擬存儲(chǔ)技術(shù)
        • 使用了虛擬存儲(chǔ)技術(shù)的例子:如一個(gè)100MB 的程序可以在30MB 的內(nèi)存空間上運(yùn)行
        • 虛擬存儲(chǔ)技術(shù)原理:通過內(nèi)存的分時(shí)復(fù)用放椰,每次只把用戶程序的一部分調(diào)入內(nèi)存中運(yùn)行,完成后把該部分取出愉粤,再換入另一部分到內(nèi)存中運(yùn)行
    • 異步:

      • 進(jìn)程的異步性砾医,進(jìn)程是以人們不可預(yù)知的速度向前推進(jìn)的。即內(nèi)存中的每個(gè)進(jìn)程衣厘,在何時(shí)能獲得處理機(jī)運(yùn)行如蚜,何時(shí)又提出某種資源請(qǐng)求而暫停,以及進(jìn)程以怎樣的速度向前推進(jìn)影暴,都是不可預(yù)知的
  • 4.操作系統(tǒng)的主要功能
    • 處理機(jī)的管理管理功能
      • 進(jìn)程控制:為任務(wù)創(chuàng)建進(jìn)程错邦、撤銷(終止)已結(jié)束的進(jìn)程,以及控制進(jìn)程在運(yùn)行過程中狀態(tài)轉(zhuǎn)換
      • 進(jìn)程同步:為了保證多個(gè)進(jìn)程有條不紊的運(yùn)行型宙,系統(tǒng)中必須設(shè)置相應(yīng)的進(jìn)程同步機(jī)制撬呢。協(xié)調(diào)的方式有兩種:
        • 進(jìn)程互斥方式:主要是對(duì)臨界資源的訪問。最簡(jiǎn)單的互斥方式妆兑,是通過為每個(gè)臨界資源配置一把進(jìn)程鎖
        • 進(jìn)程同步方式:指相互合作去完成共同任務(wù)的諸進(jìn)程間魂拦,由同步機(jī)構(gòu)對(duì)它們的執(zhí)行次序加以協(xié)調(diào)。
      • 進(jìn)程通信:一組相互合作的進(jìn)程去完成一個(gè)共同的任務(wù)時(shí)搁嗓,進(jìn)程之間需要交換信息芯勘。
      • 調(diào)度:
        • 作業(yè)調(diào)度:從后備隊(duì)列中按照一定算法選出若干個(gè)作業(yè),為他們分配資源腺逛,將這些作業(yè)調(diào)入內(nèi)存后荷愕,再分別為他們建立進(jìn)程,使他們成為可能獲得處理機(jī)的就緒進(jìn)程棍矛,并插入就緒隊(duì)列中
        • 進(jìn)程調(diào)度:是從進(jìn)程的就緒隊(duì)列中按照一定算法選出一個(gè)線程安疗,分配處理機(jī),設(shè)備運(yùn)行現(xiàn)場(chǎng)茄靠,運(yùn)行它
    • 存儲(chǔ)器管理功能:
      • 內(nèi)存分配:
        • 主要任務(wù):
          • 1.為每道程序分配內(nèi)存空間
          • 2.提高存儲(chǔ)器的利用率,盡量減少不可用的內(nèi)存碎片
          • 3.允許正在運(yùn)行的程序申請(qǐng)附加的內(nèi)存空間蝶桶,以適應(yīng)程序和數(shù)據(jù)動(dòng)態(tài)增長(zhǎng)的需要
        • 內(nèi)存分配方式:
          • 1.靜態(tài)分配:運(yùn)行過程中不允許為該作業(yè)再申請(qǐng)新的內(nèi)存空間慨绳,也不允許作業(yè)在內(nèi)存中"移動(dòng)"
          • 2.動(dòng)態(tài)分配:允許運(yùn)行過程中為該作業(yè)再申請(qǐng)新的附加內(nèi)存空間,也允許作業(yè)在內(nèi)存中"移動(dòng)"
      • 內(nèi)存保護(hù):
        • 主要任務(wù):
          • 確保每道用戶程序都僅在自己的內(nèi)存空間內(nèi)運(yùn)行真竖,彼此互不干擾
          • 決不允許用戶程序訪問操作系統(tǒng)的程序和數(shù)據(jù)脐雪,也不允許用戶程序轉(zhuǎn)移到非共享的其他用戶程序中去執(zhí)行
        • 實(shí)現(xiàn)原理:通過設(shè)置內(nèi)存保護(hù)機(jī)制
        • 一個(gè)簡(jiǎn)單的實(shí)現(xiàn):通過設(shè)置兩個(gè)界限寄存器,分別用于存放正在執(zhí)行程序的上界和下界恢共。程序運(yùn)行期間战秋,對(duì)每條指令所要訪問的地址進(jìn)行 check,若發(fā)生越界讨韭,便發(fā)出越界終端請(qǐng)求脂信,結(jié)束該程序的執(zhí)行
      • 地址映射:
        • 因?yàn)樵诙嗟莱绦颦h(huán)境下癣蟋,每道程序經(jīng)編譯和鏈接后形成的可裝入程序地址都是從0開始的,但不能講它們從”0“地址裝入內(nèi)存狰闪,所以導(dǎo)致各程序段的地址空間內(nèi)的邏輯地址與它在內(nèi)存空間內(nèi)的地址不一致疯搅,為了保證程序的正常運(yùn)行,存儲(chǔ)器管理需要提供地址映射功能埋泵,即將地址空間內(nèi)的邏輯地址轉(zhuǎn)換為內(nèi)存空間中與之對(duì)應(yīng)的物理地址
      • 內(nèi)存擴(kuò)充:
        • 該功能呢并非物理上的擴(kuò)充內(nèi)存幔欧,而是利用虛擬存儲(chǔ)技術(shù),通過內(nèi)存的分時(shí)調(diào)用來實(shí)現(xiàn)
    • 設(shè)備管理功能:
      • 緩存管理:在 I/O 設(shè)備與 CPU 之間引入緩存丽声,來緩和 CPU 與 I/O 設(shè)備速度不匹配的矛盾礁蔗,提高 CPU 利用率,有但緩存機(jī)制、雙緩存機(jī)制等
      • 設(shè)備分配:根據(jù)用戶進(jìn)程的 I/O 請(qǐng)求雁社,系統(tǒng)現(xiàn)有資源情況以及按照某種設(shè)備分配策略浴井,為之分配需要的設(shè)備
      • 設(shè)備處理:設(shè)備處理程序又稱為設(shè)備驅(qū)動(dòng)程序。任務(wù)是用于實(shí)現(xiàn) CPU 和設(shè)備控制器之間的通訊歧胁。由 CPU 向設(shè)備控制器發(fā)出 I/O 指令滋饲,要求設(shè)備控制器完成指定的 I/O 操作;反之 CPU 接收設(shè)備控制器發(fā)來的終端請(qǐng)求喊巍,并給出相應(yīng)和處理
    • 文件管理功能:
      • 文件存儲(chǔ)空間的管理:為文件分配必要的外存空間屠缭,實(shí)施統(tǒng)一管理,并具有存儲(chǔ)空間分配和回收的功能
      • 目錄管理:為每個(gè)文件建立一個(gè)目錄項(xiàng)崭参,方便用戶按照一定規(guī)則存取
      • 文件的讀/寫管理和保護(hù)
        • 讀寫管理:根據(jù)用戶請(qǐng)求從外存中讀取數(shù)據(jù)呵曹,或?qū)?shù)據(jù)寫入外存
        • 文件保護(hù):防止文件被非法竊取和破壞
    • 操作系統(tǒng)與用戶之間的接口
      • 用戶接口:
        • 聯(lián)機(jī)用戶接口:為聯(lián)機(jī)用戶提供,由一組鍵盤操作命令及命令解釋程序組成何暮,即命令行操作
        • 脫機(jī)用戶接口
        • 圖形用戶接口:將 OS 的各種功能和應(yīng)用程序用icon 直觀逼真的表示出來
      • 程序接口 :
        • 是為了用戶程序在執(zhí)行中訪問系統(tǒng)資源而設(shè)置的奄喂,是用戶取得操作系統(tǒng)服務(wù)的唯一途徑,方便應(yīng)用程序開發(fā)者使用
    • 現(xiàn)代操作系統(tǒng)的新功能
      • 系統(tǒng)安全
      • 網(wǎng)路的功能和服務(wù)
      • 支持多媒體
  • 5.OS 結(jié)構(gòu)化設(shè)計(jì)
    • 5.1 傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu):
      • 5.1.1 無結(jié)構(gòu)操作系統(tǒng):一組解決問題的代碼的無序的組合
      • 5.1.2 模塊化結(jié)構(gòu) OS:按照功能詳細(xì)劃分為多個(gè)具有一定獨(dú)立性和解決具體問題的模塊海洼,模塊與模塊間通過預(yù)留的接口進(jìn)行交互跨新,局限性在于開發(fā)時(shí)的問題,主要是接口使用的問題和開發(fā)是齊頭并進(jìn)的坏逢,但需要互相調(diào)用時(shí)域帐,無法保證調(diào)用的代碼是正確的,會(huì)有很多測(cè)試上的問題
      • 5.1.3 分層式機(jī)構(gòu):設(shè)計(jì) a0層是整,調(diào)用底層硬件肖揣,在經(jīng)過繁多測(cè)試后,保證 ao 么有問題后浮入,再設(shè)計(jì) a1層龙优,調(diào)用 a0層,以此類推事秀,雖然解決了模塊化 OS 結(jié)構(gòu)的問題彤断,但具有效率上的問題
    • 5.2 客戶/服務(wù)器模式
      • 簡(jiǎn)稱為 C/S(Client/Server)模式野舶,在上世紀(jì)90年代后開始風(fēng)靡全球,廣泛采用這個(gè)模式
      • 組成:
        • 客戶機(jī):可處理一些本地業(yè)務(wù)瓦糟,也可用通過 LAN 向服務(wù)器發(fā)送請(qǐng)求筒愚,請(qǐng)求某項(xiàng)服務(wù),如查看文件等
        • 服務(wù)器:一般為一個(gè)較大的機(jī)器菩浙,存儲(chǔ)一些重要的文件和數(shù)據(jù)庫(kù)系統(tǒng)巢掺,接收客戶機(jī)的請(qǐng)求,做出相應(yīng)的相應(yīng)
        • 網(wǎng)絡(luò)系統(tǒng):用于連接客戶機(jī)和服務(wù)器
    • 5.3 面向?qū)ο蟮某绦蛟O(shè)計(jì)
    • 5.4 微內(nèi)核 OS 結(jié)構(gòu)
      • 基本概念:
        • 足夠小的內(nèi)核:不是完整的 OS劲蜻,但是 具有OS 最基本的功能陆淀,如①與硬件聯(lián)系最緊密的部分②一些較基本的功能③客戶機(jī)與服務(wù)器之間的通信
        • 基于客戶機(jī)/服務(wù)器模式:在單機(jī)微內(nèi)核操作系統(tǒng)中無一例外都采取了C/S 模式,在單機(jī)下先嬉,通過向微內(nèi)核外的服務(wù)器發(fā)送請(qǐng)求轧苫,獲得相應(yīng),實(shí)現(xiàn)大部分的功能疫蔓,如向進(jìn)程管理服務(wù)器含懊,文件管理服務(wù)器等發(fā)送請(qǐng)求,這些都是作為進(jìn)程來實(shí)現(xiàn)的
        • 應(yīng)用"機(jī)制與策略分離"原理:機(jī)制->實(shí)現(xiàn)某一功能的執(zhí)行機(jī)構(gòu)(放在內(nèi)核中)衅胀,策略->在機(jī)制基礎(chǔ)上岔乔,利用一些參數(shù)和算法優(yōu)化該功能(不再內(nèi)核中)
        • 采用面向?qū)ο蠹夹g(shù):采用面向?qū)ο蠹夹g(shù)來設(shè)計(jì)
    • 5.5 微內(nèi)核的基本功能:
      • 進(jìn)程(線程)管理:進(jìn)程的調(diào)度->機(jī)制部分,對(duì)于進(jìn)程如何分類滚躯,優(yōu)先級(jí)的確認(rèn)雏门,都屬于策略,不放在內(nèi)核中
      • 低級(jí)存儲(chǔ)器管理:如實(shí)現(xiàn)將用戶空間的邏輯地址轉(zhuǎn)換為內(nèi)存空間的物理地址的頁(yè)表機(jī)制和地址變換機(jī)制掸掏,這一部分是依賴硬件茁影,放在微內(nèi)核
      • 中斷和陷入處理:捕獲中斷和陷入事件,進(jìn)行相應(yīng)的前期處理丧凤,如中斷保護(hù)和識(shí)別中斷和陷入的類型
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末募闲,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子愿待,更是在濱河造成了極大的恐慌浩螺,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,755評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件呼盆,死亡現(xiàn)場(chǎng)離奇詭異年扩,居然都是意外死亡蚁廓,警方通過查閱死者的電腦和手機(jī)访圃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來相嵌,“玉大人腿时,你說我怎么就攤上這事况脆。” “怎么了批糟?”我有些...
    開封第一講書人閱讀 165,138評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵格了,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我徽鼎,道長(zhǎng)盛末,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,791評(píng)論 1 295
  • 正文 為了忘掉前任否淤,我火速辦了婚禮悄但,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘石抡。我一直安慰自己檐嚣,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評(píng)論 6 392
  • 文/花漫 我一把揭開白布啰扛。 她就那樣靜靜地躺著嚎京,像睡著了一般。 火紅的嫁衣襯著肌膚如雪隐解。 梳的紋絲不亂的頭發(fā)上鞍帝,一...
    開封第一講書人閱讀 51,631評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音厢漩,去河邊找鬼膜眠。 笑死,一個(gè)胖子當(dāng)著我的面吹牛溜嗜,可吹牛的內(nèi)容都是我干的宵膨。 我是一名探鬼主播,決...
    沈念sama閱讀 40,362評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼炸宵,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼辟躏!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起土全,我...
    開封第一講書人閱讀 39,264評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤捎琐,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后裹匙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瑞凑,經(jīng)...
    沈念sama閱讀 45,724評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年概页,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了籽御。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,040評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖技掏,靈堂內(nèi)的尸體忽然破棺而出铃将,到底是詐尸還是另有隱情,我是刑警寧澤哑梳,帶...
    沈念sama閱讀 35,742評(píng)論 5 346
  • 正文 年R本政府宣布劲阎,位于F島的核電站,受9級(jí)特大地震影響鸠真,放射性物質(zhì)發(fā)生泄漏悯仙。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評(píng)論 3 330
  • 文/蒙蒙 一吠卷、第九天 我趴在偏房一處隱蔽的房頂上張望雁比。 院中可真熱鬧,春花似錦撤嫩、人聲如沸偎捎。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)茴她。三九已至,卻和暖如春程奠,著一層夾襖步出監(jiān)牢的瞬間丈牢,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工瞄沙, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留己沛,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,247評(píng)論 3 371
  • 正文 我出身青樓距境,卻偏偏與公主長(zhǎng)得像申尼,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子垫桂,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容