計(jì)算機(jī)操作系統(tǒng)的概念功能和特點(diǎn)
計(jì)算機(jī)操作系統(tǒng)的概念功能和特點(diǎn)
計(jì)算機(jī)的操作系統(tǒng)的基本概念和特點(diǎn)相信很多人都不太了解,下面由學(xué)習(xí)啦小編為大家整理了計(jì)算機(jī)操作系統(tǒng)概念功能和特點(diǎn)的相關(guān)知識,希望對大家有幫助!
一、計(jì)算機(jī)操作系統(tǒng)的基本概念
在信息化時代,軟件被稱為計(jì)算機(jī)系統(tǒng)的靈魂。而作為軟件核心的操作系統(tǒng),已經(jīng)與現(xiàn)代計(jì)算機(jī)系統(tǒng)密不可分、融為一體。計(jì)算機(jī)系統(tǒng)自下而上可粗分為四個部分:硬件、操作系 統(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ī)定了按何種方式使用這些資源來解決用戶的計(jì)算問題。操作系統(tǒng)控制和協(xié)調(diào)各用戶的應(yīng)用程序?qū)τ布姆峙渑c使用。
在計(jì)算機(jī)系統(tǒng)的運(yùn)行過程中,操作系統(tǒng)提供了正確使用這些資源的方法。
綜上所述,操作系統(tǒng)(Operating System, OS)是指控制和管理整個計(jì)算機(jī)系統(tǒng)的硬件和軟件資源,并合理地組織調(diào)度計(jì)算機(jī)的工作和資源的分配,以提供給用戶和其他軟件方便的接口和環(huán)境的程序集合。計(jì)算機(jī)操作系統(tǒng)是隨著計(jì)算機(jī)研究和應(yīng)用的發(fā)展逐步形成并發(fā)展起來的,它是計(jì)算機(jī)系統(tǒng)中最基本的系統(tǒng)軟件。
二、計(jì)算機(jī)操作系統(tǒng)的特點(diǎn)
操作系統(tǒng)是一種系統(tǒng)軟件,但與其他的系統(tǒng)軟件和應(yīng)用軟件有很大的不同,它有自己的特殊性即基本特征。操作系統(tǒng)的基本特征包括并發(fā)、共享、虛擬和異步。這些概念對理解和掌握操作系統(tǒng)的核心至關(guān)重要,將一直貫穿于各個章節(jié)中。
并發(fā)(Concurrence)
并發(fā)是指兩個或多個事件在同一時間間隔內(nèi)發(fā)生。操作系統(tǒng)的并發(fā)性是指計(jì)算機(jī)系統(tǒng)中同時存在多個運(yùn)行著的程序,因此它具有處理和調(diào)度多個程序同時執(zhí)行的能力。在操作系統(tǒng) 中,引入進(jìn)程的目的是使程序能并發(fā)執(zhí)行。
注意同一時間間隔(并發(fā))和同一時刻(并行)的區(qū)別。在多道程序環(huán)境下,一段時間內(nèi),宏觀上有多道程序在同時執(zhí)行,而在每一時刻,單處理機(jī)環(huán)境下實(shí)際僅能有一道程序執(zhí)行,故微觀上這些程序還是在分時地交替執(zhí)行。橾作系統(tǒng)的并發(fā)性是通過分時得以實(shí)現(xiàn)的。
注意,并行性是指系統(tǒng)具有可以同時進(jìn)行運(yùn)算或操作的特性,在同一時刻完成兩種或兩種以上的工作。并行性需要有相關(guān)硬件的支持,如多流水線或多處理機(jī)硬件環(huán)境。
共享(Sharing)
資源共享即共享,是指系統(tǒng)中的資源可供內(nèi)存中多個并發(fā)執(zhí)行的進(jìn)程共同使用。共享可分為以下兩種資源共享方式:
1) 互斥共享方式
系統(tǒng)中的某些資源,如打印機(jī)、磁帶機(jī),雖然它們可以提供給多個進(jìn)程使用,但為使所打印或記錄的結(jié)果不致造成混淆,應(yīng)規(guī)定在一段時間內(nèi)只允許一個進(jìn)程訪問該資源。
為此,當(dāng)進(jìn)程A訪問某資源時,必須先提出請求,如果此時該資源空閑,系統(tǒng)便可將之分配給進(jìn)程A使用,此后若再有其他進(jìn)程也要訪問該資源時(只要A未用完)則必須等待。僅當(dāng)進(jìn)程A訪問完并釋放該資源后,才允許另一進(jìn)程對該資源進(jìn)行訪問。我們把這種資源共享方式稱為互斥式共享,而把在一段時間內(nèi)只允許一個進(jìn)程訪問的資源稱為臨界資源或獨(dú)占資源。計(jì)算機(jī)系統(tǒng)中的大多數(shù)物理設(shè)備,以及某些軟件中所用的棧、變量和表格,都屬于臨界資源,它們都要求被互斥地共享。
2) 同時訪問方式
系統(tǒng)中還有另一類資源,允許在一段時間內(nèi)由多個進(jìn)程“同時”對它們進(jìn)行訪問。這里所謂的“同時”往往是宏觀上的,而在微觀上,這些進(jìn)程可能是交替地對該資源進(jìn)行訪問即 “分時共享”。典型的可供多個進(jìn)程“同時”訪問的資源是磁盤設(shè)備,一些用重入碼編寫的文件也可以被“同時”共享,即若干個用戶同時訪問該文件。
并發(fā)和共享是操作系統(tǒng)兩個最基本的特征,這兩者之間又是互為存在條件的:
資源共享是以程序的并發(fā)為條件的,若系統(tǒng)不允許程序并發(fā)執(zhí)行,則自然不存在資源共享問題;
若系統(tǒng)不能對資源共享實(shí)施有效的管理,也必將影響到程序的并發(fā)執(zhí)行,甚至根本無法并發(fā)執(zhí)行。
虛擬(Virtual)
虛擬是指把一個物理上的實(shí)體變?yōu)槿舾蓚€邏輯上的對應(yīng)物。物理實(shí)體(前者)是實(shí)的,即實(shí)際存在的;而后者是虛的,是用戶感覺上的事物。用于實(shí)現(xiàn)虛擬的技術(shù),稱為虛擬技術(shù)。在操作系統(tǒng)中利用了多種虛擬技術(shù),分別用來實(shí)現(xiàn)虛擬處理器、虛擬內(nèi)存和虛擬外部設(shè)備等。
在虛擬處理器技術(shù)中,是通過多道程序設(shè)計(jì)技術(shù),讓多道程序并發(fā)執(zhí)行的方法,來分時使用一個處理器的。此時,雖然只有一個處理器,但它能同時為多個用戶服務(wù),使每個終端用戶都感覺有一個中央處理器(CPU)在專門為它服務(wù)。利用多道程序設(shè)計(jì)技術(shù),把一個物理上的CPU虛擬為多個邏輯上的CPU,稱為虛擬處理器。
類似地,可以通過虛擬存儲器技術(shù),將一臺機(jī)器的物理存儲器變?yōu)樘摂M存儲器,以便從邏輯上來擴(kuò)充存儲器的容量。當(dāng)然,這時用戶所感覺到的內(nèi)存容量是虛的。我們把用戶所感覺到的存儲器(實(shí)際是不存在的)稱為虛擬存儲器。
還可以通過虛擬設(shè)備技術(shù),將一臺物理I/O設(shè)備虛擬為多臺邏輯上的I/O設(shè)備,并允許每個用戶占用一臺邏輯上的I/O設(shè)備,這樣便可以使原來僅允許在一段時間內(nèi)由一個用戶訪問的設(shè)備(即臨界資源),變?yōu)樵谝欢螘r間內(nèi)允許多個用戶同時訪問的共享設(shè)備。
因此,操作系統(tǒng)的虛擬技術(shù)可歸納為:時分復(fù)用技術(shù),如處理器的分時共享;空分復(fù)用技術(shù),如虛擬存儲器(注:學(xué)到后續(xù)內(nèi)容再慢慢領(lǐng)悟)。
異步(Asynchronism)
在多道程序環(huán)境下,允許多個程序并發(fā)執(zhí)行,但由于資源有限,進(jìn)程的執(zhí)行不是一貫到底,而是走走停停,以不可預(yù)知的速度向前推進(jìn),這就是進(jìn)程的異步性。
異步性使得操作系統(tǒng)運(yùn)行在一種隨機(jī)的環(huán)境下,可能導(dǎo)致進(jìn)程產(chǎn)生與時間有關(guān)的錯誤 (就像對全局變量的訪問順序不當(dāng)會導(dǎo)致程序出錯一樣)。但是只要運(yùn)行環(huán)境相同,操作系統(tǒng)必須保證多次運(yùn)行進(jìn)程,都獲得相同的結(jié)果。
三、計(jì)算機(jī)操作系統(tǒng)的目標(biāo)和功能
為了給多道程序提供良好的運(yùn)行環(huán)境,操作系統(tǒng)應(yīng)具有以下幾方面的功能:處理機(jī)管理、 存儲器管理、設(shè)備管理和文件管理。為了方便用戶使用操作系統(tǒng),還必須向用戶提供接口。同時操作系統(tǒng)可用來擴(kuò)充機(jī)器,以提供更方便的服務(wù)、更高的資源利用率。
操作系統(tǒng)作為計(jì)算機(jī)系統(tǒng)資源的管理者
1) 處理機(jī)管理
在多道程序環(huán)境下,處理機(jī)的分配和運(yùn)行都以進(jìn)程(或線程)為基本單位,因而對處理機(jī)的管理可歸結(jié)為對進(jìn)程的管理。并發(fā)時在計(jì)算機(jī)內(nèi)同時運(yùn)行多個進(jìn)程,所以,進(jìn)程何時創(chuàng)建、何時撤銷、如何管理、如何避免沖突、.合理共享就是進(jìn)程管理的最主要的任務(wù)。進(jìn)程管理的主要功能有:進(jìn)程控制、進(jìn)程同步、進(jìn)程通信、死鎖處理、處理機(jī)調(diào)度等。
2) 存儲器管理
存儲器管理是為了給多道程序的運(yùn)行提供良好的環(huán)境,方便用戶使用以及提高內(nèi)存的利用率,主要包括內(nèi)存分配、地址映射、內(nèi)存保護(hù)與共享和內(nèi)存擴(kuò)充等功能。
3) 文件管理
計(jì)算機(jī)中的信息都是以文件的形式存在的,操作系統(tǒng)中負(fù)責(zé)文件管理的部分稱為文件系統(tǒng)。文件管理包括文件存儲空間的管理、目錄管理及文件讀寫管理和保護(hù)等。
4) 設(shè)備管理
設(shè)備管理的主要任務(wù)是完成用戶的I/O請求,方便用戶使用各種設(shè)備,并提高設(shè)備的利用率,主要包括緩沖管理、設(shè)備分配、設(shè)備處理和虛擬設(shè)備等功能。