操作系統(tǒng)基本知識(shí)點(diǎn)
操作系統(tǒng)基本知識(shí)點(diǎn)
操作系統(tǒng)是一管理電腦硬件與軟件資源的程序,同時(shí)也是計(jì)算機(jī)系統(tǒng)的內(nèi)核與基石。以下是由學(xué)習(xí)啦小編整理關(guān)于操作系統(tǒng)基本知識(shí)的內(nèi)容,希望大家喜歡!
一、操作系統(tǒng)基本知識(shí)——基本概念題
1、(進(jìn)程)是操作系統(tǒng)中可以并行工作的基本單位,也是核心調(diào)度及資源分配的最小單位,它由(程序、數(shù)據(jù)和PCB)組成,它與程序的重要區(qū)別之一是:(它有狀態(tài),而程序沒(méi)有)。在SMP系統(tǒng)中,操作系統(tǒng)還提供了(線(xiàn)程)機(jī)制,它是(處理器分配)的最小單位。
對(duì)于進(jìn)程而言,包括以下幾個(gè)方面:
( 1 )進(jìn)程是程序關(guān)于某個(gè)數(shù)據(jù)集的一次運(yùn)行,具有動(dòng)態(tài)性和并發(fā)性。 ( 2)進(jìn)程是核心調(diào)度及資源分配的最小單位,也是可并行工作的基本單位。 ( 3 )進(jìn)程是由程序、數(shù)據(jù)和進(jìn)程控制塊(PCB)組成的。
( 4 )進(jìn)程是一種輕量級(jí)進(jìn)程,一個(gè)進(jìn)程可以由1個(gè)或多個(gè)線(xiàn)程組成。 ( 5)進(jìn)程是處理器分配的最小單位。
( 6)線(xiàn)程通常通常用于對(duì)稱(chēng)多處理系統(tǒng)(SMP)中。
2、存儲(chǔ)管理的任務(wù)核心是存儲(chǔ)空間的分配與(回收)。而現(xiàn)代操作系統(tǒng)中有多種的存儲(chǔ)空間分配方案,其中將“存儲(chǔ)空間分成大小不等的區(qū)域,根據(jù)用戶(hù)要求動(dòng)態(tài)分配”的方法稱(chēng)為(要變分區(qū)分配)。
分析:現(xiàn)代操作系統(tǒng)中使用的分配方案主要有以下幾種:
(1)單一連續(xù)分配:不分區(qū),所有用戶(hù)空間給某個(gè)進(jìn)程或作業(yè)。
(2)固定分區(qū)分配:分成大小不等的區(qū)域,區(qū)域分完后固定不變。
(3)可變分區(qū)分配:分成大小不等的區(qū)域,根據(jù)用戶(hù)要求動(dòng)態(tài)分配。
3、在計(jì)算機(jī)系統(tǒng)中,采用磁盤(pán)高速設(shè)備虛擬多個(gè)“高速”的打印等低速設(shè)備的技術(shù)稱(chēng)為(Spooling)。
分析:Spooling技術(shù)就是通過(guò)高速設(shè)備作為緩存,將低速設(shè)備上的任務(wù)以隊(duì)列存儲(chǔ)起來(lái),以提高給用戶(hù)的響應(yīng)時(shí)間。
4、在UNIX操作系統(tǒng)中,與Windows操作系統(tǒng)中“快捷方式”類(lèi)似的概念是(文件鏈接)。
分析:它只是在當(dāng)前目錄下創(chuàng)建一個(gè)文件項(xiàng),但沒(méi)有復(fù)制真正的內(nèi)容,而且當(dāng)原文件改變時(shí),這個(gè)鏈接文件也會(huì)改變。
5、嵌入式操作系統(tǒng):主要應(yīng)用于受限的硬件環(huán)境中,CPU、內(nèi)存、存儲(chǔ)的資源相對(duì)受到較高的限制,而且硬件選擇較多,用戶(hù)日常操作比較密集,并且現(xiàn)在都朝著“聯(lián)網(wǎng)使用”的趨勢(shì)發(fā)展。因此應(yīng)該(具有較強(qiáng)的實(shí)時(shí)性),(擁有強(qiáng)大的網(wǎng)絡(luò)功能)、(良好的移植性);但由于存儲(chǔ)有限,因此是不可能實(shí)現(xiàn)海量數(shù)據(jù)處理能力的。
現(xiàn)代流行的嵌入式操作系統(tǒng)有40多種,主要的派系有三個(gè):最悠久的PalmOS、開(kāi)源的嵌入式Linux,以及windows的嵌入式版本(最早是windows CE,后來(lái)發(fā)展為適用于PDA的pocketPC和適用于智能手機(jī)的smartPhone)。而FreeBSD是一個(gè)UNIX開(kāi)源實(shí)現(xiàn),屬于PC操作系統(tǒng)之列。
二、操作系統(tǒng)基本知識(shí)——概念比較題
1、將一些主存中的頁(yè)淘汰到外存,騰出空間給要使用的頁(yè),這個(gè)過(guò)程就是Swapping。
頁(yè)面調(diào)度算法有:
(1)最優(yōu)算法:這顯然是我們追求的目標(biāo),但由于要實(shí)現(xiàn)最優(yōu),就是要使得未來(lái)的缺頁(yè)次數(shù)最少,這需要根據(jù)未來(lái)的“頁(yè)面需求”才能夠決策,但我們無(wú)法預(yù)知未來(lái),因此僅僅是理論上的調(diào)度算法。
(2)隨機(jī)算法:也就是隨機(jī)地?fù)Q出一些頁(yè),由于這種算法實(shí)現(xiàn)起來(lái)比較簡(jiǎn)單,因此也是一種可能的算法。
(3)先進(jìn)先出:由于最先調(diào)入的頁(yè),就意味著其駐留時(shí)間最長(zhǎng),因此將其調(diào)出也是一種比較合理的方案。
(4)最近最少使用:雖然我們無(wú)法預(yù)知未來(lái),但我們可以總結(jié)過(guò)去,因此我們可以將最近最少使用的頁(yè)調(diào)出,因?yàn)樗鼈儾挥玫母怕矢咭恍?/p>
“后進(jìn)先出”的調(diào)度思路,顯然是將最后調(diào)入的頁(yè),先置換出去。但由于存儲(chǔ)具有“時(shí)間局部性”,因此剛調(diào)入主存的頁(yè)面,在一段時(shí)間內(nèi)訪問(wèn)的需求肯定是比較大的。這時(shí),如果將其置換出去,顯然易于造成“顛簸”,因此顯然是不合理的調(diào)度算法。
2、操作系統(tǒng)的結(jié)構(gòu)設(shè)計(jì)模式有多種,其中“所有處理機(jī)運(yùn)行且共享一個(gè)內(nèi)存”的設(shè)計(jì)結(jié)構(gòu)是(對(duì)稱(chēng)多處理模式)結(jié)核,它的特點(diǎn)是(適合共享存儲(chǔ)器結(jié)構(gòu)的多處理系統(tǒng))。(分析要點(diǎn):所有處理機(jī)就是多處理器)
三、操作系統(tǒng)基本知識(shí)——工作原理題
1、虛擬存儲(chǔ)管理系統(tǒng)的基礎(chǔ)是程序的(局部性)理論。這個(gè)理論的基本含義是指程序執(zhí)行時(shí)往往會(huì)(不均勻地)訪問(wèn)內(nèi)存儲(chǔ)器。程序的(局部性)現(xiàn)在(時(shí)間局部性)和(空間局部性)上。(時(shí)間局部性)是指最近訪問(wèn)的存儲(chǔ)單元可能馬上又要訪問(wèn)。(空間局部性)是指馬上訪問(wèn)的單元,而其附近的單元也可能馬上訪問(wèn)。
根據(jù)這個(gè)理論,DENNING提出了工作集理論。工作集是進(jìn)程運(yùn)行時(shí)頻繁地訪問(wèn)的頁(yè)面集合。在進(jìn)程運(yùn)行時(shí),如果它的工作頁(yè)面都在(主存儲(chǔ))器內(nèi),能夠使該進(jìn)程有效地運(yùn)行,否則會(huì)出現(xiàn)頻繁的頁(yè)面調(diào)入/調(diào)出現(xiàn)象。
虛擬存儲(chǔ)的核心是“用磁盤(pán)等外存去擴(kuò)展主存”,就是將一部分信息放在磁盤(pán)上,等需要時(shí)再調(diào)到主存中,這樣就可以在“邏輯上擴(kuò)大主存的空間”。
從中得出兩個(gè)結(jié)論:
(1)經(jīng)常會(huì)訪問(wèn)剛訪問(wèn)過(guò)的存儲(chǔ)單元——時(shí)間局部性。
(2)當(dāng)某個(gè)存儲(chǔ)單元被訪問(wèn)過(guò),其鄰近的單元就很可能被訪問(wèn)(也就是對(duì)存儲(chǔ)訪問(wèn)有成組的傾向)——空間局部性。
這也就是說(shuō)明,對(duì)內(nèi)存的訪問(wèn)是不均勻的,局部的。而對(duì)于最后的問(wèn)題而言,事實(shí)上只要根據(jù)“否則會(huì)出現(xiàn)頻繁的頁(yè)面調(diào)入/調(diào)出”中可以看出顯然就是當(dāng)工作頁(yè)面都在“主存儲(chǔ)器”中時(shí)無(wú)須換頁(yè)。
2、Windows NT中,運(yùn)行在核心態(tài)的子系統(tǒng)是(執(zhí)行體),而進(jìn)程就是由(執(zhí)行體)中的(對(duì)象管理器)負(fù)責(zé)創(chuàng)建和刪除的。分析:Windows NT可以分為執(zhí)行體和保護(hù)子系統(tǒng)。前者運(yùn)行在核心態(tài),后者運(yùn)行在用戶(hù)態(tài)。而保護(hù)子系統(tǒng)主要包括環(huán)境子系統(tǒng)、集成子系統(tǒng)兩類(lèi)。而Windows NT的進(jìn)程是由執(zhí)行體中的對(duì)象管理器負(fù)責(zé)創(chuàng)建和刪除的。每個(gè)進(jìn)程創(chuàng)建時(shí)只有一個(gè)線(xiàn)程,根據(jù)需要可以創(chuàng)建更多的線(xiàn)程。 四、 原理應(yīng)用題:
1、進(jìn)程PA不斷地向管道寫(xiě)數(shù)據(jù),進(jìn)程PB從管道中讀數(shù)據(jù)并加工處理,如圖。如果采用PV操作來(lái)實(shí)現(xiàn)進(jìn)程PA和進(jìn)程PB的管道通信,并且保證這兩個(gè)進(jìn)程并執(zhí)行的正確性,則至少需要(2個(gè)信號(hào)量,信號(hào)量的初值是0、1)
對(duì)于信號(hào)量的個(gè)數(shù)與初值而言,需要掌握以下幾個(gè)要點(diǎn):
(1)控制互斥只需1個(gè)信號(hào)量,信號(hào)量的值是“臨界區(qū)”的數(shù)量(或指可重入的個(gè)數(shù))。
(2)控制同步需要2個(gè)信號(hào)量,信號(hào)量的值分別用于管理“同步區(qū)”的滿(mǎn)值和空值;因此如果“同步區(qū)”的個(gè)數(shù)是1,則可以省去一個(gè)信號(hào)。 (3)經(jīng)典的“生產(chǎn)者—消費(fèi)者”問(wèn)題,是“互斥+同步”的控制,通常需要3個(gè)信號(hào)量。
而本題中這個(gè)經(jīng)典的“生產(chǎn)者—消費(fèi)者”的問(wèn)題,其中進(jìn)程PA和進(jìn)程PB分別是生產(chǎn)者和消費(fèi)者,管道為臨界區(qū)。根據(jù)上面的原則,我們知道在程序中應(yīng)該設(shè)置1個(gè)同步信號(hào)量(同步區(qū)為1),為1時(shí)說(shuō)明管道已滿(mǎn)拒絕PA再寫(xiě)入數(shù)據(jù),為0時(shí)說(shuō)明管道為空拒絕PB再讀出數(shù)據(jù),管道初始是沒(méi)有數(shù)據(jù)的,所以初始值為0(特別情況即管道的大小為1個(gè)單位);程序還需要1理互斥信號(hào)量來(lái)保證程序只有一個(gè)進(jìn)程訪問(wèn)管道,初始值為1。
2、在系統(tǒng)運(yùn)行的某一時(shí)刻中,有A、B兩個(gè)進(jìn)程。除了互斥地使用惟一的“繪圖儀R”之外,不使用其他資源。如圖,用粗實(shí)線(xiàn)表示進(jìn)程在運(yùn)行,用細(xì)實(shí)線(xiàn)表示在使用繪圖儀。對(duì)于進(jìn)程A而言,在時(shí)間點(diǎn)t1、t2、t3時(shí)其狀態(tài)分別是(阻塞、運(yùn)行、就緒),進(jìn)程B在這三個(gè)時(shí)間點(diǎn)的狀態(tài)則分別是(運(yùn)行、阻塞、運(yùn)行)。
看過(guò)“操作系統(tǒng)基本知識(shí)“的人還看了: