第一篇:操作系統復習題簡答題總結
1操作系統的基本特征有哪些? 答:操作系統的基本特征:
(1)并發。并發是指兩個或多個活動在同一給定的時間間隔中進行。(2)共享。共享是指計算機系統中的資源被多個任務所共用。
(3)異步性。在多道程序環境下,各個程序的執行過程有“走走停停”的性質。每一道程序既要完成自己的事情,又要與其他程序共享系統中的資源。這樣,它什么時候得以執行、在執行過程中是否被其他事情打斷(如I/O中斷)、向前推進的速度是快還是慢等,都是不可預知的,由程序執行時的現場所決定。另外,同一程序在相同的初始數據下,無論何時運行,都應獲得同樣的結果。這是操作系統所具有的異步性。
2操作系統的主要功能有哪些?
答:操作系統的主要功能包括:存儲管理,進程和處理機管理,文件管理,設備管理以及用戶接口管理。
3、操作系統一般為用戶提供了哪三種界面?它們各有什么特點?
答:
4、操作系統主要有哪三種基本類型?它們各有什么特點?
5、操作系統主要有哪些類型的體系結構?UNIX系統和Linux系統各采用哪些結構?
答:一般說來,操作系統有四種結構:整體結構、層次結構、虛擬機結構、客戶機-服務器結構。Linux系統采用的是整體結構。UNIX系統采用的是層次結構。
6、Linux系統有什么特點?
7、使用虛擬機有哪些優勢和不足?
8、現代計算機系統由什么組成的?
9、在操作系統中,為什么要引入進程的概念?它與程序的區別和聯系分別是什么?
10、操作系統在計算機系統中處于什么位置?
11、進程的基本狀態有哪幾種?
答:進程的基本狀態有三種,分別為運行態、就緒態、阻塞態。
12、你熟悉哪些操作系統?想一想你在使用計算機過程中,操作系統如何提供服務?
答:我們最熟悉的一般為Windows操作系統,它是由微軟(Microsoft)公司推出的一個功能強大的圖形界面操作系統。常用的操作系統還有Linux,UNIX操作系統。
我們在使用計算機時,首先接觸的是用戶界面,我們可以通過鍵盤上輸入命令,在桌面上點擊鼠標完成操作,這時系統就知道執行相應的功能。
13、PCB的作用是什么?它是怎樣描述進程的動態性質的?
答:進程控制塊PCB是進程組成中最關鍵的部分。每個進程有唯一的進程控制塊;操作系統根據PCB對進程實施控制和管理,進程的動態、并發等特征是利用PCB表現出來的;PCB是進程存在的唯一標志。
PCB中有表明進程狀態的信息:該進程的狀態是運行態、就緒態還是阻塞態,利用狀態信息來描述進程的動態性質。
14、PCB表的組織方式主要有哪幾種?分別簡要說明。
答:PCB表的組織方式主要有:線性方式、鏈接方式和索引方式。
線性方式是把所有進程的PCB都放在一個表中。
鏈接方式按照進程的不同狀態把它們分別放在不同的隊列中。索引方式是利用索引表記載相應狀態進程的PCB地址。
15、進程和線程的區別是什么?
答:(1)動態性。程序是靜態、被動的概念,本身可以作為一種軟件資源長期保存;而進程是程序的一次執行過程,是動態、主動的概念,有一定的生命周期,會動態地產生和消亡。
(2)并發性。傳統的進程是一個獨立運行的單位,能與其他進程并發執行。進程是作為資源申請和調度單位存在的;而通常的程序是不能作為一個獨立運行的單位并發執行的。
(3)非對應性。程序和進程無一一對應關系。一個程序可被多個進程共用;一個進程在其活動中又可以順序地執行若干個程序。
(4)異步性。各個進程在并發執行過程中會產生相互制約關系,造成各自前進速度的不可預測性。而程序本身是靜態的,不存在這種異步特征。
16、進程進入臨界區的調度原則是什么?
答: ①如果有若干進程要求進入空閑的臨界區,一次僅允許一個進程進入。②任何時候,處于臨界區內的進程不可多于一個。如已有進程進入自己的臨界區,則其它所有試圖進入臨界區的進程必須等待。
③進入臨界區的進程要在有限時間內退出,以便其它進程能及時進入自己的臨界區。
④如果進程不能進入自己的臨界區,則應讓出CPU,避免進程出現“忙等”現象。17 簡述信號量的定義和作用。
答:信號量一般是由兩個成員組成的數據結構,其中一個成員是整型變量,表示該信號量的值,它是與相應資源的使用情況有關的;另一個是指向PCB的指針。當多個進程都等待同一信號量時,它們就排成一個隊列,由信號量的指針項指出該隊列的頭。
信號量通常可以簡單反映出相應資源的使用情況,它與P、V操作原語一起使用可實現進程的同步和互斥。
18、P操作原語和V操作原語是如何定義的? 答: P、V操作原語的定義: P(S):順序執行下述兩個動作:
①信號量的值減1,即S=S-1;
②如果S≥0,則該進程繼續執行;
如果S<0,則把該進程的狀態置為阻塞態,把相應的PCB連入該信號量隊列的末尾,并放棄處理機,進行等待(直至其它進程在S上執行V操作,把它釋放出來為止)。V(S):順序執行下述兩個動作:
①S值加1,即S=S+1;
②如果S>0,則該進程繼續運行;
如果S≤0,則釋放信號量隊列上的第一個PCB(即信號量指針項所指向的PCB)所對應的進程(把阻塞態改為就緒態),執行V操作的進程繼續運行。
19、計算機系統中產生死鎖的根本原因是什么?
答:計算機系統中產生死鎖的根本原因是:資源有限且操作不當。此外,進程推進順序不合適也可以引發的死鎖。20、發生死鎖的四個必要條件是什么?
答:發生死鎖的四個必要條件是:互斥條件,不可搶占條件,占有且申請條件,循環等待條件。
21、一般解決死鎖的方法有哪三種?
一般解決死鎖的方法有:死鎖的預防、死鎖的避免、死鎖的檢測與恢復。
22、是否所有的共享資源都是臨界資源?為什么?
不是所有的共享資源都是臨界資源。因為臨界資源是一次僅允許一個進程使用的資源,而系統中有很多資源可以讓多個進程同時使用,例如硬盤、正文段等。
23、存儲器一般分為哪些層次?它們各有何特性?
答:存儲器一般分為寄存器、高速緩存、內存、磁盤和磁帶。
CPU內部寄存器,其速度與CPU一樣快,但它的成本高,容量小。
高速緩存,它們大速度很快,放在CPU內部或非常靠近CPU的地方。但成本很高,容量較小。
內存,它是存儲器系統的主力。內存中存放的信息是易變的,當機器電源被關閉后,內存中的信息就全部丟失了。
磁盤,它是對內存的擴展,但是CPU不能直接存取磁盤上的數據。磁盤上可以永久保留數據,而且容量特別大。磁盤上數據的存取速度低于內存存取速度。磁帶保存的數據更持久,容量更大,但它的存取速度很慢,而且不適宜進行隨機存取。
24、裝入程序的功能是什么?常用的裝入方式有哪幾種?
答: 裝入程序的功能是根據內存的使用情況和分配策略,將裝入模塊放入分配到的內存區中。
程序裝入內存的方式有三種,分別是絕對裝入方式、可重定位裝入方式和動態運行時裝入方式。
25、對程序進行重定位的方式分為哪兩種?簡述各自的實現方式。
答:靜態重定位是在目標程序裝入內存時,由裝入程序對目標程序中的指令和數據的地址進行修改,即把程序的邏輯地址都改成實際的內存地址。動態重定位是在程序執行期間,每次訪問內存之前進行重定位。
26、對換技術如何解決內存不足的問題?
答:在多道程序環境中可以采用對換技術。此時,內存中保留多個進程。當內存空間不足以容納要求進入內存的進程時,系統就把內存中暫時不能運行的進程換出到外存上,騰出內存空間,把具備運行條件的進程從外存換到內存中。
27、解釋固定分區法和動態分區法的基本原理。
答:固定分區法——內存中分區的個數固定不變,各個分區的大小也固定不變,但不同分區的大小可以不同。每個分區只可裝入一道作業。
動態分區法——各個分區是在相應作業要進入內存時才建立的,使其大小恰好適應作業的大小。
28、在動態重定位分區管理方式中如何實現虛-實地址映射?
答:進程裝入內存時,是將該其程序和數據原封不動地裝入到內存中。當調度該進程在CPU上執行時,操作系統就自動將該進程在內存的起始地址裝入基址寄存器,將進程的大小裝入限長寄存器。當執行指令時,如果地址合法,則將相對地址與基址寄存器中的地址相加,所得結果就是真正訪問內存的地址。
29、在分頁系統中頁面大小由誰決定?頁表的作用是什么?如何將邏輯地址轉換成物理地址?
答:在分頁系統中頁面大小由硬件決定。
頁表的作用是實現從頁號到物理塊號的地址映射。
用頁號p去檢索頁表,從頁表中得到該頁的物理塊號f,把它裝入物理地址寄存器中。同時,將頁內地址d直接送入物理地址寄存器的塊內地址字段中。30、虛擬存儲器有哪些基本特征?
虛擬存儲器的基本特征是:
虛擬擴充——不是物理上,而是邏輯上擴充了內存容量;
部分裝入——每個進程不是全部一次性地裝入內存,而是只裝入一部分;
離散分配——不必占用連續的內存空間,而是“見縫插針”; 多次對換——所需的全部程序和數據要分成多次調入內存。
31、頁面抖動與什么有關?
答:好的頁面置換算法能夠適當降低頁面更換頻率,減少缺頁率,盡量避免系統“抖動”。
32、為了提高內存的利用率,在可重定位分區分配方式中可通過什么技術來減少內存碎片?
答:在可重定位分區分配方式中采用緊縮技術來減少內存碎片。
33、請求分頁技術與簡單分頁技術之間的根本區別是什么?
答:請求分頁提供虛擬存儲器,而簡單分頁系統并未提供虛擬存儲器。
34、什么是分頁?什么是分段?兩者有何區別?
35、分頁存儲管理的基本方法是什么?
36、在UNIX/Linux系統中,文件分為哪些類型?
37、文件的邏輯組織有幾種形式?
答:文件的邏輯組織有兩種形式:有結構文件和無結構文件。有結構文件又稱記錄式文件,分為定長和變長的記錄文件。而無結構文件又稱為字符流文件,在UNIX/Linux系統中,文件都采用流式文件。
38、文件的物理組織主要有哪幾種形式?它們各有什么優缺點?
39、一般來說,文件系統應具備哪些功能?
答:一般說來,文件系統應具備以下功能:文件管理;目錄管理;文件存儲空間的管理;文件的共享和保護;提供方便的接口。40、文件控制塊與文件有何關系?
答:文件控制塊——用于控制和管理文件的數據結構,其中包括文件名、文件類型、位置、大小等信息。
文件控制塊與文件一一對應,即在文件系統內部,給每個文件唯一地設置一個文件控制塊,核心利用這種結構對文件實施各種管理。
41、文件系統中的目錄結構有哪幾種基本形式?各有何優缺點?UNIX/Linux系統中采用哪種目錄結構?
42、在Linux系統中,ext2文件系統的構造形式是什么?超級塊的作用是什么?
答:在Linux系統中,ext2文件系統的構造形式為引導塊和一系列的塊組。其中塊組又包括超級塊、塊組描述結構、塊位示圖、索引節點位示圖、索引節點表和數據塊。
超級塊中包含有文件系統本身的大小和形式的基本信息。文件系統管理員可以利用這些信息來使用和維護文件系統。
43、硬盤分區有哪三種類型?Linux可以安裝在哪些分區上?
答:硬盤分區有三種類型:主分區、擴展分區和邏輯分區。Linux既可以安裝在主分區上,也可以安裝在邏輯分區上。
44、什么是文件的備份?數據備份的方法有哪幾種?按時機分,備份分哪幾種?
答: 文件備份就是把硬盤上的文件在其它外部的存儲介質上做一個副本。
數據備份的方法有完全備份、增量備份和更新備份三種。
后備分為“定期備份”和“不定期備份”。
45、什么是文件保護?常用的保護機制有哪些?
答:文件保護——是指文件免遭文件主或其他用戶由于錯誤的操作而使文件受到破壞。
常用的文件保護機制有:
①命名——自己的文件名,不讓他人知道;
②口令——對上口令,才能存取;
③存取控制——有權才可存取,不同權限干不同的事;
④密碼——信息加密,解密復原。
46、什么是文件的共享?文件鏈接如何實現文件共享?
答: 文件的共享是指系統允許多個用戶共同使用某個或某些文件。文件鏈接是給文件起別名,即將該文件的目錄項登記在鏈接目錄中。這樣,訪問該文件的路徑就不只一條。不同的用戶就可以利用各自的路徑來共享同一文件。
47、文件鏈接有哪兩種形式?兩者有何區別? 答:文件鏈接有兩種形式,即硬鏈接和符號鏈接。
硬鏈接是通過索引節點(inode index)來進行鏈接的。在linux的文件系統中,保存在磁盤分區中的文件不管是什么類型都給他分配一個編號,稱為索引節點號(inode index)。
在linux中,多個文件名指向同一索引點是存在的。一般這種鏈接是硬鏈接。硬鏈接的作用是允許一個文件擁有多個有效路徑名,這樣用戶就可以建立硬鏈接到重要文件,起到防止“誤刪”的功能。
因為對應目錄的索引節點有一個以上的鏈接,只刪除一個鏈接并不影響索引節點本身和其他的鏈接,只有當最后一個鏈接被刪除后,文件的數據塊及目錄的鏈接才會被釋放。也就是說,至此文件才被真正刪除。
符號鏈接文件有點類似于windows的快捷方式。他實際上是特殊文件的一種。在符號鏈接中,文件實際上是一個文本文件,他包含了另一個文件的位置信息。
48、常用的磁盤空閑區管理技術有哪幾種?試簡要說明它們各自的實現思想?
52、在UNIX/Linux系統中,主、次設備號各表示什么含義?
答:UNIX/Linux系統中主設備號表示設備類型,次設備號表示同類設備中的相對序號。
53、為什么要引入緩沖技術?設置緩沖區的原則是什么? 答:引入緩沖技術的主要目的是:①緩和 CPU 與 I/O設備間速度不匹配的矛盾;②提高它們之間的并行性;③減少對 CPU 的中斷次數,放寬 CPU 對中斷響應時間的要求。
設置緩沖區的原則是:如果數據到達率與離去率相差很大, 則可采用單緩沖方式;如果信息的輸入和輸出速率相同(或相差不大)時, 則可用雙緩沖區;對于陣發性的輸入、輸出, 可以設立多個緩沖區。
54、一般 I/O軟件系統的層次是怎樣的? I/O軟件系統分為如下 4個層次:①中斷處理程序;②設備驅動程序;③與設備無關的操作系統 I/O軟件;④用戶級 I/O軟件。
55、操作系統中設備管理的功能是什么? 操作系統中設備管理的功能是:監視設備狀態;進行設備分配;完成 I/O操作;緩沖管理與地址轉換。
56、設備分配技術主要有哪些?常用的設備分配算法是什么? 答:設備分配技術主要有:獨占分配、共享分配和虛擬分配。
常用的設備分配算法是:先來先服務算法和優先級高的優先服務算法。
57、SPOOLing系統的主要功能是什么? SPOOLing系統的主要功能是:將獨占設備改造為共享設備,實現了虛擬設備功能。
58、處理 I/O請求的主要步驟是什么? 答:處理 I/O請求的主要步驟是:用戶進程發出 I/O請求;系統接受這個 I/O請求,轉去執行操作系統的核心程序;設備驅動程序具體完成 I/O操作;I/O完成后,系統進行 I/O中斷處理,然后用戶進程重新開始執行。
59、設備驅動程序的主要功能是什么?它在系統中處于什么位置? 答:設備驅動程序的功能主要有:接受用戶的 I/O請求;取出請求隊列中隊首請求,將相應設備分配給它;啟動該設備工作,完成指定的 I/O操作;處理來自設備的中斷。
設備驅動程序在系統中處于核心空間, 位于設備控制器的上層,目的是對核心 I/O子系統隱藏各個設備控制器的差別。60、在Linux 系統中對設備怎樣管理? 答:Linux 系統中對設備管理具有下列共性:①每個設備都對應文件系統中的一個索引節點,都有一個文件名;②應用程序通常可以通過系統調用 open()打開設備文件,建立起與目標設備的連接;③對設備的使用類似于對文件的存取;④設備驅動程序是系統內核的一部分,它們必須為系統內核或者它們的子系統提供標準的接口;⑤設備驅動程序利用一些標準的內核服務,如內存分配等。
61、簡述 Linux 系統中配置網卡的大致步驟。
Linux 系統中配置網卡的大致步驟如下: ①打開機器電源,將 Linux 系統啟動。
②配置網絡參數。在 “ 控制面板 ” 窗口上雙擊 “ 網絡 ” 圖標。在彈出的窗口中配置網絡參數,單擊 “ 確定 ”。
③網卡自動檢測。在出現 “ 網卡配置 ” 對話框中,對配置的網卡進行自動檢測;按照所連網絡的網絡管理機構統一的規定,將參數填入相應的數據框中,如 “ 網關 ”、“ 域名服務器 ” 等。上述參數配置好后,單擊 “ 確定 ” 按鈕,使得網絡參數設置生效。
④重新啟動,雙擊主窗口上的 “ 瀏覽器 ” ,可以利用網絡提供的各種服務功能
62、嵌入式系統與通用計算機系統有何異同?
63、嵌入式操作系統的最大特點是什么?舉例說明。
嵌入式操作系統的最大特點就是可定制性,即能夠提供對內核進行配置或剪裁等功能,可以根據應用需要有選擇地提供或不提供某些功能,以減少系統開銷。如從應用領域角度看,可以分為面向信息家電的嵌入式操作系統,面向智能手機的嵌入式操作系統,面向汽車電子 的嵌入式操作系統,以及面向工業控制的嵌入式操作系統等。64、分布式系統有哪些主要特征?
答:分布式系統的主要特征有:分布性、自治性、并行性和全局性。65、分布式操作系統的主要功能是什么?
分布式操作系統有如下三個基本功能:進程管理、通信管理和資源管理。多機系統主要包括哪幾種類型?它們之間有何異同?
答:多機系統包括四種類型:多處理器系統、多計算機系統、,網絡系統和分布式系統。它們之間的異同如下表所示:
66、推動操作系統發展的主要動力是什么?
答:推動操作系統發展的因素很多,主要可歸結為硬件技術更新和應用需求擴大兩大方面。
(1)伴隨計算機器件的更新換代,計算機系統的性能得到快速提高,也促使操作系統的性能和結構有了顯著提高。此外,硬件成本的下降也極大地推動了計算機技術的應用推廣和普及。
(2)應用需求促進了計算機技術的發展,也促進了操作系統的不斷更新升級。67、Linux系統中,進程調度的方式和策略是什么?
68、嵌入式系統在外觀、組成、運行方式上有何特點?
69、處理機調度的主要目的是什么?
答:處理機調度的主要目的就是為了分配處理機。
70、高級調度與低級調度的主要功能是什么?為什么要引入中級調度? 答:高級調度的主要功能是根據一定的算法,從輸入的一批作業中選出若干個作業,分配必要的資源,如內存、外設等,為它建立相應的用戶作業進程和為其服務的系統進程,最后把它們的程序和數據調入內存,等待進程調度程序對其執行調度,并在作業完成后作善后處理工作。
低級調度的主要功能是根據一定的算法將CPU分派給就緒隊列中的一個進程。為了使內存中同時存放的進程數目不至于太多,有時就需要把某些進程從內存中移到外存上,以減少多道程序的數目,為此設立了中級調度。71、作業在其存在過程中分為哪四種狀態?
答:作業在其存在過程中分為提交、后備、執行和完成四種狀態。72、在操作系統中,引起進程調度的主要因素有哪些?
答:在操作系統中,引起進程調度的主要因素有:正在運行的進程完成任務,或等待資源,或運行到時;核心處理完中斷或陷入事件后,發現系統中“重新調度”標志被置上。
73、作業調度與進程調度二者間如何協調工作?
答:作業調度和進程調度是CPU主要的兩級調度。作業調度是宏觀調度,它所選擇的作業只是具有獲得處理機的資格,但尚未占有處理機,不能立即在其上實際運行。而進程調度是微觀調度,它根據一定的算法,動態地把處理機實際地分配給所選擇的進程,使之真正活動起來。
74、在確定調度方式和調度算法時,常用的評價準則有哪些?
答:在確定調度方式和調度算法時,常用的評價準則有:CPU利用率,吞吐量,周轉時間,就緒等待時間和響應時間。
75、簡述先來先服務法、時間片輪轉法和優先級調度算法的實現思想。答:先來先服務調度算法(FCFS)的實現思想:按作業(或進程)到來的先后次序進行調度,即先來的先得到執行。
時間片輪轉法(RR)的實現思想:系統把所有就緒進程按先入先出的原則排成一個隊列。新來的進程加到就緒隊列末尾。每當執行進程調度時,進程調度程序總是選出就緒隊列的隊首進程,讓它在CPU上運行一個時間片的時間。當進程用完分給它的時間片后,調度程序便停止該進程的運行,并把它放入就緒隊列的末尾;然后,把CPU分給就緒隊列的隊首進程。
優先級調度算法的實現思想:是從就緒隊列中選出優先級最高的進程,把CPU分給它使用。又分為非搶占式優先級法和搶占式優先級法。76、中斷響應主要做哪些工作?由誰來做? 中斷響應主要做的工作是: 1.中止當前程序的執行;
2.保存原程序的斷點信息(主要是程序計數器PC和程序狀態寄存器PS的內容); 3.到相應的處理程序。4.中斷響應由硬件實施。
77、一般中斷處理的主要步驟是什么?
一般中斷處理的主要步驟是:保存被中斷程序的現場,分析中斷原因,轉入相應處理程序進行處理,恢復被中斷程序現場(即中斷返回)。78、簡述一條shell命令在Linux系統中的實現過程。
一條shell命令在Linux系統中的執行過程基本上按照如下步驟: ① 讀取用戶由鍵盤輸入的命令行。
② 分析命令,以命令名作為文件名,其他參數改造為系統調用execve()內部處理所要求的形式。
③ 終端進程調用fork()建立一個子進程。
④ 終端進程本身用系統調用wait4()來等待子進程完成。當子進程運行時調用execve(),子進程根據文件名到目錄中查找有關文件,調入內存,執行這個程序。
⑤ 如果命令末尾有&號,則終端進程不用執行系統調用wait4(),而是立即發提示符,讓用戶輸入下一個命令,轉步驟(1)。如果命令末尾沒有&號,則終端進程要一直等待,當子進程完成工作后要終止,向父進程報告,此時終端進程醒來,在做必要的判別等工作后,終端進程發提示符,讓用戶輸入新的命令,重復上述處理過程。79、在 Linux系統中,進程調度的方式和策略是什么?對用戶進程和核心進程如何調度?
答:Linux系統的調度方式基本上采用“搶占式優先級”方式。
Linux系統針對不同類別的進程提供了三種不同的調度策略,即適合于短實時進程的FIFO,適合于每次運行需要較長時間實時進程的時間片輪轉法,適合于交互式的分時進程傳統的UNIX調度策略。
Linux系統核心為每個進程計算出一個優先級,高優先級的進程優先得到運行。Linux系統的調度方式基本上采用“搶占式優先級”方式,當進程在用戶模式下運行時,不管它是否自愿,核心在一定條件下可以暫時中止其運行,而調度其他進程運行。
80、處理機調度一般可分為哪三級?其中哪一級調度必不可少?為什么? 處理機調度一般可分為高級調度、中級調度和低級調度。其中進程調度必不可少。
進程只有在得到CPU之后才能真正活動起來,所有就緒進程經由進程調度才能獲得CPU的控制權;進程調度的實現策略往往決定了操作系統的類型,其算法優劣直接影響整個系統的性能。
81、作業提交后是否馬上放在內存中?為什么?
在批處理系統中,作業提交后并不是馬上放在內存中。其原因是:內存容量有限,而提交的作業數量可能很多,無法把它們都放入內存;即使都放入內存,當內存中可以同時運行的作業太多時,會影響系統的性能,如使周轉時間太長。82、作業調度與進程調度之間有什么差別?
83、請求分頁技術與簡單分頁技術之間的根本區別是什么?
84、未來操作系統大致有哪些特征?
85、什么是重定位?對程序進行重定位的方式分為哪幾種?
86、請解釋虛擬設備的含義?
87、什么是設備獨立性?
88、現代計算機系統是由什么組成的?
89、什么是進程的互斥與同步?
第二篇:《操作系統》-簡答題
計算機應用專業
《操
作
系
統》復習題
1、什么是操作系統?它有什么基本特征?
操作系統是控制和管理計算機系統內各種硬件和軟件資源、有效地組織多道程序運行的系統軟件(或程序集合),是用戶與計算機之間的接口。操作系統的基本特征是:并發、共享和異步性。
2、操作系統的含義及其功能是什么?
1)、含義:OS是一組系統軟件,它是軟硬件資源的控制中心,它以盡量合理有效的方法組織多個用戶共享計算機的各種資源。
2)功能:管理計算機的軟硬件資源(包括:處理機管理,作業管理,存儲管理,設備管理,文件管理)、提高資源的利用率、方便用戶。
3、什么是多道程序設計技術
多道程序設計技術就是在系統(內存)中同時存放并運行多道相互獨立的程序(作業),主機以交替的方式同時處理多道程序。它是一種宏觀上并行,微觀上串行的運行方式。
4、分時系統和實時系統有什么不同?
答:分時系統通用性強,交互性強,及時響應性要求一般(通常數量級為秒);實時系統往往是專用的,系統與應用很難分離,常常緊密結合在一起,實時系統并不強調資源利用率,而更關心及時響應性(通常數量級為毫秒或微秒)、可靠性等。
5、SPOOLing的含義是什么?試述SPOOLing系統的特點、功能。
答:SPOOLing是Simultaneous Peripheral Operation On-Line(即并行的外部設備聯機操作)的縮寫,它是關于慢速字符設備如何與計算機主機交換信息的一種技術,通常稱為“假脫機技術”。
SPOOLing技術是在通道技術和多道程序設計基礎上產生的,它由主機和相應的通道共同承擔作業的輸入輸出工作,利用磁盤作為后援存儲器,實現外圍設備同時聯機操作。SPOOLing系統由專門負責I/O的常駐內存的進程以及輸入井、輸出井組成;它將獨占設備改造為共享設備,實現了虛擬設備功能。
6、作業與進程有何不同?它們之間有什么關系?(1)、不同:
作業:是用戶在一次上機活動中,要求計算機系統所做的一系列工作的集合。也稱作任務(task)。
進程:是一個具有一定獨立功能的程序關于某個數據集合的一次可以并發執行的運行活動。
作業是一個宏觀的執行單位,它主要是從用戶的角度來看待的。作業的運行狀態是指把一個作業調入內存,然后產生若干個進程可以去競爭CPU。
進程是微觀的執行單位,它主要從系統的角度來看待的,它是搶占CPU和其他資源的基本 6
計算機應用專業
《操
作
系
統》復習題
單位。進程的執行狀態是指一個進程真正占用了CPU。
(2)、關系:一個作業調入內存以后,處于執行狀態,則此作業對應在系統建立若干個進程。進程的所有狀態對應作業的執行狀態,通過這若干個進程的執行,來完成該作業。
7、什么是進程?什么是線程?它們的關系是什么?
進程是一個具有一定獨立功能的程序關于某個數據集合的一次可以并發執行的運行活動。線程是 進程內可以并行執行的單位,即處理機調度的基本單位。
它們的關系是:一個線程只能屬于一個進程,而一個進程可以有多個線程;資源分配給進程,同一進程的所有線程共享該進程的所有資源;處理機分給線程,即真正在處理機上運行的是線程;線程在運行過程中,需要協作同步,不同進程的線程間要利用消息通信的辦法實現同步。
8、在OS中,引起進程調度的因素有哪些?
1、完成任務;正在運行的進程完成任務,釋放CPU
2、等待資源;等待資源或事件,放棄CPU
3、運行時刻;規定時間片已用完,時鐘中斷,讓出CPU
4、發現標志;核心處理完中斷或陷入事件后,發現“重新調度標志”被置上,執行進程調度。
9、進程調度的主要功能是什么?(1)保存當前正在運行進程的現場;
(2)從就緒隊列中挑選一個合適的進程(使用一定的調度算法),將其狀態改為運行態,準備分配CPU給它;
(3)為選中的進程恢復現場,分配CPU
10、請說明作業調度與進程調度的區別?
(1)作業調度是宏觀調度,它所選擇的作業只是具備獲得處理機的資格,但尚未占有處理機,不能立即在其上實際運行;而進程調度是微觀調度,它動態地把處理機實際地分配給選中進程,使之活動;
(2)進程調度相當頻繁,而作業調度的執行次數很少;(3)有的系統可以不設作業調度,但進程調度必不可少。
11、簡述時間片輪轉(RR)調度算法的實現思想? 答:系統把所有就緒進程按先入先出的原則排成一個隊列,新來的進程加到就緒隊列末尾。每當執行進程調度時,進程調度程序總是選出就緒隊列的隊首進程,讓它在CPU中運行一個時間片的時間。當進程用完分配給它的時間片后,調度程序便停止該進程的運行,并把它放入就緒隊列的末尾;然后,把CPU分配給就緒隊列的隊首進程。
12、簡述優先級調度算法的實現思想?
計算機應用專業
《操
作
系
統》復習題
答:(1)從就緒隊列中選出優先級最高的進程,把CPU分配給它;
(2)非搶占式優先級法是當前占用CPU的進程一直運行直到完成任務或阻塞才讓出CPU,調度優先級高的進程占用CPU。
(3)搶占式優先級法是當前進程在運行時,一旦出現一個優先級更高的就緒進程,調度程序就停止當前進程的運行,強將CPU分給那個進程。
13、進程間同步和互斥的含義是什么? 同步:并發進程之間存在的相互制約和相互依賴的關系。
互斥:若干進程共享一資源時,任何時刻只允許一個進程使用。
14、什么是虛擬存儲器,其基本特征是什么?虛擬存儲器的容量主要受到哪兩方面的限制?
答: 虛擬存儲器是由操作系統提供的一個假想的特大存儲器。
虛擬存儲器的基本特征是:
(1)虛擬性。即不是物理上而是邏輯上擴充了內存容量;
(2)兌換性(部分裝入)。即每個作業不是全部一次性地裝入內存,而是只裝入一部分,將當前不運行的程序、數據調至外存盤交換區;
(3)離散性,即不必占用連續的內存空間,而是“見縫插針”;(4)多次性,即所需的全部程序和數據要分成多次調入內存。
虛擬存儲器的容量主要受到指令中表示地址的字長和外存的容量的限制。
15、存儲管理的主要功能是什么?
答:存儲管理的主要功能是解決多道作業的主存空間的分配問題。主要包括:(1)內存區域的分配和管理:設計內存的分配結構和調入策略,保證分配和回收。(2)內存的擴充技術:使用虛擬存儲或自動覆蓋技術提供比實際內存更大的空間。(3)內存的共享和保護技術。除了被允許共享的部分之外,作業之間不能產生干擾和破壞,須對內存中的數據實施保護。
16、何謂系統的“抖動”現象?當系統發生“ 抖動”時,你認為應該采取什么措施來加以克服。
答: “抖動”是指內外存交換頻繁使效率下降的現象(剛調出的頁馬上又要調入,所造成頁面的頻繁轉換現象)
抖動現象與內存中并發的用戶進程數以及系統分配給每個用戶的物理塊數有關.減少抖動的方法有:采取局部置換策略、在CPU調度中引入工作集算法、掛起若干進程等。
17、為什么分段技術比分頁技術更容易實現程序或數據的共享?
答:1)每一段在邏輯上是相對完整的一組信息,分段技術中共享信息是在段一級出現的。8
計算機應用專業
《操
作
系
統》復習題
因此,任何共享的信息可以單獨作一個段,同樣段中所有內容就可以用相同的方式進行使用,從而規定相同的使用權限;
2)而頁是信息的物理單位,在一個頁面中可能存在邏輯上互相獨立的兩組或更多組信息都各有不同的使用方式和存取權限。
因此,分段技術較分頁技術易于實現程序或數據的共享。
18、分頁式和分段式內存管理有什么區別?
(1)分頁是出于系統管理的需要,分段是出于用戶應用的需要。一條指令或一個操作數可能會跨越兩個頁的分界處,而不會跨越兩個段的分界處。(2)頁大小是系統固定的,而段大小則通常不固定。
(3)邏輯地址表示:分頁是一維的,各個模塊在鏈接時必須組織成同一個地址空間;分段是二維的,各個模塊在鏈接時可以每個段組織成一個地址空間。
(4)通常段比頁大,因而段表比頁表短,可以縮短查找時間,提高訪問速度。
19、什么是物理設備?什么是邏輯設備?兩者之間有什么區別和聯系? 進行實際輸入輸出操作的硬件設施是物理設備.操作系統中規定用戶程序中不要直接使用設備的物理名稱,而用一另外的名稱代之來操作,這就是邏輯設備.邏輯設備是物理設備屬性的表示,它并不特指某個具體的物理設備,而是對應于一批設備,具體的對應則在操作系統啟動初始化時確定,或在運行過程中根據設備的使用情況由系統或用戶再次確定.20、在設備管理中設置緩沖區的作用是什么?根據系統設置緩沖區的個數,緩沖區可以分為哪幾種?
答:在設備管理中設置緩沖區的作用:(1)緩和CPU和I/O設備之間速度不匹配的矛盾。(2)減少中斷CPU的次數。(3)提高CPU和I/O設備之間的并行性。
根據系統設置緩沖區的個數,可以分為單緩沖、雙緩沖、多緩沖以及緩沖池等四種。
21、何謂文件系統?為何要引入文件系統?文件系統所要解決的問題(功能)主要有哪些?
文件系統是指負責存取和管理文件信息的機構,也就是負責文件的建立、撤銷、組織、讀寫、修改、復制及對文件管理所需要的資源(如目錄表、存儲介質)實施管理的軟件部分。
引入文件系統的目的: 實現文件的“按名存取”,力求查找簡單;使用戶能借助文件存儲器靈活地存取信息,并實現共享和保密。
文件系統所要解決的問題(功能)主要有:1)、有效地分配文件存貯器的存貯空間(物理介質)。2)、提供一種組織數據的方法(按名存取、邏輯結構、組織數據)3)、提供合適的存取方法(順序存取、隨機存取等)。4)、方便用戶的服務和操作。5)、可靠的保護、9
計算機應用專業
《操
作
系
統》復習題
保密手段。
22、試說明文件系統中對文件操作的系統調用處理功能。
答:系統調用是操作系統提供給編程人員的唯一接口。利用系統調用,編程人員在源程序中動態請求和釋放系統資源,調用系統中已有的功能來完成那些與機器硬件部分相關的工作以及控制程序的執行速度等。系統調用如同一個黑匣子,對使用者屏蔽了具體操作動作,只是提供了有關功能。
有關文件系統的系統調用是用戶經常使用的,包括文件的創建(create)、打開(open)、讀(read)、寫(write)、關閉(close)等。
23、在磁盤調度算法中,SSTF和C_SCAN算法分別是如何實現的?并比較它們的性能。(1)、SSTF方法:根據磁頭的當前位置,首先選擇請求隊列中距磁頭距離最短的請求為之服務。
(2)、C_SCAN方法:磁頭從盤面上的一端(逐柱面地)向另一端移動,遇到請求立即服務;回返時直接快速移至起始端而不服務于任何請求。如此往返單向地掃描并平均地為各種請求服務。
(3)、性能比較:SSTF方法可以獲得較短的尋道時間,但可能有餓死現象。適合于負載不大的系統。C_SCAN方法在負載較大的系統中,可以獲得較好的性能,并且不存在餓死現象。給出進程的五種狀態變化圖,并說明狀態變化原因。答:變化原因在圖上說明。
第三篇:《計算機操作系統》簡答題總結
《計算機操作系統》簡答題總結
1、簡述操作系統的定義。
操作系統是計算機系統的一種系統軟件,它統一管理計算機系統的資源和控制程序的執行。
2、在多道程序設計技術的系統中,操作系統怎樣才會占領中央處理器?
只有當中斷裝置發現有事件發生時,它才會中斷當前占用中央處理器的程序執行,讓操作系統的處理服務程序占用中央處理器并執行之。
3、簡述“刪除文件”操作的系統處理過程。
用戶用本操作向系統提出刪除一個文件的要求,系統執行時把指定文件的名字從目錄和索引表中除去,并收回它所占用的存儲區域,但刪除一個文件前應先關閉該文件。
4、對相關臨界區的管理有哪些要求?
為了使并發進程能正確地執行,對若干進程共享某一變量(資源)的相關臨界區應滿足以下三個要求: ① 一次最我讓一個進程在臨界區中執行,當有進程在臨界區中時,其他想進入臨界區執行的進程必須等待; ② 任何一個進入臨界區執行的進程必須在有限的時間內退出臨界區,即任何一個進程都不應該無限逗留在自己的臨界區中; ③ 不能強迫一個進程無限地等待進入它的臨界區,即有進程退出臨界區時應讓下一個等待進入臨界區的進程進入它的臨界區。
5、簡述解決死鎖問題的三種方法。① 死鎖的防止。系統按預定的策略為進程分配資源,這些分配策略能使死鎖的四個必要條件之一不成立,從而使系統不產生死鎖。② 死鎖的避免。系統動態地測試資源分配情況,僅當能確保系統安全時才給進程分配資源。③ 死鎖的檢測。對資源的申請和分配不加限制,只要有剩余的資源就呆把資源分配給申請者,操作系統要定時判斷系統是否出現了死鎖,當有死鎖發生時設法解除死鎖。
6、從操作系統提供的服務出發,操作系統可分哪幾類?
批處理操作系統、分時操作系統、實時操作系統、網絡操作系統、分布式操作系統。
7、簡述計算機系統的中斷機制及其作用。
中斷機制包括硬件的中斷裝置和操作系統的中斷處理服務程序。中斷裝置由一些特定的寄存器和控制線路組成,中央處理器和外圍設備等識別到的事件保存在特定的寄存器中,中央處理器每執行完一條指令,均由中斷裝置判別是否有事件發生。若無事件發生,CPU繼續執行;若有事件發生,則中斷裝置中斷原占有CPU的程序的執行,讓操作系統的處理事件服務程序占用CPU,對出現的事件進行處理,事件處理完后,再讓原來的程序繼續占用CPU執行。
8、選擇進程調度算法的準則是什么?
由于各種調度算法都有自己的特性,因此,很難評價哪種算法是最好的。一般說來,選擇算法時可以考慮如下一些原則:
① 處理器利用率; ② 吞吐量; ③ 等待時間; ④ 響應時間。
在選擇調度算法前,應考慮好采用的準則,當確定準則后,通過對各種算法的評估,從中選擇出最合適的算法。
9、獨占設備采用哪種分配方式?
獨占設備通常采用靜態分配方式。即在一個作業執行前,將作業要使用的這類設備分配給作業,在作業執行期間均歸該作業占用,直到作業執行結束才歸還。
10、產生死鎖的原因是什么?
① 系統資源不足; ② 進程推進順序不合適。
在早期的系統中,由于系統規模較小,結構簡單,以及資源分配大多采用靜態分配法,使得操作系統死鎖問題的嚴重性未能充分暴露出來。但今天由于多道程序系統,以至于數據系統的出現,系統中的共享性和并行性的增加,軟件系統變得日益龐大和復雜等原因,使得系統出現死鎖現象的可能性大大增加。
11、何謂批處理操作系統?
用戶準備好要執行的程序、數據和控制作業執行的說明書,由操作員輸入到計算機系統中等待處理。操作系統選擇作業并按作業說明書的要求自動控制作業的執行。采用這種批量化處理作業的操作系統稱為批處理操作系統。
12、對特權指令的使用有什么限制?
只允許操作系統使用特權指令,用戶程序不能使用特權指令。
13、影響缺頁中斷率有哪幾個主要因素? 影響缺頁中斷率的因素有四個:
① 分配給作業的主存塊數多則缺頁率低,反之缺頁中斷率就高。② 頁面大,缺頁中斷率低;頁面小缺頁中斷率高。
③ 程序編制方法。以數組運算為例,如果每一行元素存放在一頁中,則按行處理各元素缺頁中斷率低;反之,按列處理各元素,則缺頁中斷率高。
④ 頁面調度算法對缺頁中斷率影響很大,但不可能找到一種最佳算法。
14、磁盤移臂調度的目的是什么?常用移臂調度算法有哪些?
磁盤移臂調度的目的是盡可能地減少輸入輸出操作中的尋找時間。常用的移臂調度算法有:
① 先來先服務算法 ② 最短尋找時間優先算法 ③ 電梯調度算法 ④ 單向掃描算法。
15、常用的作業調度算法有哪些?
① 先來先服務算法 ② 計算時間短的作業優先算法 ③ 響應比最高者優先算法 ④ 優先數調度算法 ⑤ 均衡調度算法
16、計算機系統的資源包括哪些?
計算機系統的資源包括兩大類:硬件資源和軟件資源。
硬件資源主要有中央處理器、主存儲器、輔助存儲器和各種輸入輸出設備。軟件資源有編譯程序、編輯程序等各種程序以及有關數據。
17、CPU在管態和目態下工作有何不同? 當中央處理器處于管態時,可以執行包括特權指令在內的一切面器指令,而在目態下工作時不允許執行特權指令。
18、何為頁表和快表?它們各起什么作用?
頁表指出邏輯地址中的頁號與所占主存塊號的對應關系。
作用:頁式存儲管理在用動態重定位方式裝入作業時,要利用頁表做地址轉換工作。快表就是存放在高速緩沖存儲器的部分頁表。它起頁表相同的作用。
由于采用頁表做地址轉換,讀寫內存數據時CPU要訪問兩次主存。有了快表,有時只要訪問一次高速緩沖存儲器,一次主存,這樣可加速查找并提高指令執行速度。
19、作業在系統中有哪幾種狀態?
一個作業進入系統到運行結束,一般要經歷進入、后備、運行和完成四個階段,相應地,作業亦有進入、后備、運行和完成四種狀態。
① 進入狀態:作業的信息從輸入設備上預輸入到輸入井,此時稱為作業處于進入狀態。② 后備狀態:當作業的全部信息都已輸入,且由操作系統將其存放在輸入井中,此時稱作業處于后備狀態。系統將所有處于后備狀態的作業組成后備作業隊列,等待作業調度程序的調度。③ 運行狀態:一個后備作業被作業調度程序選中,分配了必要的資源,調入內存運行,稱作業處于運行狀態。④ 完成狀態:當作業正常運行完畢或因發生錯誤非正常終止時,作業進入這完成狀態。
20、用fork創建新進程,它要做哪些工作? 由fork創建新進程的主要工作有:
① 在進程表proc[ ]中為子進程找一個空閑的表項,用來存放子進程的proc結構; ② 為子進程分配一個唯一的標識號;
③ 把父進程中的字段復制到子進程的proc中,并把p – pid置為分配到的進程標識號,把p-pid置為父進程的標識號,把p-stat置為創建狀態;
④ 按父進程中p-size所示的長度為子進程申請分配內存。若有足夠的內存,則把父進程的user結構、棧和用戶數據區全部復制到子進程的空間中;若無足夠的內存,則在磁盤對換區中分配存儲空間,然后復制到對換區中,置于進程狀態為就緒狀態。
21、為什么說批處理多道系統能極大地提高計算機系統的工作效率?
① 多道作業并行工作,減少了處理器的空閑時間。
② 作業調度可以合理選擇裝入主存儲器中的作業,充分利用計算機系統的資源。③ 作業執行過程中不再訪問低速設備,而直接訪問高速的磁盤設備,縮短執行時間。④ 作業成批輸入,減少了從操作到作業的交接時間。
22、操作系統為用戶提供哪些接口?
操作系統為用戶提供兩種類型的使用接口:
一是操作員級的,它為用戶提供控制作業執行的途徑; 二是程序員級的,它為用戶程序提供服務功能。
23、什么是線程?多線程技術具有哪些優越性?
線程是進程中可獨立執行的子任務,一個進程可以有一個或多個線程,每個線程都有一個惟一的標識符。線程與進程有許多相似之處,往往把線程又稱為“輕型進程”,線程與進程的根本區別是把進程作為資源分配單位,而線程是調度和執行單位。多線程技術具有多個方面的優越性:
① 創建速度快、系統開銷小:創建線程不需要另行分配資源;
② 通信簡潔、信息傳送速度快:線程間的通信在統一地址空間進程,不需要額外的通信機制;
③ 并行性高:線程能獨立執行,能充分利用和發揮處理器與外圍設備并行工作的能力。
24、UNIX系統中的優先權和優先數有什么關系?如何確定進程的優先權和優先數? UNIX中每個進程都有一個優先數,就緒進程能否占用處理器的優先權取決于進程的優先數,優先數越小則優先權越高。
UNIX以動態方式確定優先權,如核心的進程優先權高于進入用戶態的進程;降低用完一個時間片的進程的優先權;對進入睡眠的進程,其等待事件越急優先數越高;降低使用處理器時間較長的進程的優先權。
UNIX中確定進程優先數的方法有兩種:設置方法和計算方法。前者對要進入睡眠狀態的進程設置優先數,若等待的事件急迫,則設置較小的優先數;后者用戶進程正在或即將轉入用戶狀態運行時確定優先數。
25、主存空間信息保護有哪些措施?
保存主存空間中的信息一般采用以下措施:
① 程序執行時訪問屬于自己主存區域的信息,允許它既可讀,又可寫; ② 對共享區域中的信息只可讀,不可修改;
③ 對非共享區域或非自己的主存區域中的信息既不可讀,也不可寫。
26、共享設備允許多個作業同時使用,這里的“同時使用”的含義是什么?
“同時使用”的含義是多個作業可以交替地啟動共享設備,在某一時刻仍只有一個作業占有。
27、簡述“打開文件”操作的系統處理過程。
用戶要使用一個已經存放在存儲介質上的文件前,必須先提出“打開文件”要求。這時用戶也必須向系統提供參數:用戶名、文件名、存取方式、存儲設備類型、口令等。系統在接到用戶的“打開文件”要求后,找出該用戶的文件目錄,當文件目錄不在主存儲器中時還必須把它讀到主存儲器中;然后檢索文件目錄,指出與用戶要求相符合的目錄項,取出文件存放的物理地址。
對索引文件還必須把該文件的索引表存放在主存儲器中,以便后繼的讀寫操作能快速進行。
28、什么是“前臺”作業、“后臺”作業?為什么對“前臺”作業要及時響應? 批處理操作系統實現自動控制無需人為干預,分時操作系統實現了人機交互對話,這兩種操作系統具有各自的優點。為了充分發揮批處理系統和分時系統的優點,在一個計算機系統上配置的操作系統往往既具有批處理能力,又有提供分時交互的能力。這樣,用戶可以先在分時系統的控制下,以交互式輸入、調試和修改自己的程序;然后,可以把調試好的程序轉交給批處理系統自動控制其執行而產生結果。這些由分時系統控制的作業稱為“前臺”作業,而那些由批處理系統控制的作業稱為“后臺”作業。
在這樣的系統中,對前臺作業應該及時響應,使用戶滿意;對后臺作業可以按一定的原則進行組合,以提高系統的效率。
29、存儲型設備和輸入輸出型設備的輸入輸出操作的信息傳輸單位有何不同? 存儲型設備輸入輸出操作的信息傳輸單位是“塊”,而輸入輸出型設備輸入輸出操作的信息傳輸單位是“字符”。
30、簡述信號量S的物理含義。
S>0時,S表示可使用的資源數;或表示可使用資源的進程數; S=0時,表示無資源可供使用;或表示不允許進程再進入臨界區;
S<0時,-S表示等待使用資源的進程個數;或表示等待進入臨界區的進程個數;
當S>0時,調用P(S)的進程不會等待;調用V(S)后使可用資源數加1或使可用資源的進程數加1;
當S<0時,調用P(S)的進程必須等待;調用V(S)后將釋放一個等待使用資源者或釋放一個等待進入臨界區者。
31、簡述“關閉文件”操作的系統處理過程。
執行“關閉”操作時先要檢查讀到主存中的文件目錄或索引表是否被修改過,若被修改過,則應把修改過的文件目錄或索引表重新保存好。用戶提出“關閉”要求時,必須說明關閉哪個文件。
32、什么是計算機系統?它由哪幾部分組成?
計算機系統是按用戶的要求接收和存儲信息,自動進行數據處理并輸出結果信息的系統。計算機系統由硬件系統和軟件系統組成。硬件系統是計算機系統賴以工作的實體,軟件系統保證計算機系統按用戶指定的要求協調地工作。
33、計算機系統怎樣實現存儲保護?
一般硬件設置了基址寄存器和限長寄存器。
中央處理器在目態下執行系統中,對每個訪問主存的地址都進行核對,若能滿足:基址寄存器值≤訪問地址≤基址寄存器值+限長寄存值,則允許訪問,否則不允許訪問。并且不允許用戶程序隨意修改這兩個寄存器的值。這就實現了存儲保護。
34、給出系統總體上的中斷處理過程。
CPU每執行完一條指令就去掃描中斷寄存器,檢查是否有中斷發生,若沒有中斷就繼續執行下條指令;若有中斷發生就轉去執行相應的中斷處理程序。中斷處理過程可粗略的分為以下四個過程:
① 保護當前正在運行程序的現場;
② 分析是何種中斷,以便轉去執行相應的中斷處理程序; ③ 執行相應的中斷處理程序; ④ 恢復被中斷程序的現場。
35、死鎖發生的必要條件有哪些?
發生死鎖的必要條件有四點:互斥條件、不可搶占條件、部分分配條件和循環等待條件。① 互斥條件:系統中存在一個資源一次只能被一個進程所使用; ② 非搶占條件:系統中存在一個資源僅能被占有它的進程所釋放,而不能被別的進程強行搶占。
③ 占有并等待條件:系統中存在一個進程已占有了分給它的資源,但仍然等待其他資源。④ 循環等待條件:在系統中存在一個由若干進程形成的環形請求鏈,其中的每一個進程均占有若干種資源中的某一種,同時每個進程還要求(鏈上)下一個進程所占有的資源。
36、用戶程序中通常用什么方式指定要使用的設備?為什么?
用戶程序中通常用“設備類、相對號”請求要使用的設備,即不具體指定要哪一臺設備,而是提出要申請哪類設備多少臺。
這種方式使設備分配適應性好、靈活性強。否則若用絕對號來指定設備,如果這臺設備已被占用或有故障時,該作業就無法裝入主存中。
37、進程調度中“可搶占”和“非搶占”兩種方式,哪一種系統的開銷更大?為什么? 可搶占式會引起系統的開銷更大。
可搶占式調度是嚴格保證任何時刻,讓具有最高優先數(權)的進程占有處理機運行,因此增加了處理機調度的時機,引起為退出處理機的進程保留現場,為占有處理機的進程恢復現場等時間(和空間)開銷增大。
38、一個含五個邏輯記錄的文件,系統把它以鏈接結構的形式組織在磁盤上,每個記錄占用一個磁盤塊,現要求在第一記錄和第二記錄之間插入一個新記錄,簡述它的操作過程。從文件目錄中找到該文件,按址讀出第一個記錄; 取出第一個記錄塊中指針,存放到新記錄的指針位置; 把新記錄占用的物理塊號填入第一個記錄的指針位置; 啟動磁盤把第一個記錄和新記錄寫到指字的磁盤塊上。
39、在SPOOL系統中設計了一張“緩輸出表”,請問哪些程序執行時要訪問緩輸出表,簡單說明之。
井管理寫程序把作業執行結果文件登記在緩輸出表中; 緩輸出程序從緩輸出表中查找結果文件并打印輸出。40、試比較進程調度與作業調度的不同點。
① 作業調度是宏觀調度,它決定了哪一個作業能進入主存。進程調度是微觀調度,它決定各作業中的哪一個進程占有中央處理器。
② 作業調度是選符合條件的收容態作業裝入主存。進程調度是從就緒態進程中選一個占用處理器。
41、試說明資源的靜態分配策略能防止死鎖的原因。
資源靜態分配策略要求每個過程在開始執行前申請所需的全部資源,僅在系統為之分配了所需的全部資源后,該進程才開始執行。這樣,進程在執行過程中不再申請資源,從而破壞了死鎖的四個必要條件之一“占有并等待條件”,從而防止死鎖的發生。
42、簡述操作系統提供的服務功能。
處理用戶命令;讀/寫文件;分配/回收資源; 處理硬件/軟件出現的錯誤;及其他控制功能。
43、簡述中斷裝置的主要職能。
中斷裝置的職能主要有三點: ① 檢查是否有中斷事件發生; ② 若有中斷發生,保護好被中斷進程的斷點及現場信息,以便進程在適當時候能恢復執行; ③ 啟動操作系統的中斷處理程序。
44、實現虛擬設備的硬件條件是什么?操作系統應設計哪些功能程序?
硬件條件是:配置大容量的磁盤,要有中斷裝置和通道。
操作系統應設計好“預輸入”程序,“井管理”程序,“緩輸出”程序。
45、一個具有分時兼批處理功能的操作系統應怎樣調度和管理作業?
① 優先接納終端作業,僅當終端作業數小于系統可以允許同時工作的作業數時,可以調度批處理作業;
② 允許終端作業的批處理作業混合同時執行; ③ 把終端作業的就緒進程排成一個就緒隊列,把批處理作業的就緒進程排入另外的就緒隊列中;
④ 有終端作業進程就緒時,優先讓其按“時間片輪轉”法先運行。沒有終端作業時再按確定算法選批處理作業就緒進程運行。
46、簡述死鎖的防止與死鎖的避免的區別。死鎖的防止是系統預先確定一些資源分配策略,進程按規定申請資源,系統按預先規定的策略進行分配從而防止死鎖的發生。
而死鎖的避免是當進程提出資源申請時系統測試資源分配僅當能確保系統安全時才把資源分配給進程,使系統一直處于安全狀態之中,從而避免死鎖。
第四篇:操作系統簡答題總結
四、解答題(共20分)
1.什么是操作系統?它的主要功能是什么?
操作系統是控制和管理計算機系統內各種硬件和軟件資源、有效地組織多道程序運行的系統軟件(或程序集合),是用戶與計算機之間的接口。
操作系統的主要功能包括:存儲器管理、處理機管理、設備管理、文件管理以及用戶接口管理。
2.操作系統中存儲器管理的主要功能是什么?什么叫虛擬存儲器?
存儲器管理的主要功能是:內存分配,地址映射,內存保護,內存擴充。
虛擬存儲器是用戶能作為可編址內存對待的存儲空間,在這種計算機系統中虛地址被映象成實地址。或者:簡單地說,虛擬存儲器是由操作系統提供的一個假想的特大存儲器。
3.什么是文件的邏輯組織和物理組織?
文件的邏輯組織——用戶對文件的觀察和使用是從自身處理文件中數據時采用的組織方式來看待文件組織形式。這種從用戶觀點出發所見到的文件組織形式稱為文件的邏輯組織。文件的物理組織——文件在存儲設備上的存儲組織形式稱為文件的物理組織。
4簡述死鎖產生的必要條件
答:(1)互斥條件:進程對所分配到的資源進行排他性使用。
(2)請求和保持條件:進程在保持資源的同時,又去申請新的資源。
(3)不剝奪條件:進程已獲得的資源,在未使用完之前,不能被剝奪。
(4)循環等待條件:存在資源-進程的循環鏈。
5.簡述死鎖的防止與死鎖的避免的區別。
死鎖的防止是系統預先確定一些資源分配策略,進程按規定申請資源,系統按預先規定的策略進行分配,從而防止死鎖的發生。
而死鎖的避免是當進程提出資源申請時系統測試資源分配,僅當能確保系統安全時才把資源分配給進程,使系統一直處于安全狀態之中,從而避免死鎖。
6.Spooling系統由幾部分組成?Spooling系統有哪些特點?
答:Spooling系統由輸入井和輸出井、輸入緩沖區和輸出緩沖區、輸入進程和輸出進程共3部分組成。
Spooling系統的優點有:
(1)提高了I/O速度。I/O操作時針對輸入井和輸出井,避免了操作低速I/O設備的速度不匹配。
(2)(2)將獨占設備改造為共享設備。Spooling系統沒有為任何進程實際分配設備,只是在輸入井或輸出井中為進程分配一個存儲區和建立一張I/O請求表。
(3)實現了虛擬設備功能。宏觀上有多個進程在同時使用一臺獨占設備,但對于每一個進程而言,他們認為自己獨占了一個設備。
7.試比較進程調度與作業調度的不同點。
(1)作業調度是宏觀調度,它決定了哪一個作業能進入主存。進程調度是微觀調度,它決定各作業中的哪一個進程占有中央處理機。(3分)(或)作業調度是高級調度,它位于操作系統的作業管理層次。進程調度是低級調度,它位于操作系統分層結構的最內層。(2)作業調度是選符合條件的(收容態)作業裝入內存。進程調度是從就緒態進程中選一個占用處理機。(3分)
8.簡述操作系統中的調度有哪些類型?
1高級調度,又稱作業調度或長程調度,用于決定把后備隊列中的哪些作業調入內存;(2分)
2低級調度,又稱進程調度或短程調度,用來決定就緒隊列中哪個進程應先獲得
處理機;(2分)
3中級調度,又稱中程調度,它按一定的算法將外存中已具備運行條件的進程換入內存,而將內存中處于阻塞狀態的某些進程換出至外存。(2分)
9.銀行家算法中的安全狀態是一個什么樣的狀態?
在系統中的若干并發進程,如果存在一個進程的順序序列,按照這個順序去執行,每個進程都能獲得自己所需的資源而執行,那么當前進程所處于的狀態就是安全狀態。
12若干個等待訪問磁盤者依次要訪問的磁道為20,44,40,4,80,12,76,假設每移動一個磁道需要3毫秒時間,移動臂當前位于41號磁道,請按最短尋道時間優先算法計算為完成上述各次訪問總共花費的尋找時間。要求寫出過程,也就是寫出使移動臂移動的移動次序和移動的磁道數。
10.進程調度中“可搶占”和“非搶占”兩種方式,哪一種系統的開銷更大?為什么?-可搶占式會引起系統的開銷更大。
可搶占式調度是嚴格保證任何時刻,讓具有最高優先數(權)的進程占有處理機運行,因此增加了處理機調度的時機,引起為退出處理機的進程保留現場,為占有處理機的進程恢復現場等時間(和空間)開銷增大。
11.進程的三種狀態“就緒”、“執行”、“阻塞”之間的轉換關系中,從哪個狀態到哪個狀態的轉換會引起進程調度?
1)“執行”轉換成“阻塞”,由于此時沒有運行的進程,要選擇一個來運行,這是一定會引起調度的;
2)“阻塞”轉換成“就緒”,由于新轉換成“就緒”狀態的進程的優先級可能比正在執行的進程的優先級高,所以可能會引起進程調度。
12.一個具有分時兼批處理功能的操作系統應怎樣調度和管理作業?
1)優先接納終端作業,僅當終端作業數小于系統可以允許同時工作的作業數時,可以調度批處理作業。
2)允許終端作業和批處理作業混合同時執行。
3)把終端作業的就緒進程排成一個就緒隊列,把批處理作業的就緒進程排入另外的就緒隊列中。
4)有終端作業進程就緒時,優先讓其按“時間片輪轉”法先運行。沒有終端作業時再按確定算法選批處理作業就緒進程運行。
第五篇:計算機操作系統期末簡答題總結
1、什么是進程?什么是線程?進程與線程有何區別?
答:(1)進程是具有獨立功能程序在某個數據集合上的一次執行過程。(2分)
(2)線程是進程內的一個執行實體或執行單元。(2分)
(3)進程和線程的區別:(a)不同進程的地址空間是獨立的,而同一進程內的線程共享同一地址空間。一個進程的線程在另一個進程內是不可見的。(b)在引入線程的操作系統中,進程是資源分配和調度的單位,線程是處理機調度和分配的單位,資源是分配給進程的,線程只擁有很少資源,因而切換代價比進程切換低。(2分)
2、什么是死鎖?產生死鎖的原因和必要條件是什么?
答:(1)在多道程序系統中,當一組進程中的每個進程均無限期地等待被改組進程中的另一進程所占有且永遠不會釋放的資源,此時的系統處于死鎖狀態,簡稱死鎖。(2分)
(2)死鎖產生的原因:(a)系統提供的資源有限;(b)進程推進順序不當。(2分)
(3)產生死鎖的必要條件:互斥條件、不可剝奪條件、請求和保持條件、循環等待條件。
3、說明作業調度,中級調度和進程調度的區別,并分析下述問題應由哪一級調度程序負責。
(1)在可獲得處理機時,應將它分給哪個就緒進程;
(2)在短期繁重負載下,應將哪個進程暫時掛起。
答:(1)作業調度用于決定把外存中處于后備隊列中的哪些作業調入內存,并為它們創建進程,分配資源,然后將新創建進程插入就緒隊列;中級調度負責將內存中暫時不具備運行條件的進程換到外存交換區存放,但內存空閑時,又將外存中具備運行條件的進程重新換入內存;進程調度決定將處理機分配給就緒進程隊列的哪個進程。(4分)
(2)進程調度、中級調度(2分)4.什么是操作系統?它的主要功能有哪些?
操作系統是一組控制和管理計算機硬件和軟件資源,合理的對各類作業進行調度,以及方便用戶使用的程序的集合。它包含四種功能:處理機管理、內存管理、設備管理和文件管理 5.什么是處理機的三級調度,它們在什么條件下發生? 高級調度、中級調度和低級調度
高級調度:當系統決定選擇一個后備作業調入內存運行時; 中級調度:在內存緊張不能滿足需要時; 低級調度:選擇一個就緒進程投入運行時。
6.比較分段式與分頁式存儲管理方式的主要差別。
(1)頁是物理單位目的是提高內存的使用率,段式邏輯單位目的是方便用戶使用;(2)頁的大小是固定的由系統決定;段的大小不固定且由用戶決定;(3)分頁作業的地址空間是一維的;分段作業的地址空間是二維的;
7.什么是多道程序設計?為什么要采用多道程序設計? 多道程序設計是一種軟件技術,該技術使同時進入計算機主存的幾個相互獨立的程序在管理程序控制之下相互交替地運行。引入多道程序設計,可具有以下好處:(1)可提高CPU的利用率;(2)可提高主存和I/O設備利用率;(3)可增加系統吞吐量; 8.簡述死鎖的防止與死鎖的避免的區別。
死鎖的防止是系統預先確定一些資源分配策略,進程按規定申請資源,系統按預先規定的策略進行分配,從而防止死鎖的發生。
而死鎖的避免是當進程提出資源申請時系統測試資源分配,僅當能確保系統安全時才把資源分配給進程,使系統一直處于安全狀態之中,從而避免死鎖。9.虛擬存儲器的基本特征是什么?虛擬存儲器的容量主要受到什么限制? 10.操作系統為什么要引入進程?進程與程序的關系是怎樣的? 11.什么是設備無關性?實現設備無關性有什么好處? 設備無關性是用戶編制程序時,不直接使用物理設備名來指定特定的物理設備,而是使用邏輯設備名請求某類設備,使得用戶程序獨立于具體的物理設備,由設備甘理馱件建立邏輯設備與物理設備的對應關系.好處是增加了設備分配的靈活性,易于實現I/O重定向。12.有結構文件可分為哪幾類,其特點是什么?
答:有結構文件可分為以下三類,分別是:
(1)順序文件。它是指由一系列記錄,按某種順序排列所形成的文件。
(2)索引文件。當記錄為可變長度時,通常為之建立一張索引表,并為每個記錄設置一表項,以加速對記錄的檢索速度。
(3)索引順序文件。這是上述兩種文件方式的結合,它為文件建立一張索引表,為每一組記錄中的第一個記錄設置一表項。
13.分頁系統與分段系統的區別主要在于哪些方面?
答:分頁與分段系統有很多相似之處,但兩者在概念上完全不同,主要表現在:(1)頁是信息的物理單位,分頁是為實現離散分配方式,以消減內存的外匯零頭,提高內存利用率。段是邏輯單位,分段的目的是為了更好的滿足用戶的需要。(2)頁的大小固定,段的長度不固定
(3)分業的作業地址是一維的,分段的地址空間是二維的,在標識一個地址時,要給出段名和段內地址 14.簡述引起進程調度的原因。
答:引起進程調度的事件主要有以下幾個:
(1)在執行進程執行完畢或因某種事件而不能再執行
(2)在進程通信或同步過程中執行某些原語,如P操作,block原語(3)執行中的進程因提出I/O操作而暫停執行
(4)在可剝奪式調度中有一個比當前進程優先級更高的進程進入到就緒隊列。(5)在分時系統中時間片用完 15.操作系統的基本特征是什么?
答:各種操作系統都擁有共同的特征。分別是:
(!)并發(2)共享(3)虛擬(4)異步性
16.什么叫虛擬存儲器?實現方式有哪些?
答:所謂虛擬存儲器,是指將作業的一部分裝入內存便可運行作業的存儲器系統。也即是指具有請示調入功能和置換功能,能從邏輯上對內存容量進行擴充的一種存儲器系統。
虛擬存儲器的實現方式有兩種:
(1)請求分頁系統(2)請求分段系統 17.操作系統的目標是什么?
答:操作系統的目標有以下幾點:
(1)方便性
(2)有效性
(3)可擴充性
(4)開放性 18.什么是請求分頁系統?它需要哪些方面的硬件機構支持?
答:請求分頁系統是在分頁系統的基礎上,增加了請求調頁功能、頁面置換功能所形成的頁式虛擬存儲系統。為了實現請求調頁和置換功能,系統必須提供必要的硬件支持。其中,最重要的是:
(1)請求分頁的頁表機制。(2)缺頁中斷機構(3)地址變換機構
19.進程有哪三種基本狀態?請分別闡述。
答:進程在運行中不斷地改變其運行狀態,通常,一個進程必須具有以下三種基本狀態。(1)就緒狀態。即進程以分配到除CPU以外的所有必要的資源后,只要能再獲得處理機,便可立即執行,這樣的狀態即就緒狀態。
(2)執行狀態。指進程已獲得處理機,其程序正在執行。
(3)阻塞狀態。指進程因發生某事件,如I/O請求,申請緩沖空間等而暫停執行時的狀態,亦即進程的執行受到阻塞。
20.什么叫分時系統,它的特征是什么? 答:分時系統是指一臺主機上連接了多個帶有顯示器和鍵盤的終端,同進允許多個用戶共享主機中的資源,每個用戶都可通過自已的終端以交互方式使用計算機。分時系統的特征如下:
(1)多路性。即多個用戶分時使用一臺主機。
(2)獨立性。每個用戶各占一個終端,獨立操作,互不干擾。(3)及時性。用戶的請求能在很短時間內獲得響應。
(4)交互性。用戶可通過終端與系統進行廣泛的人機對話。21.選擇調度方式和算法的準則是什么?
答:選擇調度方式和調度算法的準則,有的是面向用戶的,有的是面向系統的。面向用戶的準則:
(1)周轉時間短(2)響應時間快(3)截止時間的保證(4)優先權準則 面向系統的準則:
(1)系統吞吐量高(2)處理機利用率高(3)各類資源的平衡利用 22.試比較進程和程序的區別 答:(1)進程是一個動態概念,而程序是一個靜態概念,程序是指令的有序集合,無執行含義,進程則強調執行的過程。
(2)進程具有并行特征(獨立性,異步性),程序則沒有。
(3)不同的進程可以包含同一個程序,同一個程序在執行中也可以產生多個進程。23.什么是文件目錄?文件目錄中包含哪些信息? 答:一個文件的文件名和對該文件實施控制管理的說明信息稱為該文件的說明信息,又稱為該文件的目錄。
文件目錄中包含文件名、與文件名相對應的文件內部標識以及文件信息在文件存儲設備上的始址等信息。另外還可能包含關于文件邏輯結構、物理結構、存取控制和管理等信息。
24.什么是段式存儲管理?它從邏輯地址到物理地址是怎么變換的?
.把程序按內容或構成關系分成段,每段有自己的名字。一個用戶作業或進程包含的段對應于一個二維虛擬儲存器。以段為單位分配內存,然后通過地址映射機構把邏輯地址轉換成物理地址。只將那些經常訪問的段駐留內存,其他的段放在外存,待需要時自動調入。
地址變換過程:由虛地址中的段號為索引,查段表。找出該段在內存的起始地址,并將其和段內地址相加,從而得到物理地址。
25.在單處理機環境下,進程間有哪幾種通信方式,是如何實現的?
作業調度:從一批后備作業中選擇一個或幾個作業,給它們分配資源,建立進程,掛入就緒隊列。執行完后,回收資源。
進程調度:從就緒進程隊列中根據某個策略選取一個進程,使之占用CPU。
交換調度:按照給定的原則和策略,將外存交換區中的進程調入內存,把內存中的非執行進程交換到外存交換區中。26.設備管理中的數據傳送控制方式有哪幾種?分別簡述如何實現的。
程序直接控制:由用戶進程來直接控制內存或CPU和外設間的信息傳送。
中斷方式:進程通過CPU發出指令啟動外設,該進程阻塞。當輸入完成時,I/O控制器通過中斷請求線向CPU發出中斷信號,CPU進行中斷處理。DMA方式:在外設和內存之間開辟直接的數據交換通路。
通道控制方式:CPU發出啟動指令,指出通道相應的操作和I/O 設備,該指令就可啟動通道并使該通道從內存中調出相應的通道指令執行。27.試比較內存管理和外存管理的異同點.答:主要任務:內存管理的主要任務是為多道程序的運行,提供良好的環境;而外存管理的主要任務則是為文件提供存儲空間。
基本功能:內存管理的基本功能包含了內存空間的分配、回收、內存保護、對換、內存擴充等方面;而對外存管理的基本功能則只是對外存空間的分配和回收。
分配方式:它們都可采用連續分配或離散分配方式,且都以離散分配方式為主。
分配算法或機制:對于連續分配方式,內存與外存管理中的分配和回收算法類似,主要有首次適應算法、循環首次適應算法等;在離散分配方式中,兩者采用的機制不同,內存管理主要是利用頁(段)表;而在外存管理中,則主要利用文件分配表FAT。
28.SPOOLing的含義是什么?試述SPOOLing系統的特點、功能以及控制過程。
答:SPOOLing是Simultaneous Peripheral Operation On-Line(即外部設備聯機并行操作)的縮寫,它是關于慢速字符設備如何與計算機主機交換信息的一種技術,通常稱為“假脫機技術”。
SPOOLing技術是在通道技術和多道程序設計基礎上產生的,它由主機和相應的通道共同承擔作業的輸入輸出工作,利用磁盤作為后援存儲器,實現外圍設備同時聯機操作。
SPOOLing系統由專門負責I/O的常駐內存的進程以及輸入井、輸出井組成;它將獨占設備改造為共享設備,實現了虛擬設備功能。
29.處理機調度分為哪三級?各自的主要任務是什么?
答:作業調度:從一批后備作業中選擇一個或幾個作業,給它們分配資源,建立進程,掛入就緒隊列。執行完后,回收資源。
進程調度:從就緒進程隊列中根據某個策略選取一個進程,使之占用CPU。
交換調度:按照給定的原則和策略,將外存交換區中的進程調入內存,把內存中的非執行進程交換到外存交換區中。
30.什么是文件的邏輯結構和物理結構? 文件的邏輯結構(文件的組織):從用戶角度看到的文件的全貌,也就是它的記錄結構,包括流式文件、順序文件、索引文件和索引順序文件。文件的物理結構(文件的存儲結構):文件在外存上的存儲組織形式,包括連續文件、串聯文件和索引文件。