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