來(lái)源:C語(yǔ)言中文網(wǎng) 轉(zhuǎn)自:鵬越網(wǎng)絡(luò)空間安全研究院 一、基本概念 在信息化時(shí)代,軟件被稱為計(jì)算機(jī)系統(tǒng)的靈魂。而作為軟件核心的操作系統(tǒng),已經(jīng)與現(xiàn)代計(jì)算機(jī)系統(tǒng)密不可分、融為一體。計(jì)算機(jī)系統(tǒng)自下而上可粗分為四個(gè)部分:硬件、操作系統(tǒng)、應(yīng)用程序和用戶(這里的劃分與計(jì)算機(jī)組成原理的分層不同)。操作系統(tǒng)管理各種計(jì)算機(jī)硬件,為應(yīng)用程序提供基礎(chǔ),并充當(dāng)計(jì)算機(jī)硬件與用戶之間的中介。硬件,如中央處理器、內(nèi)存、輸入/輸出設(shè)備等,提供了基本的計(jì)算資源。應(yīng)用程序,如字處理程序、電子制表軟件、編譯器、網(wǎng)絡(luò)瀏覽器等,規(guī)定了按何種方式使用這些資源來(lái)解決用戶的計(jì)算問(wèn)題。操作系統(tǒng)控制和協(xié)調(diào)各用戶的應(yīng)用程序?qū)τ布姆峙渑c使用。在計(jì)算機(jī)系統(tǒng)的運(yùn)行過(guò)程中,操作系統(tǒng)提供了正確使用這些資源的方法。 綜上所述,操作系統(tǒng)(Operating System, OS)是指控制和管理整個(gè)計(jì)算機(jī)系統(tǒng)的硬件和軟件資源,并合理地組織調(diào)度計(jì)算機(jī)的工作和資源的分配,以提供給用戶和其他軟件方便的接口和環(huán)境的程序集合。計(jì)算機(jī)操作系統(tǒng)是隨著計(jì)算機(jī)研究和應(yīng)用的發(fā)展逐步形成并發(fā)展起來(lái)的,它是計(jì)算機(jī)系統(tǒng)中最基本的系統(tǒng)軟件。 二 特征 操作系統(tǒng)是一種系統(tǒng)軟件,但與其他的系統(tǒng)軟件和應(yīng)用軟件有很大的不同,它有自己的特殊性即基本特征。操作系統(tǒng)的基本特征包括并發(fā)、共享、虛擬和異步。這些概念對(duì)理解和掌握操作系統(tǒng)的核心至關(guān)重要,將一直貫穿于各個(gè)章節(jié)中。 并發(fā)(Concurrence) 并發(fā)是指兩個(gè)或多個(gè)事件在同一時(shí)間間隔內(nèi)發(fā)生。操作系統(tǒng)的并發(fā)性是指計(jì)算機(jī)系統(tǒng)中同時(shí)存在多個(gè)運(yùn)行著的程序,因此它具有處理和調(diào)度多個(gè)程序同時(shí)執(zhí)行的能力。在操作系統(tǒng)中,引入進(jìn)程的目的是使程序能并發(fā)執(zhí)行。 注意同一時(shí)間間隔(并發(fā))和同一時(shí)刻(并行)的區(qū)別。在多道程序環(huán)境下,一段時(shí)間內(nèi),宏觀上有多道程序在同時(shí)執(zhí)行,而在每一時(shí)刻,單處理機(jī)環(huán)境下實(shí)際僅能有一道程序執(zhí)行,故微觀上這些程序還是在分時(shí)地交替執(zhí)行。橾作系統(tǒng)的并發(fā)性是通過(guò)分時(shí)得以實(shí)現(xiàn)的。 共享(Sharing) 資源共享即共享,是指系統(tǒng)中的資源可供內(nèi)存中多個(gè)并發(fā)執(zhí)行的進(jìn)程共同使用。共享可分為以下兩種資源共享方式: 1) 互斥共享方式 系統(tǒng)中的某些資源,如打印機(jī)、磁帶機(jī),雖然它們可以提供給多個(gè)進(jìn)程使用,但為使所打印或記錄的結(jié)果不致造成混淆,應(yīng)規(guī)定在一段時(shí)間內(nèi)只允許一個(gè)進(jìn)程訪問(wèn)該資源。 2) 同時(shí)訪問(wèn)方式 系統(tǒng)中還有另一類資源,允許在一段時(shí)間內(nèi)由多個(gè)進(jìn)程“同時(shí)”對(duì)它們進(jìn)行訪問(wèn)。這里所謂的“同時(shí)”往往是宏觀上的,而在微觀上,這些進(jìn)程可能是交替地對(duì)該資源進(jìn)行訪問(wèn)即“分時(shí)共享”。典型的可供多個(gè)進(jìn)程“同時(shí)”訪問(wèn)的資源是磁盤設(shè)備,一些用重入碼編寫的文件也可以被“同時(shí)”共享,即若干個(gè)用戶同時(shí)訪問(wèn)該文件。 資源共享是以程序的并發(fā)為條件的,若系統(tǒng)不允許程序并發(fā)執(zhí)行,則自然不存在資源共享問(wèn)題; 若系統(tǒng)不能對(duì)資源共享實(shí)施有效的管理,也必將影響到程序的并發(fā)執(zhí)行,甚至根本無(wú)法并發(fā)執(zhí)行。 3) 虛擬(Virtual) 虛擬是指把一個(gè)物理上的實(shí)體變?yōu)槿舾蓚€(gè)邏輯上的對(duì)應(yīng)物。物理實(shí)體(前者)是實(shí)的,即實(shí)際存在的;而后者是虛的,是用戶感覺(jué)上的事物。用于實(shí)現(xiàn)虛擬的技術(shù),稱為虛擬技術(shù)。在操作系統(tǒng)中利用了多種虛擬技術(shù),分別用來(lái)實(shí)現(xiàn)虛擬處理器、虛擬內(nèi)存和虛擬外部設(shè)備等。 類似地,可以通過(guò)虛擬存儲(chǔ)器技術(shù),將一臺(tái)機(jī)器的物理存儲(chǔ)器變?yōu)樘摂M存儲(chǔ)器,以便從邏輯上來(lái)擴(kuò)充存儲(chǔ)器的容量。當(dāng)然,這時(shí)用戶所感覺(jué)到的內(nèi)存容量是虛的。我們把用戶所感覺(jué)到的存儲(chǔ)器(實(shí)際是不存在的)稱為虛擬存儲(chǔ)器。 因此,操作系統(tǒng)的虛擬技術(shù)可歸納為:時(shí)分復(fù)用技術(shù),如處理器的分時(shí)共享;空分復(fù)用技術(shù),如虛擬存儲(chǔ)器(注:學(xué)到后續(xù)內(nèi)容再慢慢領(lǐng)悟)。 4) 異步(Asynchronism) 在多道程序環(huán)境下,允許多個(gè)程序并發(fā)執(zhí)行,但由于資源有限,進(jìn)程的執(zhí)行不是一貫到底,而是走走停停,以不可預(yù)知的速度向前推進(jìn),這就是進(jìn)程的異步性。 |
|