日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

操作系统(02326)课后习题答案

發布時間:2023/12/31 windows 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 操作系统(02326)课后习题答案 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

  • 第一章 操作系統概論
  • 第二章 操作系統運行環境
  • 第三章 進程與線程
  • 第四章 進程的同步與互斥
  • 第五章 死鎖
  • 第六章 存儲管理
  • 第七章 文件系統
  • 第八章 I/O設備管理

第一章 操作系統概論

  • 什么是操作系統?請說明操作系統在計算機系統中的作用和地位。
    操作系統是計算機系統中的一個系統軟件,它是這樣一些程序模塊的集合:它們能夠有效地組織和管理計算機中的硬件和軟件資源,合理地控制計算機工作流程,控制程序的執行,并向用戶提供各種服務功能,使用戶能夠靈活、方便、有效地使用計算機,并使整個計算機系統能高效地運行。
  • 操作系統管理計算機系統的哪些資源?
    硬件和軟件資源。
  • 請從資源管理角度說明操作系統的主要功能。
    進程管理(處理器管理)、存儲管理、文件管理、作業管理、設備管理
  • 操作系統有哪些基本特征?
    并發性:計算機系統中同時存在若干個正在運行著的程序;
    共享性:操作系統程序和多個用戶程序共享系統中的各種資源
    隨機性:操作系統的運行是在一種隨機的環境下進行的
  • 比較Windows、UNIX、Linux操作系統的體系結構,有什么異同?
    Windows體系結構是分成的模塊系統,主要層次有硬件抽象層HAL、內核、執行體和大量的子系統集合;
    UNIX操作系統的系統架構圖,其最里層是硬件,作為整個系統的基礎;其次是操作系統內核,包括進程管理、存儲器管理、設備管理和文件管理四個資源管理功能;往外一層是系統調用接口,及操作系統與用戶的接口shell以及編譯程序等;最外層是應用程序
    Linux系統有四個主要部分,及內核、shell、文件系統和用戶程序。
  • Android操作系統有什么特點?
    Android操作系統分為四層,從高層到低層分別是應用程序層、應用框架層、系統運行庫層和Linux內核層。
    以Linux為核心的手機操作平臺,是一款開放式操作系統
  • 手機操作系統通常提供哪些功能?
    除了操作系統通常具備的功能(進程管理、存儲管理、文件管理、作業管理、設備管理)之外,還必須具有接打電話,收發短信等通訊功能。
    除此之外,當代手機還通常具備攝影錄像,音視頻播放等媒體功能。同時還普遍提供軟件安裝管理的功能,以通過第三方軟件進一步豐富手機的功能。
  • 請敘述各種類型操作系統的工作方式及特點。
    一般把操作系統分為三種基本類型,即批處理操作系統、分時系統和實時系統
    (1)批處理操作系統
    批處理操作系統分為簡單批處理系統和多道批處理系統兩種類型。
    用戶將作業交給系統操作員,系統操作員在收到作業后并不立即將作業輸入計算機,而是在收到一定數量的作業后,組成一批作業,再把這批作業輸入到計算機中。這批作業可在系統中形成一個連續的、自動轉接的作業流。系統操作員然后啟動操作系統,系統自動、依次執行每個作業。最后由操作員將執行完畢的作業結果交給用戶。
    批處理操作系統的特點是成批處理。
    (2)分時系統
    分時操作系統是為了彌補批處理系統不能提供交互式快速服務的缺點而發展起來的。一臺計算機主機連接了若干個終端,每個終端可由一個用戶使用。用戶通過終端交互式的向系統提出命令請求,系統接受用戶的命令后,采用時間片輪轉方式處理服務請求,并通過交互方式在終端上向用戶顯示結果。用戶根據系統送回的處理結果發出下一道交互指令。
    分時操作系統具有多路性、交互性、獨占性和及時性的特點
    (3)實時系統
    使計算機能在規定的時間內,及時響應外部事件的請求,同事完成對該事件的處理,并能控制所有實時設備和實時任務協調一致地工作的操作系統。目標是,在嚴格的時間范圍內,對外部請求做出反應,系統具有高度可靠性。
    實時系統主要有兩類:硬實時系統、軟實時系統
    (4)嵌入式操作系統
    嵌入式操作系統就是運行在嵌入式芯片環境中,對整個芯片以及它所操作、控制的各種部件裝置等資源進行統一協調、調度、指揮和控制的系統軟件。
    嵌入式操作系統具有高可靠性、實時性、占有資源少、智能化能源管理、易于連接、低成本等優點。
    (5)個人計算機操作系統
    個人計算機操作系統是一種單用戶多任務的操作系統。其主要特點是:為單個用戶服務;采用圖形界面人機交互的工作方式,界面友好;使用方便,用戶無須具備專門知識,也能熟練地操作系統。
    (6)網絡操作系統
    為計算機網絡配置的操作系統成為網絡操作系統。網絡操作系統是基于計算機網絡的、在各種計算機操作系統之上按照網絡體系結構協議標準設計開發的軟件,包括網絡管理、通信、安全、資源共享和各種網絡應用。
    計算機網絡有:集中式模式、分布式模式
    (7)分布式操作系統
    分布式操作系統是網絡操作系統的更高級形式,除了有網絡操作系統的功能之外,期特征是,系統中所有主機使用同一個操作系統、資源深度共享、透明性和自治性。
  • 請比較批處理系統、分時系統以及實時系統之間的相同點和不同點。
    相同點:這三類操作系統均為現代計算機系統中普遍使用的操作系統,操作系統本身以及它所管理的對象都是并發的系統,是一個極其復雜和龐大的軟件系統。
    不同點:批處理操作系統的特點是成批處理,用戶不能干預自己作業的遠行;分時系統的特點是多路性、交互性、獨占性和及時性;實時操作系統的特點是能在嚴格的時間范圍內對外部請求做出反應,以及具有高度可靠性。
  • 請描述分時系統下響應時間的含義。、
    分時系統中,通常把用戶從終端發出命令到系統給予回答所經歷的時間定義為 響應時間。
  • 在什么情況下應該采用批處理方式?在什么情況下應該考慮分時系統策略?
    批處理系統適用于追求系統資源利用率高、作業吞吐率高的計算機系統。
    分時系統適用于需要提供交互式快速服務的計算機系統。
  • 現代的通用操作系統把批處理方式和分時方式二者結合起來,為什么要這樣做?這 樣的結合有什么特點?
    這樣的操作系統結合了批處理和分時兩種系統的特點,該系統把處理終端用戶的、交互式的、比較小的但需要及時處理的作業作為“前臺作業”予以優先處理;把需要較長運行時間、要調用其他外部設備、比較大型但無須終端用戶干預的且不需要立即處 理的作業作為“后臺作業”進行批處理。這樣,使整個計算機系統忙閑結合,能更有效地利用計算機系統的資源。
  • 實時操作系統有什么主要特征?
    在嚴格的時間范圍內,對外部請求做出反應,系統具有高度可靠性。
  • 在如下的應用場合中,應該選用什么類型的操作系統呢?并請說明為什么。
    導彈控制; 實時操作系統
    國家統計局軟件;通用的分時/批處理操作系統
    汽車發動機點火控制;實時操作系統
    火車訂票系統;網絡操作系統
    互聯網電子游戲。網絡操作系統
  • 請說明什么是SPOOLing 技術?在現代操作系統中有沒有使用SPOOLing 技術?
    SPOOLing 技術的全稱是“同時的外部設備聯機操作”。該技術是用磁盤設備作為主機的直接輸入輸出設備,主機直接從磁盤上選取作業遠行,作業的執行結果業存在磁盤上,通道負責將用戶作業從外設動態寫入磁盤,并使這一操作與主機并行。從而 大大提高了處理器和各種外部設備的利用效率。由于SPOOLing 技術需要通道技術, 所以一般用于大型計算機系統和那些對 I/O處理能力要求比較嚴格的系統中,一般低檔 微型計算機中,不使用此技術。
  • 網絡操作系統和分布式操作系統都是配置在計算機網絡上的操作系統,它們之間有 什么本質上的不同?
    網絡操作系統是基于計算機網絡的,是在各種計算機操作系統之上按網絡體系結 構協議標準設計開發的軟件,它包括網絡管理、通信、安全、資源共享和各種網絡應用。 分布式操作系統是網絡操作系統的更高級形式,除了有網絡操作系統的功能之外,其特 征是系統中所有主機使用同一個操作系統、資源的深度共享、透明性和自治性。
  • 操作系統設計的過程包括哪些方面,在每個方面都要考慮什么問題?
    操作系統的設計過程包括功能設計、算法設計和結構設計。在每個方面均應考慮使操作系統具有可靠性、高效性、易維護性、易移植性、安全性及簡明性等問題
  • 操作系統的設計目標是什么?
    目標有三條:系統模塊化、模塊標準化、通信規范化;
  • 影響操作系統正確性的因素有哪些?
    影響操作系統正確性的因素包括操作系統的功能成分多、各種外部設備 的接口復雜、參與開發的人員較多
  • 在進行操作系統結構設計時應考慮哪些問題?
    應考慮組成操作系統的各部分的劃分原則以及它們之間的關系(即通信),簡言之,即操作系統的構成法和組合方法。
  • 請說明整體式結構、層次式結構和微內核結構的基本思想及優缺點?
    整體式結構(模塊組合法)的基本思想是首先確定操作系統的總體功能,然后將總功能 分解為若干子功能,實現每個子功能的程序稱為模塊,再通過接口將所有模塊連接起來形成一個操作系統的整體。
    優點:結構緊密、接口簡單直接、系統效率較高。
    缺點:模塊間轉接隨便,各模塊相互牽連,獨立性差,系統結構不清晰;數據基本上作為全程量處理,模塊的修改和維護較困難;由于模塊組合常以大型表格為中心,限制了系統的并發性。
    層次式結構的基本思想是為克服模塊結構的缺點、減少各模塊之間無規則的互相調用、 相互依賴關系,力求將模塊間的調用的無序性變為有序性,將操作系統的所有功能模塊按功能流圖的調用次序,將模塊分成若干層,各層之間的模塊只能是單向依賴或單向調用關系。
    優點:既具有模塊法把整體問題分解成局部化的優點,使各模塊自己的組織結構和依賴關系清晰明了,增加了系統的可讀性和可適應性,增加了系統的可靠性,易于調式、易于修改、易于擴充、易于維護等。
    微內核(客戶/服務器)結構適宜于應用在網絡環境下分布式處理的計算環境中。
    優點:將系統的分成若干個小的并且自包含的服務進程分支,每個分支運行在獨立的用戶進程中,相互之 間通過規范一致的方式接收發送消息而聯系起來。優點:可靠]靈活、適宜于分布式處 理的計算環境。
    缺點:效率較低。
  • 第二章 操作系統運行環境

  • 請簡述處理器的組成和工作原理。你認為哪些部分和操作系統密切相關,為什么?
    處理器一般由運算器、控制器、一系列的寄存器以及高速緩存構成。其中,運算器實現指令中的算術和邏輯運算,是計算機的核心。控制器負責控制程序運行的流程,寄存器是一種暫時存儲器件,用于 CPU執行指令的過程中暫存數據、地址以及指令信。CPU本身提供了一定的存儲能力,但容量很小。處理器中的運算器、控制器、寄存器都與操作系統密切相關。操作系統就是通過對處理器中的這些部件來實現程序的運算和程序流程的控制的。
  • 為了支持操作系統,現代處理器一般都提供哪兩種工作狀態,以隔離操作系統和普通程序?兩種狀態各有什么特點?
    現代處理器一般都提供管態和目態等兩種工作狀態。用戶程序在目態下運行, 只能使用非特權指令,具有較低的特權級別;操作系統在管態下運行,可以使用特權指令和非特權指令,具有較高的特權級別。
  • 計算機系統中既有操作系統程序,又有用戶程序,在什么情況下操作系統才能占用中 央處理器?
    當用戶程序占用CPU 時,CPU在目態下運行,只能使用非特權指令;當需要使用特權指令時,將引起一次處理器狀態的切換,此時處理器通過中斷機制,將目態轉換為管態,然后將處理權移交給操作系統中的一段代碼,操作系統才能占用 CPU。從目態變為管態其轉換的惟一途徑是通過中斷。
  • 為什么要把‘啟動I/O’等指令定義為特權指令?
    因為如果允許用戶隨便使用這些指令,就有可能是系統陷入混亂。
  • 怎樣限制用戶程序中使用特權指令?
    當用戶程序占用 CPU時,CPU在目態下運行,只能使用非特權指令;若此刻 CPU取到了一條特權指令,形成“非法操作”事件,CPU就拒絕執行該指令。中斷機制識別到該事件,運行狀態就從目態變為管態,將控制權轉給操作系統,通過操作系統通知用戶修改。
  • 什么是分級的存儲體系結構?它主要解決了什么問題?
    計算機存儲系統的設計主要考慮容量、速度和成本三個問題。容量是存儲系統的基礎,都希望配置盡可能大的存儲系統;同時要求存儲系統的讀寫速度能與處理器的速度相匹配;此外成本也應該在一個合適的范圍之內。但這三個目標不可能同時達到最優。一般情況下,存儲設備讀寫速度越快,平均單位容量的價格越高,存儲容量越小;反之,存儲設備讀寫速度越慢,平均單位容量的價格越低,存儲容量越大。為了在這三者之間 取得平衡,就采用分級的存儲體系結構,由寄存器、高速緩存、主內存、硬盤存儲器、 磁帶機和光盤存儲器等構成。操作系統經常訪問較小、較貴而快速的存儲設備,以較大、 較便宜而讀寫速度較慢的存儲設備作后盾。在整體上通過對訪問頻率的控制來提高存儲 系統的效能。
  • 請簡述程序局部性原理。
    是指程序在執行時呈現出局部性規律,即在一段時間內,整個程序的執行僅限于程序中的某一部分。相應地,執行所訪問的存儲空間也局限于某個內存區域。
  • 什么是存儲保護,有哪些方法實現存儲保護?
    存儲在內存中的用戶程序和操作系統以及他們的數據,有可能受到正在CPU上運行的某系用戶程序的有意或無意的破壞,這會造成十分嚴重的后果。一定有程序向操作系統寫入了數據,將有可能造成系統奔潰。對內存中的信息加以嚴格的保護,使操作系統及其他程序不被破壞,是其正確運行的基本條件之一。
    界址寄存器是被廣泛使用的一種存儲保護技術。其方法是在處理器中設置一對界限寄存器來存儲該用戶作業在內存中的上限和下限地址,分別稱為上限寄存器和下限寄存器。也可將一個寄存器作為基址寄存器,另一寄存器作為限長寄存器的方法來指出程序在內存中的存儲區域。每當處理器要訪問內存時,硬件自動將被訪問的內存地址與界限寄存器的內容比較,以判斷是否越界。如果未越界,就按此地址訪問內存,否則將產生中斷——越界中斷或稱為存儲保護中斷。
  • 操作系統與硬件如何配合來實現存儲保護的?
    操作系統通過與硬件中的界地址寄存器實現存儲保護。其方法是在 CPU 中設置一對界限寄存器來存放某個作業在內存中的下限和上限地址,或者一個寄存器作為基址寄存器,另一個作為限長寄存器。每當CPU 訪問內存時,硬件自動將被訪問的內存地址與界限寄存器的內容進行比較,以判斷是否越界。如果未越界,則按此地址訪問內存,否則將產生越界中斷。
  • 常見的I/O控制技術有哪些,各有什么特點?
    (1)通道
    通道是獨立于中央處理器的,專門負責數據I/O傳輸工作的處理單元。代替處理器對外部設備實行統一的管理,從而使處理器與外部設備并行工作,提高了躲到程序處理的效率。
    (2)DMA技術
    DMA技術由DMA控制器自動控制成塊數據在內存I/O單元之間的傳送,提高了處理I/O的效能。
  • 緩沖技術在計算機系統中起著什么樣的作用,它是如何工作的?
    緩沖技術是用在外部設備與其他硬件部分之間的一種數據暫存技術。用以緩解處理器處理數據速度與設備傳輸數據速度之間不匹配矛盾的一種數據暫存技術。
  • 時鐘對操作系統有什么重要作用?
    計算機系統中的時鐘可分為硬件時鐘和軟件時鐘,以及絕對時鐘與相對時鐘。時鐘可以防止系統陷入死循環,實現作業按時間片輪轉進行,給出正確的時間信號,定時喚醒事先按確定時間執行的時間,記錄事項等。
  • 硬件時鐘怎樣實現,其作用是什么?
    硬件時鐘的工作原理是,在電路中的晶體振蕩器,每個一定間隔產生固定的脈沖頻率,時鐘電路中的時鐘寄存器依據時鐘電路所產生的脈沖數,對時鐘寄存器進行加1的工作。
  • 軟件時鐘怎樣實現,其作用是什么?
    軟件時鐘常用作相對時鐘,它的工作原理主要是利用內存單元模擬時鐘寄存器,并采用一段程序來計算相應的脈沖數,對內存時鐘寄存器進行加1或減1的工作,從而模擬了時鐘的功能。
  • 什么是中斷,為什么說中斷對現代計算機很重要?
    中斷是指處理器對系統中或系統外所發生的異步事件的響應。異步事件是指無一定時序關系的隨機發生的事件。中斷是所有要打斷CPU的正常工作次序, 并要求其去處理某一事件的一種常用手段。中斷技術解決了主機和外設并行工作的問題,消除了因外設的慢速而使得主機等待的現象,為多機操作和實時處理提供了硬件基礎。
  • 中斷的作用是什么?
    能充分發揮處理器的使用效率。因為輸入輸出設備可以使用中斷的方式同處理器通信,報告其完成處理器所要求的數據傳輸的情況和問題,這樣可以免除處理器不斷地查詢和等待,從而大大提高處理器的效率
    提高系統實時能力。因為據歐較高實時處理要求的設備,可以通過中斷的方式請求及時處理,從而使處理器立即運行該設備的處理程序。
  • 中斷的向量是什么,其作用是什么?
    引起中斷的事件稱為中斷事件或中斷源,計算機系統提供的中斷源的有序 集合稱為中斷字。處理某一種中斷事件的程序稱為中斷處理程序。為了使中斷裝置便于找到所需的中斷處理程序,專門設計了中斷處理程序入口地址映射表,稱為中斷向量表, 表中的每一項稱為中斷向量,主要由程序狀態字 PSW和程序計數器PC 的值組成。中斷向量的作用是通過它可以找到中斷處理程序在內存中的存儲位置。
  • 中斷響應主要做哪些工作?
    處理器接收中斷信號;
    保護現場,將中斷斷點的PSW和程序計數器PC 的值存入系統堆棧;
    分析中斷向量,取得中斷處理程序的入口地址;
    將處理器的PC 值置為中斷處理程序的入口地址;
    調用中斷處理程序。
  • 中斷處理的主要步驟是什么?
    中斷處理指中斷信號已經被中斷系統的硬件中斷裝置接收和響應之后,相應的中斷處理程序進行中斷處理的步驟。包括檢查 I/O相關的狀態信息,操縱 I/O設備或者在設備和內存之間傳送數據。在中斷處理程序結束工作之后,處理器會檢測到一條中斷返回指令,處理器執行此指令,把恢復中斷時所保護的中斷斷點現場,處理器也恢復 成被中斷時的狀態,整個中斷處理結束。
  • 為什么要對中斷進行屏蔽?
    如果沒有中斷屏蔽,當中斷裝置響應了某個中斷后中斷處理程序在進行處理時,中斷裝置也可能去響應另一個中斷事件,就會出現優先級低的中斷事件的處理打斷優先級高的中斷事件的處理,使得中斷事件的處理順序與響應順序不一致,而且會形成多重嵌套處理,使多現場保護、程序返回等工作變得復雜。因此設置中斷屏蔽。
  • 多個中斷同時發生時,系統是怎樣處理的?
    同時有多個中斷請求時,系統接收中斷優先級最高的中斷而忽略其中中斷優先級較低的中斷。如果同一中端級中的多個設備接口都有中斷請求,則按照固定的優先數或作者輪轉法確定響應的順序。
    對多個中斷的處理策略一般有兩種:
    (1)正當處理一個中斷時,此時系統將對任何新發生的中斷置之不理。在這期間發生的中斷將保持掛起狀態。當處理器再次允許中斷時,這個新的中斷信號會被處理器檢測到,并作出處理
    (2)中斷嵌套。即按照優先度分級,允許優先級較高的中斷打斷優先級較低的中斷處理過程,于是引起中斷處理的嵌套。
  • 闡述硬件中的中斷裝置的作用。
    硬件的中斷裝置負責捕獲中斷源發出的中斷請求,并以一定的方式響應中斷源(將中斷現場的程序狀態字PSW,指令計數器PC的值和其他重要現場信息壓入系統堆棧),然后將處理器的控制權交給與中斷源相應的中斷處理程序。
    硬件中斷裝置接收中斷信后,并把中斷信后寄存在中斷寄存器中。
  • 哪些中斷時間一定會引起進程狀態的變化,哪些中斷事件可能引起進程狀態的變化,有不引起進程狀態變化的中斷事件嗎?
    一定會引起進程狀態變化的中斷事件:硬件故障中斷、輸入輸出中斷、自愿中斷;可能會引起變化的中斷事件:外部性中斷事件、程序性中斷事件。進程在執行中狀態會不斷地改變,每個進程在任何時刻總是處于三種基本狀態之一:等待態、就緒態、運行態。中斷事件是否引起進程狀態的變化,還要看該中斷事件的中斷優先級和進程PSW的中斷屏蔽位。曉津認為:硬件故障中斷和自愿中斷是一定會引起進程狀態變化的,而其他中斷則可能引起進程狀態變化。
  • 操作系統為什么要提供‘系統調用’?
    系統調用是操作系統為用戶程序提供的一種服務界面,也可以說是操作系統保證程序設計語言能正常工作的一種支持。在源程序一級,用戶用程序設計語言描述算題任務的邏輯要求,例如讀文件、寫文件、請求主存資源等。這些要求的實現只有通過操作系統的系統調用才能完成,其中有些要求還必須執行硬件的特權指令才能達到目的。
    為了從操作系統中獲得服務,用戶程序必須使用系統調用,系統調用陷入內核并調用操作系統。系統調用是操作系統提供給編程人員的衛唯一接口。
  • 在操作系統中實現系統調用機制應該解決哪些問題?
    進程控制、文件操作、進程通信、設備管理、信息維護等等
  • 當應用程序執行到系統調用時,系統是如何處理的?
    當用戶使用操作系統調用是,產生一條相應的指令(異常指令),處理器在執行到該指令時發生相應的中斷,并發出有關信號給該處理機構(異常處理機構);
    該處理機構在收到了處理器發來的信號后,啟動相關的處理程序去完成該系統調用所要求的功能。
    當用戶使用操作系統調用時,通過使用訪管指令產生中斷,把目態切換成管態,并啟用操作系統。訪管指令包含對應系統調用的功能號。
  • 第三章 進程與線程

  • 什么是多道程序設計?
    允許多個程序同時進入內存并運行。

  • 多道程序設計怎樣提高系統效率?多道程序設計一定能提高系統效率嗎?
    采用多道程序設計能改善資源的使用情況,從而提高系效率。但是也存在一些問題:
    (1)可能延長程序的執行時間
    (2)系統效率的提高有一定限度

  • 操作系統中為什么要引入進程?進程與程序有什么區別?
    為了更好的描述程序的執行,實現操作系統的并發性和共享性,引入進程的概念。
    進程與程序既有聯系也有區別
    (1)進程與程序的聯系
    程序是構成進程的組成部分之一,一個進程運行的目的是執行它所對應的程序,如果沒有程序,進程就失去了存在的意義。從靜態的角度來看,進程是有程序、數據和進程控制塊(PCB)三部分組成的。
    (2)進程與程序的區別
    程序是靜態的,進程是動態的。
    進程是程序的一個執行過程。程序是永久存在的,而進程是為了程序的一次執行而暫時存在的,進程有生命周期,有誕生,亦有消亡。一個進程可以包括若干程序,一個程序也可以有多個進程。

  • 程序的并發執行有什么特點?并發和并行有什么區別?
    程序的并發執行的特點有:
    (1)在執行期間,并發程序相互制約
    (2)程序與計算不再一一對應
    (3)并發程序的執行結果不可在現

  • 程序的并行執行與并發執行存在差別。前者指不論在宏觀的時間周期上看,還是從微觀上看,若干程序確實在同時運行;而程序的并發執行,如果在單處理器系統中,他們在宏觀上市同時進行的,但在微觀上,這些程序仍然是順序執行的。

  • 可再入程序有什么特性?
    能夠被多個用戶同時調用的程序稱作是可再入程序。可再入程序必須是純代碼的程序,程序在執行過程中不會修改自身代碼。可再入程序的操作對象,即數據,是與程序相分離的。

  • 進程有哪些基本狀態?他們的變化關系是怎樣的?
    進程有三種基本狀態:等待狀態,就緒狀態,運行狀態;
    等待狀態:也稱阻塞狀態或封鎖狀態。指進程因等到某種時間發生而暫時不能運行的狀態
    就緒狀態:指一個進程已經具備運行條件,但是由于沒有獲得處理器而不能運行的狀態
    運行狀態:指進程已獲得除利息,并且在處理器上運行的狀態。

  • 系統中有n個進程,在任意時刻,處于運行、就緒和等待狀態的進程最多,最少各有幾個?
    在單處理器系統中,任一時刻,處于運行狀態的進程最多只有一個,最少為0個;處于就緒狀態的進程最多有n-1個,最少為0個;處于等待狀態的進程最多有n個,最少有0個。

  • 進程控制塊的作用是什么?其主要內容有哪些
    進程控制塊是用來描述進程的基本情況以及進程的運行變化過程。進程控制塊是進程的唯一標志。
    進程控制塊的內容可以分為調度信息和現場信息兩大部分。調度信息供進程調度時使用,描述了進程當前所處的狀況,包括進程名、進程號、地址空間信息、優先級、當前狀態、資源清單、家族關系、消息隊列指針、進程隊列指針和當前打開文件等;
    現場信息刻畫了進程的運行情況,只記錄了可能會被其他進程改變的寄存器,如程序狀態字、時鐘、界地址寄存器等。

  • 進程能否修改訪問自己的進程控制塊內容?
    進程控制塊是系統為程序建立的用于標志進程,記錄各進程執行情況的。進程本身不能訪問或者修改自己的進程控制塊的內容,但父進程可以訪問或修改其子孫進程的進程控制塊內容,以便對它的子孫進程進行必要的管理和控制。

  • 當進程調度選中一個進程后嗎,怎樣才能讓它占用處理器?
    當進程調度選中一個進程后,把選中進程的進程控制塊中有關的現場信息,如通用寄存器、控制寄存器和程序狀態字寄存器的內容送入處理器相應的寄存器中,處理器就按該進程的要求工作,達到了進程占用處理器的目的。

  • 為什么引入線程?線程和進程之間的區別和聯系是什么?
    為了減少程序并發執行時所付出的時間和空間開銷,使操作系統具有更好的并發性。
    線程是進程中的一個實體,是處理器調度和分派的基本單位。進程是擁有資源的獨立單位。
    線程具有許多傳統進程的特征,故稱為輕量級進程或進程元。

  • 為什么說線程間的狀態切換比進程間的狀態切換開銷低?同一個進程中的兩個線程切換的開銷是否也比不同進程中兩個線程切換的開銷少?
    線程不擁有自己的系統資源,切換狀態時只需要保存少量的寄存器內容,不涉及存儲器管理方面的操作;而進程擁有自己的系統資源,創建和撤銷時都需要進行資源分配或回收,切換狀態時需要對整個當前進程的處理器環境進行保存,并對新的被調度的進程的處理器環境進行設置,這些操作都需要占用消耗系統資源。
    同一進程間的線程具有相同的地址空間,共享相同的系統資源,切換方便,而不同進程之前線程切換時則需要進行進程切換,所以同一進程間的線程切換時開銷也要小于不同進程中兩個線程切換的開銷。

  • 進程調度的作用是什么?引起進程調度的因素有哪些?
    進程調度的作用是:記錄系統中所有進程的執行情況;根據一定的算法,從就緒隊列中選出一個進程準備把處理器分配給它;把處理器分配給進程。
    引起進程調度的因素有:
    (1)正在執行的進程運行完畢
    (2)正在執行的進程由于某種錯誤而終止
    (3)時間片永外,即有一個進程由運行態變為就緒態
    (4)正在執行的進程調用阻塞原語將自己阻塞起來,即一個進程由運行態變成阻塞態
    (5)創建了新的進程,即一個進程進入就緒隊列
    (6)正在執行的進程調用了喚醒原語操作激活了等在資源的進程,即一個等待狀態的進程變成就緒態

  • 搶占式調度和非搶占式調度有何區別?
    可搶占是調度方式,就緒隊列中一旦有優先級高于當前運行進程優先級的進程存在時,變立進行調度,轉讓處理器;不可搶占式調度,一旦把處理器分配給一個進程,它就一直占用處理器,直到該進程自己調用原語操作或等待I/O而進入阻塞狀態,或時間片用完才出讓處理器。

  • 對于進程調度,較小的優先級值是表示較低的優先級還是表示較高的優先級?
    不同的操作系統中設定不同。 在UNIX和許多其他系統中,大的優先級值表示低優先級進程。許多系統,比如WINDOWS,剛好相反,大數值表示高優先級。

  • 在一個單處理器的躲到程序設計系統中,現有兩道進程同時執行,其中一道以計算為主,另外一道以輸入輸出為主,將怎樣賦予進程進程占有處理器的優先數?解釋為什么?

  • 假定就緒隊列的進程按優先數自大到小順序排列,當有進程要加入就緒隊列時,應按它的優先數排入相應位置,試就單向鏈接的方式寫出實現程序入隊的程序。

  • 在分級調度算法中,為什么對不同就緒隊列中的進程規定使用不同長度的時間片?

  • 在分級調度算法中,為什么對不同就緒隊列中的進程規定使用不同長度的時間片?
    因為各個就緒隊列的優先級不一樣,優先級越高的隊列時間片長度越小,優先級越低的隊列時間片越長.這樣做的目的是讓那些短而高優先級的作業迅速完成,而又讓大的作業又能夠處理完成。

  • 為什么說多級反饋隊列調度算法能較好地滿足各類用戶的需要?
    多級反饋隊列法綜合了先進先出調度算法、時間片輪轉算法、和可搶占式最高優先級算法的一種進程調度算法。

  • 系統內核應包含哪些功能?內核的特點是什么?
    系統內核提供下列功能:中斷處理程序、進程同步與互斥、進程調度、控制與通信、存儲管理的進本操作以及時鐘管理等。
    內核只占整個操作系統代碼中的一小部分,是最接近裸機的部分,內核是進程賴以活動的基礎,內核的功能通過原語操作來實現。

  • 第四章 進程的同步與互斥

  • 何謂與時間有關的錯誤?舉例說明之。并發進程執行時一定會產生于時間有關的錯誤嗎?為什么?
    并發進程中共享了公共變量,使得程序的計算結果與并發程序執行的速度有關。這種錯誤的結果又往往是與時間有關的,所以,把它稱之為與時間有關的錯誤。

  • 什么是臨界區?什么是相關臨界區?對相關臨界區的使用規則?
    若在系統中的某些資源一次只允許一個進程使用,則稱這類資源為臨界資源或共享變量,而在進程中訪問臨界資源的程序稱為臨界區。
    如果有若干進程共享某一臨界區,則稱該臨界區為相關臨界區。
    要求進入相關臨界區的進程之間構成互斥關系。為了保證系統中的各并發進程順利運行,對兩個以上欲進入相關臨界區的進行,必須實行互斥。

  • 進程間有哪幾種通信方式?各有什么特點?各種方式分別適用于那些情況?
    解決進程間的大量信息通信的問題有三類方案:共享內存、消息機制、以及通過共享文件進行通信,及管道通信。
    共享內存:在互相通訊的進程之間設有一個公共內存區,一組進程向該公共內存中寫,另一組進程從公共內存中讀,通過這種方式實現兩組進程間的信息交換。
    消息機制:是用于進程間通信的高級通信原語之一。
    (1)消息緩沖通信:利用內存中公共消息緩沖區實現進程之間的信息交換。消息緩沖區是由:消息長度、消息正文、發送者、消息隊列指針組成的數據結構。
    (2)信箱通信:為了實現進程間的通信,可以設立一個通信機構——信箱,以發送信件以及接受回答信件為進程間通信的進本方式。一個信箱的接口可以由信箱說明和信箱體兩部分組成。信箱說明有如下的數據結構:可存信件數,已有信件數。
    管道通信:所謂管道,就是連接兩個進程之間的一個打開的共享文件,專用于進程之間進行數據通信。管道通信的基礎是文件系統。

  • 第五章 死鎖

  • 說明產生死鎖的四個必要條件;給出一種可以避免死鎖發生的簡單方法。
    產生死鎖的四個必要條件:
    (1)互斥條件:
    資源是獨占的且排他使用。進程互斥使用資源,即一個時刻只能給一個進程使用。
    (2)不可剝奪條件
    不可搶占或不可強占。進程所獲得的資源在未使用完畢前,不能被其他進程剝奪。
    (3)請求和保持條件
    部分分配或占有申請。進程先申請它所需要的一部分資源,得到后在申請新的資源,在申請新的資源同時,繼續占用分配到的資源
    (4)循環等待條件
    環路等待。環路中的每個進程已占有的資源同時被另一進程所申請。

  • 死鎖和饑餓有什么相同點和不同點?
    若對資源的管理、分配和使用不當,則會產生死鎖或是饑餓。
    死鎖是指在多道程序系統中,一組進程中的每一個進程均無限期地等待被該組進程中的另一個進程所占有且永遠不會釋放的資源,這種現象稱系統處于死鎖狀態,簡稱死鎖。
    饑餓是指系統不能保證某個進程的等待時間上界,從而使該進程長時間等待,當等待時間給進程推進和響應帶來明顯影響時,稱發生了進程饑餓。當饑餓到一定程度的進程所賦予的任務即使完成也不再具有實際意義時稱該進程被餓死。

  • 試敘述死鎖產生的原因、必要條件和解決死鎖的辦法。
    產生死鎖的原因只要有兩個:
    一是競爭資源,系統提供的資源數量有限,不能滿足每個進程的需求。
    二是多道程序運行時,進程推進順序不合理。
    必要條件:互斥條件、不可剝奪條件、請求和保持條件、循環等待條件
    若檢測后發現系統有死鎖,可通過剝奪資源或撤銷進程的方法解除死鎖。

  • 是舉出日常生活中死鎖的例子,并說明之。

  • 死鎖預防、死鎖避免和死鎖檢測之間的區別是什么?
    死鎖預防:預先確定一些資源分配策略,進程按規定申請資源,系統按預定的策略進行分配,這些分配策略均能使產生死鎖的四個必要條件之一不成立,從而使系統不會發生死鎖。
    死鎖避免:當進程提出資源申請時,系統動態測試資源分配情況,僅當能確保系統安全是才把資源分配給進程。
    死鎖檢測:允許系統中發生死鎖,即對資源的申請和分配不加任何限制,只要有剩余的資源就把資源分配給申請進程。因此就可以出現死鎖,但是系統將不斷跟蹤所有進程的進展,定時運行一個‘死鎖檢測程序’。若檢測后沒有發現死鎖,則系統可以繼續工作,若檢測后發現系統有死鎖,則可通過剝奪資源或撤銷進程的方法解除死鎖。

  • 如何防止循環等待條件的發生。
    采用資源的有序分配法。基本思想是,將系統中的所有資源順序編號。一般原則是,較為緊缺、稀少的資源的編號較大。進程申請資源時,必須嚴格按照資源編號的順序進行,否則系統不予分配。即一個進程只有得到編號小的資源,才能申請編號較大的資源;釋放資源時,應按編號遞減的次序進行。

  • Dijkstra等人提出的銀行家算法,其主要思想是什么?它能夠解決實際中的死鎖問題嗎?為什么?
    進程首先提出對資源的最大需求量,當進程執行中每次申請資源時,系統測試該進程已占用的資源與本次申請的資源數之和是否超過資源的最大需求量。若超過就拒絕分配資源,若沒有超過,則系統再次測試系統現存的資源能否滿足該進程尚需的最大需求量,若能滿足則按當前的申請量分配資源,否則也有推遲分配。
    這樣做能保證在任何時候至少有一個進程可以得到所需要的全部資源而執行結束。

  • 第六章 存儲管理

  • 存儲管理的主要功能有哪些?
    存儲管理的主要任務有:存儲分配,為用戶分配存儲空間,在不需要的時及時回收,內存分配有靜態分配和動態分配方式;內存共享,使多個進程共用內存中相同區域,包括代碼共享和數據共享;存儲保護,使系統正常運行,避免內存中各個程序相互干擾;擴充內存容量,使用戶得到的比實際內存容量大的多。

  • 解釋下列術語:邏輯地址、絕對地址、地址重定位。
    絕對地址:一般而言,存儲器以字節為編制單位,每個字節都有一個地址與其對應。假定存儲器的容量為n個字節,其地址編號順序為0,1,…,n-1,這些地址稱為內存的絕對地址。
    邏輯地址:在多道程序設計的系統中,內存中同時存儲了多個用戶程序。操作系統根據內存的使用情況為用戶分配內存空間。因此,每個用戶不能預先知道他的程序將被存儲到內存的什么位置。這樣,用戶程序中就不能使用內存的絕對地址。為了方便用戶,每個用戶都可認為自己的程序和數據存儲在一組‘0’地址開始的連續空間中。用戶程序中使用的地址稱為邏輯地址。
    地址重定位:把邏輯地址轉換成絕對地址的工作稱為地址重定位或地址轉換,又稱地址映射。重定位的方式有靜態重定位和動態重定位。

  • 在可變分區管理方式下,什么是碎片?如何解決碎片問題?
    可變分區指,系統不預先劃分固定分區,而是在裝入程序的時劃分內存分區,使為程序分配的分區的大小正好等于該程序的需求量,且分區的個數是可變的。
    碎片是指,內存經過一段時間的分配回收后,會存在很多很小的空閑塊。他們每一塊都很小,不足以滿足程序分配內存的要求,但是其總和卻可以滿足 程序的分配要求,這些空閑塊被稱為碎片。
    解決碎片問題的辦法是,在適當的時刻進行碎片整理,通過移動內存中的程序,把所有的空閑碎片合并成一個連續的大的空閑區且放在內存的一端,而把所有程序占用區放在內存的另一端。

  • 采用緊縮技術有什么優點?移動一道程序時操作系統要做哪些工作?
    緊縮技術可以集中分散的空閑區,提高內存的利用率,便于進程的動態擴充內存。

  • 解釋頁式存儲管理中為什么要設置頁表和TLB。
    頁表指出改程序虛擬地址中的頁號與所占用的物理頁面號之間的對用關系;頁面又是硬件進行地址轉換的依據。
    TLB:轉換檢測緩沖區。頁式存儲管理中的頁表是存儲在內存中的。當要按給定的虛擬地址進行讀寫時,必須訪問兩次內存。第一次按頁號讀出頁表中對用的塊號,第二次按照計算出來的絕對地址進行讀寫。兩次訪問內存顯然延長了指令的執行周期,降低了執行速度。為了提高存取速度,可以在地址映射機制中增加一個小容量的聯想寄存器,它由告訴緩沖存儲器組成。利用高速緩存存儲當前最頻繁活動的少數活動頁面的頁號,這個高速緩存稱為轉換檢測換成區,或快表。

  • 設計一個頁表應考慮哪些因素。

  • 請敘述頁式存儲管理中地址轉換過程。
    為了實現頁式存儲,系統要提供一對硬件的頁表控制寄存器,即頁表始址寄存器和頁表長度寄存器,另外還需要高速緩沖存儲器。
    物理地址=物理頁號*塊長+頁內地址

  • 1

  • 頁式存儲管理系統中程序的地址空間是一維的還是二維的?請說明理由。

  • FIFO算法與時鐘頁面置換算法有何聯系?

  • 簡述什么是覆蓋技術,什么是交換技術,他們之間的區別是什么?
    覆蓋技術是指,一個程序的若干程序段,或幾個程序的某些部分共享某一個存儲空間。去改即使的實現是吧程序劃分成若干功能上相對獨立的程序段,按照子很的邏輯結構使那些不會同時執行的程序段共享同一塊內存區域。
    交換技術,又稱對換技術。是進程在內存與外存之間的動態調度,是由操作系統控制的。
    同覆蓋技術一樣,交換技術也是利用外存來邏輯地擴充內存,它的主要特點是,打破了一個程序一個進入內存邊一直運行到結束的限制。
    與覆蓋技術相比,交換技術不要求用戶給出程序段之間的邏輯結構,對用戶而言是透明的。而且交換可以發生在不同的進程和程序之間,而覆蓋發生的同一進程或程序內部,而且只能覆蓋那些與覆蓋段無關的程序段。因此交換技術比覆蓋技術更加廣泛地用于現代操作系統。

  • 何謂程序的局部性原理,請舉出三個例子。
    是指程序在執行時呈現出局部性規律,即在一段時間內,整個程序的執行僅限于程序中的某一部分。相應地,執行所訪問的存儲空間也局限于某個內存區域。

  • 虛擬存儲器是什么?為什么要引入虛擬存儲器?
    虛擬存儲器,實際上是為擴大內存容量而采用的一種設計技巧。

  • 敘述虛擬頁式存儲管理方案的基本思想。為了實現虛擬頁式存儲管理,系統必須提供的硬件支持有哪些?
    虛擬頁式存儲管理的思想是,把內存分成大小相等的許多物理頁面,程序中的虛擬地址也進行分頁,頁的大小與物理頁面的大小一致,這樣可把程序信息按頁存儲到物理頁面中。
    支持頁式存儲管理的硬件部件通常稱為:存儲管理部件。

  • 缺頁異常的處理過程是軟硬件配合完成的,請敘述缺頁異常處理過程。
    當發生缺頁異常時,操作系統必須在內存中選擇一個頁面將其移出,以便為即將調入的頁面讓出空間。整個缺頁出苦力過程如下:
    (1)根據當前執行指令中的邏輯地址查詢頁面的有效位,判斷該頁是否存在內存。
    (2)該頁標志為0,形成缺頁異常。保留現場,中斷裝置通過交換PSW讓操作系統的中斷處理程序占用處理器
    (3)操作系統處理缺頁異常,尋找一個空閑的頁面
    (4)若有空閑頁,則把磁盤上讀出的信息裝入該頁面中
    (5)修改頁面及內存分配表,表示該頁已在內存中。
    (6)若內存中午空閑頁,則按某種算法選擇一個頁面,暫時跳出內存。
    (7)恢復現場,重新執行被中斷的指令。

  • 試述缺頁與一般中斷的主要區別。

  • 何謂系統的顛簸現象,為什么會出現這一現象?當系統發生顛簸時,應采取什么措施來加以克服?
    如果剛被調出的頁面又立即調用,因而又要把它裝入,而裝入不就又被選中調出,調出不久又被裝入,如此反復,使調度非常頻繁。這種現象稱為‘抖動’或稱‘顛簸’。
    在虛存中,頁面可能在內存外存中間頻繁地電鍍,有可能出現顛簸。顛簸是因為缺頁率高而引起的。
    采用工作機模型,為每個進程保持一個工作集,通過動態調整,使進程獲得與工作集相等的物理頁面數,可以解決顛簸問題。

  • 什么是工作集?它的作用是什么?
    對于給定的進程訪問序列,從時刻(t-t1)到時刻t之間所訪問頁面的集合,稱為該進程的工作集。工作集是隨時間而變化的。

  • 第七章 文件系統

  • 什么是文件和文件系統?文件系統的功能是什么?
    文件可以被解釋為一組帶標識的、在邏輯上具有完整意義的信息項的序列。
    文件系統,是操作系統中統一管理信息資源的一種軟件。它管理文件的存儲、檢索、更新,提供安全可靠的文件共享和保護手段,并方便用戶使用。
    從用戶的角度看,文件系統負責為用戶建立文件、讀寫文件、修改文件、復制文件和撤銷文件。
    文件系統應具有下述功能:
    (1)統一管理文件的存儲空間,實施存儲空間的分配與回收
    (2)實現文件從名字空間到外存地址空間的映射,即實現文件的按名存取,以對用戶透明的方式管理文件的名字空間
    (3)實現文件信息的共享,并提供文件的保護和保密措施
    (4)向用戶提供一個方便使用的接口
    (5)系統維護及向用戶提供有關的信息
    (6)保持文件系統的執行效率
    (7)提供與I/O的統一接口

  • 文件按用途和性能可分為幾類?
    (1)系統文件:操作系統和各種系統應用程序和數據組成的文件
    (2)庫函數文件
    (3)用戶文件:用戶委托文件系統保存的文件

  • 對于用戶來說,有些系統把設備也看成文件,試問這樣做有什么好處?還會帶來什么問題?

  • 什么是文件的邏輯結構、物理結構?有哪幾種典型的文件邏輯結構、物理結構?這些結構各自有什么特點?
    用戶看到的是經過抽象的文件結構,及文件的邏輯結構。
    文件在實際的存儲空間存儲時的結構,就是文件的物理結構。
    典型的文件邏輯結構有:
    (1)流式文件
    流式文件是有序字符的集合,其長度為該文件所包含的字符個數,所以又稱為字符流文件。
    (2)記錄式文件
    記錄式文件是一組有序記錄的集合。在記錄式文件中,構成文件的基本單位是記錄。可分為,定長記錄文件和不定長記錄文件。
    典型的物理結構有:
    (1)順序結構
    又稱連續結構,把邏輯上連續的文件一次存放在連續編號的物理塊中。
    優點:一旦知道了文件在文件存儲設備上的起始塊號和文件長度,就能很快速地進行讀取。支持順序讀取和隨機讀取
    缺點:文件不能動態地增長
    (2)鏈接結構
    實質是為每個文件構造所使用的磁盤塊的鏈表。使用這種鏈接結構的文件,將邏輯上連續的文件分散存儲在若干不連續的物理塊中。在每個物理塊中都設有一個指針,該指針指向其后續的物理塊。
    優點:存儲碎片問題,迎刃而解,有利于文件的動態擴充,有利于文件插入和刪除,提高了磁盤空間的利用率。
    缺點:存取速度慢,不適于隨機存取文件;磁盤的磁頭移動多,效率相對較低;存在文件可靠性問題;鏈接指針需要占用一定的空間。
    (3)索引結構
    索引結構的文件把每個物理盤塊中的指針字,集中存儲在稱為索引表的數據結構中的內存索引表中。在每個文件相應的目錄條目中包括該文件的索引表地址,而索引表的第i個條目指向文件的第i塊。
    優點:可以滿足文件動態增長的要求,也滿足了文件插入、刪除的要求。索引文件還能充分利用外存空間。
    缺點:會引起較多的尋道次數和尋道時間;索引表本身增加了存儲空間的開銷。
    (4)i節點結構
    是一個多級索引文件結構。基本思想是,給每個文件賦予一張稱為i節點的小表,在這張小表中列出文件屬性和文件中各塊在磁盤上的地址。
    使用i節點的文件結構,不僅適合小文件使用,也可供大型文件使用,靈活性比較強。比一般的多級索引結構占用較少的系統空間。

  • 怎樣確定文件的存取方式?請總結文件的存取方式、文件的物理結構和存儲設備類型之間的關系。
    文件的存取方式主要有:順序存取和隨機存取兩種。選擇哪一種存取方式,即取決于用戶使用文件的方式,也有文件所使用的存儲介質有關系。

  • 文件系統應由哪些部分組成?簡述各部分的主要工作。

  • 請設計一個文件系統的FCB,并說明為何要安排FCB中每一項內容。
    文件控制塊,文件的描述性數據結構,文件控制塊中的信息可以分為:文件存取控制信息、文件結構信息、文件管理信息。
    通常包括:文件名、文件號、用戶名、文件長度、文件地址、文件類型、文件屬性、共享計數、文件的建立日期、保存期限、最后修改日期、最后訪問日期、口令、文件邏輯結構、文件物理結構等等。

  • 文件目錄的作用是什么?為了實現按名存取,文件目錄應包含哪些內容?
    文件目錄的作用是實現按名存取。

  • 多級目錄結構的特點有哪些?建立多級目錄的好處好那些?
    多級目錄結構的優點是便于文件分類,且具有以下特點:
    (1)層次清楚
    (2)解決了文件重名問題
    (3)查找搜索速度快

  • 什么是當前目錄?引入當前目錄的好處是什么?當前目錄實現時要考慮什么問題?
    文件系統向用戶提供了一個當前正在使用的目錄,稱為當前目錄。
    使用當前目錄,使檢索路徑變短,檢索速度提高。

  • 磁盤空間的管理辦法有幾種?
    (1)位示圖
    基本思想是,利用一串二進制位的值來反映磁盤空間的分配使用情況。
    (2)空閑塊表
    專門為空閑塊建立的一張表,該表記錄外存儲器全部空閑的物理塊:包括每個空閑塊的第一個空閑物理塊號和該空閑塊中空閑的物理塊數。
    (3)空閑塊鏈表
    將外存儲器中所有的空閑物理塊連成一個鏈表,用一個空閑塊首指針指向第一個空閑塊,隨后的空閑塊中都含有一個指向下一空閑塊的指針,最后一塊的指針為空,表示鏈尾,這樣就構成了一個空閑塊鏈表。
    (4)空閑塊成組鏈接法
    對鏈接表的一種改進方案,將n個空閑塊的地址存儲在第一個空閑塊中。

  • 文件分配所用的位示圖應該保存在哪里,請說明原因。
    位示圖對空間分配情況的描述能力強。一個二進制位就描述了一個物理塊的狀態。另外,位示圖占用空間較小,因此可以復制到內存,是查找即方便有快速。位示圖適用于各種文件物理結構的文件系統中。

  • 系統打開文件表和用戶打開文件表的作用是什么?為什么將他們分來處理?
    系統打開文件表用戶保存一打開文件的文件控制塊,通常放在內存。表中含有文件控制塊、共享計數、修改標志。
    每個進程都有一個用戶打開文件表。表中含有文件描述符、打開方式、讀寫指針,系統打開文件表入口。

  • 文件系統提供的主要文件操作有哪些?
    (1)建立文件 create(文件名,訪問權限,(最大長度))
    (2)打開文件 open(文件路徑名,打開方式)
    (3)讀文件 read(文件名,(文件內位置),要讀的長度,內存目的地址)
    (4)寫文件 write(文件名,記錄鍵,內存位置)
    (5)關閉文件 close(文件名)
    (6)刪除文件 delete(文件名)
    (7)指針定位 seek(fd, 新指針的位置)

  • 文件系統中建立、打開和關閉操作的主要目的是什么?建立和打開文件的主要區別是什么?能不能只用一個命令,完成文件的建立和打開操作?
    建立文件的實質是建立文件的文件控制塊FCB,并建立必要的存儲空間,分配空的FCB,從而建立起系統與文件的聯系。
    打開文件,是使用文件的第一步,任何一個文件在使用前都要先打開,即把文件控制塊FCB送入內存。
    刪除文件時,系統根據用戶提供的文件名和文件描述符,檢查此次刪除的合法性,若合法則收回文件所占用的文件控制塊及物理塊等資源。

  • 文件系統能允許用戶去關閉一個不是自己打開或建立的文件嗎?

  • 什么是文件共享?可通過什么辦法來實現用戶之間共享某個文件?
    文件的共享是指一個文件可以允許多個用戶共同使用。
    在多級目錄結構中,連接法是常用的實現文件共享計數。對文件共享的連接法可以通過兩種連接方式實現:一直是允許目錄項連接到任意表示文件目錄的節點上;另一種只允許連接到表示普通文件的節點上。

  • 在設計文件系統的安全性時,應考慮哪些方面的情況?
    (1)災禍
    (2)硬件或軟件故障
    (3)人為的出錯

  • 什么是文件保護?什么是文件保密?
    文件保護是保護文件不被破壞。常用的文件保護方式有:建立副本、定時轉儲。
    文件保密是防止不經文件擁有者授權而竊取文件。文件的保密措施有:隱藏文件目錄、設置口令、使用密碼以及病毒防范。

  • 計算機用戶身份鑒別與驗證通常有哪幾種方式?

  • 常用的文件安全控制的實現方法有哪些?

  • 第八章 I/O設備管理

  • 設備管理的目標和功能是什么?
    目標是:使用戶和應用程序開發人員能夠方便地使用輸入輸出設備。
    功能能有:解決I/O設備的性能和CPU性能不匹配矛盾的問題;實現對I/O設備的統一管理;保證用戶對I/O設備的使用必須是安全的。

  • 為什么提出設備的獨立性概念?實現設備獨立性的好處有什么?
    除了直接與設備打交道的低層軟件外,其他部分的軟件并不依賴于硬件。I/O軟件獨立于設備,可以提高設備管理軟件的設計效率。

  • 什么是設備的靜態分配方式?什么是設備的動態分配方式?各有什么特點?、
    靜態分配方式是在用戶作業開始執行前,由系統一次分配該作業所要求的的全部設備、控制器。是安全分配方式,不會出現死鎖,但設備的使用效率低。
    動態分配方式是在進程執行過程中根據執行需要進行。有利于提高設備的使用效率,但如果分配算法不當,則可能造成死鎖。

  • 處理器與外部設備之間有幾種I/O控制方式?他們各自有什么特點?
    (1)程序控制方式 PIO
    由用戶進程直接控制處理器或內存與外圍設備之間進行信息傳送的方式
    優點:處理器與外設的操作能通過狀態信息得到同步,且硬件結構比較簡單
    缺點:處理器效率較低,傳輸完全在處理器的控制之下,對外部出現的異常事件無實時響應的能力。
    (2)中斷控制方式
    (3)DMA控制方式(直接訪問內存)
    (4)通道控制方式

  • 啟動磁盤執行一個I/O操作話花費的時間由哪幾部分組成?
    尋找時間——磁頭在移動臂帶動下移動到制定柱面所花費的時間
    延遲時間——指定扇區旋轉到磁頭下的時間
    傳送時間——由磁頭進行讀寫完成信息傳送的時間

  • 什么是移臂調度?什么旋轉調度?各有哪些主要的調度算法?
    根據訪問者制定的柱面位置來決定執行次序的調度,稱為移臂調度。
    主要算法有:先來先服務、最短尋找時間優先、電梯調度、單向掃描調度
    根據延遲時間來決定執行次序的調度,稱為旋轉調度。

  • 為什么引入通道?有哪幾類通道?他們各自的特點是什么?
    通道是一個特殊功能的處理器,他有自己的指令和程序,可以實現對外圍設備的統一管理和外圍設備與內存之間的數據傳送。
    根據信息交換方式的不同,一個系統中可以設立三種類型的通道:選擇通道,數組多路通道、字節多路通道。

  • 解釋通道命令、通道程序、地址字和通道狀態字

  • 中央處理器與通道之間是怎樣配合工作的?

  • 設備驅動程序的主要功能是什么?
    設備驅動程序的最突出的特點是他與I/O設備的硬件結構密切聯系。是操作系統低層中唯一知道各種輸入輸出設備的控制器細節以及用途的部分。

  • 請說明SPOOLing技術的基本思想,SPOOLing系統由哪些部分組成?簡述他們的功能。
    SPOOLing系統主要包括輸入程序模塊、輸出程序模塊、作業調度模塊。

  • SPOOLing系統中輸入井和輸出井的作用是什么?
    輸入井:在作業自行前就利用慢速設備將作業預先輸入到后援存儲器中去,作業進入內存運行后,使用數據時,直接從輸入井取出。
    輸出井:作業執行時不必啟動外部設備輸出數據,只需將這些數據寫入輸出井中去,稱為緩輸出。

  • 實現虛擬設備的主要條件是什么?

  • 為什么說SPOOLing技術實現了虛擬設備?SPOOLing系統為什么能提高獨占設備的利用率?

  • 在什么條件下要使用緩沖技術?
    為了解決I/O設備與處理器速度不匹配的問題。

  • 為什么相比單緩沖。采用雙緩沖可以提高I/O的性能?
    單緩沖是在I/O設備與處理器間設置一個緩沖區,不能實現I/O設備與I/O設備之間的并行操作。設置雙緩沖區可以解決兩臺I/O設備之間的并行操作問題。

  • DMA技術和通道技術的相同點和不通點是什么?

  • 總結

    以上是生活随笔為你收集整理的操作系统(02326)课后习题答案的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。