【正文】
時,系統(tǒng)必須為它分配相應(yīng)的物理設(shè)備,并在LUT表中建立一個表目,以后進程利用該邏輯設(shè)備名請求I/O操作時,便可從LUT中得到物理設(shè)備名和驅(qū)動程序入口地址。通過它可以將一臺獨占的物理設(shè)備虛擬為多臺邏輯設(shè)備,從而使該物理設(shè)備可被多個進程共享。//文件的物理結(jié)構(gòu),文件操作的系統(tǒng)實現(xiàn),目錄檢索,文件的訪問方式與文件結(jié)構(gòu)之間的關(guān)系。目錄結(jié)構(gòu)單級目錄結(jié)構(gòu);l 兩級目錄結(jié)構(gòu): 一級稱為主文件目錄(MFD),給出用戶名,用戶子目錄所在的物理位置;二級稱為用戶文件目錄(UFD,又稱用戶子目錄),給出該用戶所有文件的FCBl 多級目錄結(jié)構(gòu):當(dāng)前目錄(工作目錄)、絕對路徑、相對路徑;當(dāng)前目錄(current directory):contain most of the files that are of current interest to the process絕對路徑(absolute path):從根目錄開始到指定文件的路徑;相對路徑(relative path):從當(dāng)前目錄出發(fā)到指定文件的路徑。l LRU近似算法a) 附加引用位算法(additional reference bit):每個頁設(shè)置8個附加位,每次引用時右移(丟掉末尾,首位補一或補零,置換出八位數(shù)字最小的那個頁)b) 二次機會算法(second chance):設(shè)置一個附加位,換出附加位是0的,附加位是1的給一次機會,然后置0c) 增強型二次機會算法(enhanced second chance):設(shè)置兩個附加位,一個表示引用一個表示修改。快表(TLBtranslation lookaside buffer)為了提高訪問速度,存放被頻繁訪問的頁面的頁表項。通常采用重定位寄存器,其中放有當(dāng)前正在執(zhí)行的程序在內(nèi)存空間中的起始地址,而地址空間中的代碼在裝入過程中不發(fā)生變化。死鎖產(chǎn)生原因眾多進程競爭有限資源;進程推進順序不合適。 // eat signal ( chopstick[i] )。l 若Pj剛出臨界區(qū),則FLAG[j] = 0,那么Pi的while條件不再滿足,進入臨界區(qū)。amp。(此處還有多處理機的調(diào)度,線程的調(diào)度)CHAPTER 6基本概念臨界區(qū)(critical section):一段代碼,用來修改臨界資源,只能有一個進程處于臨界區(qū)進入?yún)^(qū)(entry section):請求進入臨界區(qū)的程序退出區(qū)(exit section):緊跟著臨界區(qū)后的程序剩余區(qū)(remainder section):剩下的程序解決臨界區(qū)問題的三個要求互斥(Mutual exclusion):保證安全有空讓進(Progress):保證資源利用率有限等待(Bounded waiting):防止饑餓Peterson算法(1) 只能控制兩個進程(2) 程序P0: flag[0] = true。引入目的:提高系統(tǒng)效率,提高資源利用率,減少進程并發(fā)執(zhí)行時所付出的時空開銷,使操作系統(tǒng)有更好的并發(fā)性。CPUscheduling info 包括進程優(yōu)先級,進程隊列指針等調(diào)度信息Memorymanagement info 包括基本寄存器的值,頁表等信息Accounting info 記錄進程運行的時間,使用了多少CPU等IO status info 包括分配給進程的設(shè)備進程與程序的區(qū)別聯(lián)系(1)進程是程序的一次執(zhí)行,是一個動態(tài)的概念;而程序是一組有序的指令, 是一種靜態(tài)的概念。有利于系統(tǒng)維護和可靠。例如,地址空間具有虛擬性,它是由內(nèi)存空間通過劃分段表/頁表技術(shù)轉(zhuǎn)換而來的。并發(fā)與并行不同,并行是指兩個或者多個事件在同一時刻發(fā)生。自動從一個job轉(zhuǎn)移到另一個job。共享資源有互斥共享方式和同時訪問 方式。6.相關(guān)技術(shù)(1)多道程序技術(shù)(multiprogramming)l 定義:當(dāng)CPU正在處理的job需要等到I/O響應(yīng)時,CPU并不會閑置,而是轉(zhuǎn)去處理下一個job,直到之前的job在處理完IO后拿回CPU使用權(quán)。程序(進程)并發(fā)的特點:間斷性\失去了封閉性\不可再現(xiàn)性程序這個靜態(tài)概念已經(jīng)不能如實反映程序活動的這些特征。(3)程序可長期保存,而進程是有生命周期的。(2)內(nèi)核支持線程(kernel thread):是依賴于內(nèi)核的,其創(chuàng)建、撤消和切換都是由內(nèi)核實現(xiàn)的。amp。但turn必然會取0或1中的一個,因此必有一個while滿足條件,故必有一個進程在while循環(huán)中等待。P操作( wait):request a resourceWait(S) {while S = 0 。 管程實現(xiàn)互斥:外部等待隊列。(3)一個已占有資源的進程,若要申請新的資源,必須先放棄已占有的資源,破壞請求保持條件。內(nèi)存為程序分配空間的四種方式(1) 連續(xù)分配方式(contiguous memory allocation)單一連續(xù)分配固定分區(qū)分配:分區(qū)容量和數(shù)目固定不變,大小可不等,每個分區(qū)容納一道作業(yè)可變分區(qū)分配:動態(tài)分區(qū),作業(yè)裝入內(nèi)存時才建立分區(qū)(根據(jù)作業(yè)的大小)//四種動態(tài)分區(qū)分配算法:l 首次適應(yīng)(first fit):allocate the first holel 最佳適應(yīng)(best fit):allocate the smallest holel 最差適應(yīng)(worst fit): allocate the largest holel Next fit: 從剛剛分配出的內(nèi)存開始查找合適的hole分配可重定位分區(qū)分配:重定位寄存器(relocation register)、緊湊技術(shù)(把進程統(tǒng)一移向一邊)(2) 基本分頁存儲管理方式(paging) 分頁引入:動態(tài)分區(qū)方式產(chǎn)生“外碎片”,采用緊湊技術(shù)要付出很大開銷,于是引入了頁式存儲管理。內(nèi)存訪問時間的計算(effective access time)Effective access time = 快表命中率*(快表時+內(nèi)存時)+(1快表命中率)*(快表時+2*內(nèi)存時)(3) 基本分段存儲管理方式(segmentation)硬件實現(xiàn)定義:a memorymanagement scheme that support the user view of memory. A logical address space is a collection of segments. Each has a name and a length.(4) 段頁式存儲管理方式對換技術(shù)(swapping)定義:把主存中暫時不能運行的進程調(diào)出到外存,以便騰出足夠的內(nèi)存空間,再將具備運行條件的進程調(diào)入內(nèi)存??梢允褂霉ぷ骷P?,在掛起一個進程時記錄下工作集,然后resume時先調(diào)入工作集里所有的頁。其基本的內(nèi)容包括文件名、文件的物理地址、文件的邏輯結(jié)構(gòu)、物理結(jié)構(gòu)、文件的長度、存取權(quán)限、文件的建立日期、修改日期及時間、連接計數(shù)文件主標(biāo)識符等。l 降低對CPU的中斷頻率。此時用戶用邏輯設(shè)備名來申請使用某類物理設(shè)備。當(dāng)打印機空閑時,輸出進程將從請求隊列隊首取出一張打印請求表,根據(jù)表中的要求將要打印的數(shù)據(jù)從輸出井傳送到內(nèi)存輸出緩沖區(qū),再由打印機進行打印。拼一個春夏秋冬!贏一個無悔人生!早安!—————獻給所有努力的人.學(xué)習(xí)好