




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、四級數據庫工程師常見疑難題型解析作者:老胡少俠寫在前面:也許,對于多年考試、考試多年的學子來說,沒有考試的壓力, 提不起學習的動力!大學畢業十年了,能促使自己重新打開書本,認 真閱讀當年熟悉現在陌生的專業書籍,也許只有那花了票子報了名參 加的考試吧!我們大多數人,都是普通人一枚,需要通過勤奮的學習,才能獲 取一些知識;我們大多數人,都為了考試而考試,考試前刻苦學習的 知識考過后很快就忘了;我們大多數人,都非常希望花一點點時間, 就掌握了考試的重點與難點,然后通過考試拿證在手。本篇學習小結,針對的閱讀群體,當然不是專業學者,也肯定不 是學霸學精,只是為大多數的普通學子提供一些辛苦整理的資料,讓我
2、們知其然知其所以然;本篇學習小結,是按照筆者自己學習過程中 遇到難題的順序總結的,沒有區分是數據庫類還是操作系統類題目, 比較雜亂,讀者可以自己下載后重新組織;本篇學習小結,是針對常 考、常錯、比較難的十三種類型(共十二頁)的題目,參考網上不同 的解題方法,選擇比較容易理解和掌握的解題方法, 整理在題目的解 析里,是筆者辛苦的結晶,望珍惜、望學好、望通過!PS:考試資料只需要購買未來教育的計算機等級考試題庫,無論你是專業還是非專業的,因為考試題目就是題庫中原題,如果你認真做完18套真題,即1440 道題目,通過考試完全沒問題。如果記憶力很好的話,甚至能拿優秀四級數據庫工程師常見疑難題型解析作者
3、:老胡少俠1、在某頁式存儲管理系統中, 頁面大小為1KB,物理內存為256MB,進程地址空間為 512MB, 只考慮一級頁表,則頁表長度 (頁表項個數)為:解析:進程地址空間即邏輯地址空間為512MB=2A29B ,頁面大小為1KB即頁內地址空間為2A10B,那么頁號空間即頁表長度為:2A (29-10) =2A19。這里物理內存 256MB是干擾項。擴展:簡單頁式存儲管理方案中,若地址用m個二進制位表示,頁內地址部分占用n個二進制位,則最大允許進程有多少個頁面:m-n位用于描述頁面編號,所以最大允許進程有2A(m-n)個頁面。邏輯地址m位:頁號m-n位頁內地址n位2、有一個虛擬頁式存儲系統,
4、采用最近最少使用( LRU)頁面置換算法,系統分給每個進 程3頁內存,其中一頁用來存放程序和變量i,j (不作他用)。假設一個頁面可以存放 P個整數變量。某進程程序如下: 代碼一(按行初始化訪問):代碼二(按列初始化訪問):VAR A:ARRAY1.M, 1.N OF integer; VAR A:ARRAY1.M, 1.N OF integer;i,j:integer;i,j:integer;FOR i:=1 to M DOFOR j:=1 to N DOFOR j:=1 to N DOFOR i:=1 to M DOAi,j:=0;Ai,j:=0;設變量i,j放在程序頁面中,初始時,程序及
5、變量i,j已在內存,其余兩頁為空。矩陣 A按行序存放。試問當程序執行完后,共缺頁多少次? 解析:上述代碼的區別在于,代碼一是按行訪問,代碼二是按列訪問,但矩陣是按行序存放。假設頁面總量 P=300,列數N=300,行數M=200,計算公式如下:當采取代碼一的訪問方式,存放方式與訪問方式相同,按行存放一頁可存儲(P+ N)行,按行訪問 M行,第一行缺頁一次,第(P+ N) +1行缺頁一次,即缺頁 M+ (P+N) 次,則題設中缺頁 200次。當采取代碼二的訪問方式,存放方式與訪問方式不同,按行存放一頁可存儲(P+ N)行,按列訪問MX N個列元素,第一列第一行缺頁一次,第一列第(P+ N) +1
6、行缺頁一次,即缺頁 MXN+ (P+N),則缺頁 300*200次。如下是按列訪問的圖示例子:123451 OOOOO2 000003 OOOOO4 OOOOO5 000006 OOOOO678A:ARRAY1.6, 1.8,每一頁存放 16個整數變量O O O 一頁可以存放兩行,當按列訪問 A1,1時缺頁,O O O A2,1不缺頁,A3,1缺頁,A4,1不缺頁,O O O A5,1缺頁,A6,1不缺頁,共缺頁三次。O O O 以此類推,每一列都缺頁三次,共計缺頁8*3次。O O O 即 MXN+ (P+N) =6X8+ ( 16 + 8) =24 次12341oooo2OOOO3 oooo
7、4 oooo5 00006 ooooA:ARRAY1.6, 1.4,每一頁存放 12個整數變量一頁可以存放三行,當按列訪問A1,1時缺頁,A2,1不缺頁,A3,1不缺頁,A4,1缺頁,A5,1不缺頁,A6,1不缺頁,共缺頁二次。以此類推,每一列都缺頁二次,共計缺頁4*2、次。即 MXN+ (P+N) =6X4+ (12 + 4) =8 次3、假設某計算機系統的主存大小為256KB,在某一時刻主存白使用情況如表 3-3所示。表3-3某一時刻主存的使用情況起始地址OKB20KB50KB90 KB100KB105即135KB160KB175KB195KB220KBtt態已用未用已用已用未用已用未用已
8、用未用未用已用容量20KB30KB40KB10KB5KB30KB25KB15KB20KB25KB36KB去3T分配后的主存情況起始地址0KB20KB40KB50 KB90KB100KB105KB135KB14 目 KE160KB175KB195KB200KB220KB狀態已用已用未用已用已用未用已用已用未用已用未用已用未用已用容量20KB20KB10KB40KB10KE5KB30KB10KB15KB15KB20KB5KE20KB36KE此時,若進程順序請求 20KB、10KB和5KB的存儲空間,系統采用 算法為進程依次 分配主存,則分配后的主存情況如表3-4所示。解析:首先,理解最差適配、最佳
9、適配、首次適配、下次適配算法:最差適配,從全部空閑區中找出能滿足作業要求的、且大小最大 的空閑分區,從而使鏈表中的結點大小趨于均勻,適用于請求分配的內存大小范圍較窄的系統。為適應此算法, 空閑分區表(空閑區鏈)中的空閑分區要按大小 從大到小 進行排序,自表頭開始查找到第一 個滿足要求的自由分區分配。該算法保留小的空閑區,盡量減少小的碎片產生。最佳適配,從全部空閑區中找出能滿足作業要求的、且大小最小 的空閑分區,這種方法能使碎片盡量小。 為適應此算法,空閑分區表(空閑區鏈)中的空閑分區要按大小從小到大進行排序,自表頭開始查找到第一個滿足要求的自由分區分配。該算法保留大的空閑區, 但造成許多小的空
10、閑區。首次適配(最先適配),從空閑分區表的第一個表目起查找該表,把最先能夠滿足要 求的空閑分區分配給作業,這種方法目的在于減少查找時間。為適應這種算法,空閑分區表(空閑區鏈)中的空閑分區要按 地址由低到高進行排序。該算法優先使用低地址部分空閑區, 在低址空間造成許多小的空閑區,在高地址空間保留大的空閑區。下次適配(臨近適配),其工作方式和首次適配算法相同,不同的是每次 找到合適的空閑的分區時就記住它的位置 ,以便下次就從該位置開始往下查找,而不是每次都像首次適配算法那樣從頭開始查找。 這種算法的總體結果通常要比首次適配算法差。由于它經常會在內存的末尾分配存儲分區,使位于存儲空間末尾的最大分區被
11、撕裂成小的外部碎片,因此必須經常不斷地進行存儲緊湊。在該算法中應采取循環查找方式,即最后上個空閑區的大小仍不能滿足要求時,應再從第一個空閑區開始查找,故又稱為循環造就算法。其次,根據題目中條件,逐步解答此題。分析表 3-3可知:1、空閑區最大的是起始地址為 20KB,容量30KB;2、空閑區最小的是起始地址為100KB,容量5KB;3、低地址部分第一個空閑區是起始地址為20KB,容量30KB。順序請求20KB、10KB和5KB的存儲空間后,分析表 3-4可知:1、起始地址20KB的空閑區被使用,容量 20KB;2、起始地址135KB的空閑區被使用,容量 10KB;3、起始地址195KB的空閑區
12、被使用,容量 5KB;該算法選擇了空閑區最大、低地址部分第一個空閑區分配給存儲空間為20KB的請求進程,排除最佳適配算法的可能; 空閑區滿足10KB請求的低地址部分第一個空閑區是40KB,容量岡I好10KB,表中算法未選擇分配,排除首次適配和下次適配的可能;空閑區大小第二 的是起始地址為135KB和195KB,都被該算法選擇分配給請求進程,所以系統采用的是 最差適配算法。最后,分別采用剩下的三種算法對題目中順序請求20KB、10KB和5KB的存儲空間進行分配如下表:表3-0最優適配起始地址0KB20KB50KB90KB100KB105KB135KB145KB160KB175KB195KB220
13、KB狀態已用未用已用已用已用已用已用未用已用已用未用已用容量20KB30KB40KB10KB5KB30KB10KB15KB15KB20KB25KB36KB表3-1首次適配和下次適配(對本題兩個算法分配結果可以相同)起始地址0KB20KB40KB50KB90KB100KB105KB145KB160KB175KB195KB220KB狀態已用已用已用已用已用已用已用未用已用未用未用已用容量20KB20KB10KB40KB10KB5KB30KB25KB15KB20KB25KB36KB表3-2下次適配的起始位置不一樣,分配結果不一樣,如下:起始 地址0KB20KB50KB90KB100KB105KB13
14、5KB155KB160KB175KB185KB190KB195KB220KB狀態已用未用已用已用未用已用已用未用已用已用已用未用未用已用容量20KB30KB40KB10KB5KB30KB20KB5KB15KB10KB5KB5KB25KB36KB4、在實現文件系統時,可采用“目錄項分解法”加快文件目錄的檢索速度。假設目錄文件存放在磁盤上,每個 磁盤塊為1024B,文件控制塊占32字節(即32B),其中文件名占8B。文件控制塊分解后,第一部分占10B(包括文件名和文件內部號),第二部分占26B(包括文件 內部號和文件其他描述信息 )。假設某一個 目錄文件共有256個文件控制塊,試分別計算采 用目錄
15、項分解法 前和分解法后,查找該目錄文件的某一個文件控制塊的平均訪問磁盤次數。解析:此題是常考題,一定要分清計算的是采用分解法前還是采用分解法后。如題,某一個目錄文件共有256個文件控制塊,每個磁盤塊大小為1024字節,文件控制塊大小為 32字節。首先,采用目錄項分解法前,文件控制塊是一個整體,每個磁盤塊可存放1024+32=32個文件控制塊;對于某一個共有256個文件控制塊的目錄文彳則需要存放在256+32=8個磁盤塊中;查找該目錄文件的某一個文件控制塊,最少訪問一個磁盤塊,最多每個磁盤塊都訪問一次即8次才檢索到,那么平均訪問磁盤次數=(1+8) +2=4.5。其次,采用目錄項分解法后,文件控
16、制塊被分成兩部分,第一部分占10B(包括文件名和文件內部號),一個磁盤塊可存放 102410 702個文件控制塊第一部分;對于某一個共有256個文件控制塊的目錄文件,則第一部分存放在256+ 102咫 個磁盤塊中;查找該目錄文件的某一個文件控制塊,首先查找該文件控制塊的第一部分,最少訪問一個磁盤塊,最多每個磁盤塊都訪問一次即 3次才檢索到,那么查找第一部分的平均訪問磁盤次數=(1+3) + 2=2;然后根據第一部分記錄的文件內部號,需要再訪問一次磁盤,讀取該文件控制塊的第二部分。故查找該目錄文件的某一個文件控制塊的平均訪問磁盤次數=(1+3) +2+1=3次。最后,可總結出計算公式如下:分解前
17、,計算出目錄文件存放在多少個磁盤塊中,設為 N,則平均訪問磁盤次數為: (N+1) + 2 次;分解后,計算出目錄文件第一部分存放在多少個磁盤塊中,設為 M,則平均訪盤次數為: (1+1)+ (M+1)+2 = (M+3) +2 次。備注:何為目錄項分解法?即把 目錄項(文件控制塊)分為兩部分:第一部分為名號目錄項,包含文件名以及相應的文 件內部號;第二部分為基本目錄項,包含了除文件名外文件控制塊的其他全部信息。目錄文件也分為名號目錄文件和基 本目錄文件。查找一個目錄項就分成兩步:首先訪問名號目錄文件,根據文件名查找相應的文件內部號;然后訪問基本目錄文件,根據文件內部號,可直接計算出 相應基本
18、目錄項所在基本目錄文件中的相對位置和物理 位置,并將它直接讀 入內存。目錄項分解法的優點是提高了文件目錄檢索的速度。5、在一個采用三級索引結構的 UNIX文件系統中,假設物理塊大小為1KB,用32位表示一 個物理塊號。主索引表含有 13個塊地址指針,其中前 10個直接指向盤塊號,第 11個指向 一級索引表,第12個指向二級索引表, 第13個指向三級索引表, 那么,一個文件最大可有 多少塊?解析:題目中主索引表有13個塊地址指針,前10個索引項直接存放物理塊號(直接尋址),最多尋址10個物理塊;第11個、12個、13個塊地址指針指向的也是物理塊,只不過物理塊里存放的是索引表, 說明一級索引表、二
19、級索引表、三級索引表的大小為物理塊大小1KB;而一個物理塊號用 32位表示,即在索引表中存放的空間大小為4B; 一級索引表可以存放多少個物理塊號,即可以尋址多少個物理塊(一次間接尋址),即1KB+ 4B=256個;二級索引表可存放多少個物理塊號(二次間接尋址),即256X 256個;三級索引表可以存放多少個物理塊號(三次間接尋址),即256X 256X256個。那么,一個文件最大可以有:(10+256+256X256+256X 256X 256)塊。擴展:同類題型,另一種表述方法如下:某文件系統采用 UNIX三級索引結構,I節點中包含13個地址項,其中0-9項為直接地址,10為一次間接索引項,
20、11為二次間接索引項,12為三級間接索引項。若磁盤塊大小為4096B, 地址項占用4B,則該文件系統中文件的最大尺寸不能超過下列哪項數值?答案:(10+1024+1024X 1024+1024X 1024X 1024) X 4096B備注:UNIX文件系統采用多級索引結構,每個文件的索引表為13個索引項,每項2個字節。一級文件索引(直接索引)結構中:在文件目錄表項中有一組表項用于索引,每一個表項登記的是邏輯記錄所在的磁盤 塊號。邏輯記錄與磁盤塊號的大小相等,都為 512B。二級文件索引(一級間接索引)結構中:文件目錄中有一組表項,其內容登記的是第一級索引表塊的塊號。第一級索引 表塊中的索引表登
21、記的是文件邏輯記錄所在的磁盤塊號。三級文件索引(二級間接索引)結構中:文件目錄項中有一組表項,其內容登記的是第二級索引表塊的塊號。第二級索 引表塊中的索引表項登記的是第一級索引表塊的塊號,第一級索引表項中登記的是文件邏輯記錄所在的磁盤塊號。6、 某計算機系統中共有 3個進程P1、P2和P3, 4類資源ri、r2、r3和r4。其中ri和r3 每類資源只有1個實例,r2資源有2個實例,r4有3個實例。當前的資源分配狀態如下: E=<P1, r1>, <P2, r3>, <r2, P1>, <r1, P2>, <r2, P2>, <r
22、3, P3>若進程P3申請一個r2類資源,則系統可能會發生下列哪一種現象?A.死鎖 B.無死鎖 C活鎖 D.饑餓解析:將題目中的資源分配狀態圖標上有向箭頭,如下:紅色箭頭表示申請資源等待分配,綠色箭頭表示已經分配等待釋放。通過觀察上圖,發現存在兩條回路 p1->r1->p2->r3->p3->r2->p1、p2->r3->p3->r2->p2 ,因此系統可能會發生 死鎖現象。擴展:某操作系統的當前資源分配狀態如下表所示:進程最大資源需求已分配資源數量待分配資源數量R1R2R3R1R2R3R1R2R3P1753010743P232
23、2200122P3902302600P4222211011P5433002431假設當前系統可用資源R1、R2和R3的數量為(3, 3, 2),且該系統目前處于安全狀態,那么下列哪些是安全序列?(ACDE)A.P2P4P1P5P3 B.P4P5P3P1P2 C.P2P5P4P1P3 D.P4P2P1P3P5 E.P2P4P3P5P1常規思路:比較每一次當前進程運行結束后的可用資源數是否滿足下一個進程的運行資源需求。如:B項P4P5運行結束后,可用資源數為(5, 4, 5),準備分配給P3, P3當前資源 需求量為(6, 0, 0),則發現R1資源不足以分配給 P3,因此B項不是安全序列。快速排
24、除:在表尾部加上一列待分配資源數量, 可以判斷當前系統可用資源, 只能分配給 進程P2或P4,如分配給P4運行結束后,則可用資源擴大為( 5, 4, 3),只能分配給進程 P2或P5,如分配給P5運行結束后,則可用資源擴大為( 5, 4, 5),只能分配給進程 P2。7、有如下C語言程序void * th_f(void * arg) (printf("Hello World");pthread_yield(0);int main(void)(pthread_t tid;int st;st = pthread_create(&tid, NULL, th_f, NULL
25、); 創建線程后,運行該線程,線程名為th_f。if(st=0)printf("Oops, I can not createthreadn");exit(NULL);針對上述程序,下列敘述中哪一個是正確的?解析:程序中pthread_yield(0)表示線程th_f運行后主動釋放CPU給其他線程。其他函數描述如下:pthread_exit(0):表示線程th_f運行后主動退出;程序運行中最多存在2個線程。pthread_join(2):表示線程th_f運行后等待一個特定的線程退出;沒有函數調用,表示線程th_f運行后退出。8、對于如下C語言程序 int main()(pri
26、ntf("Hello World'n");fork();fork(); / 再加上一行 fork();printf("Hello Worldn"); 在UNIX操作系統中正確編譯鏈接后,其正確的運行結果為A.共打印出2行Hello WorldB.共打印出3行Hello WorldC.共打印出4行Hello WorldD.共打印出5行Hello World答案:D解析:程序中fork()函數,若成功調用一次則返回兩個值,子進程返回 0,父進程返回子進 程標記;若出錯,返回-1。在創建子進程之前輸出一行 Hello World ,假設程序正確運行并創
27、建子進程成功,fork()函數兩次調用將有四個進程,故輸出 2X2=4行Hello World ,共計打印 出5行Hello World。如果fork()函數三次調用,也就是再加上一行fork();,那么將創建 2X2x 2=8個進程,共打印出9行Hello World。擴展1:于如下C語言程序int main()(pid_t pid;int a=1;pid = fork();if(pid=0)printf("This is the child process, x=%dn", +a);elseprintf("This is the parent process,
28、 x=%dn", -a);在UNIX操作系統中正確編譯鏈接后,其正確的運行結果是This is the child process,a=2This is the parent process,a=0擴展2:于如下C語言程序int main()(int i;for(i=0;i<3;i+)( fork(); Printf( " Hello Worldn " ) 在UNIX操作系統中正確編譯鏈接后,其運行結果為:共打印出14行Hello World。詳解:第一次調用時,i=0,父進程A,創建子進程B,都執行一次打印,輸出兩行Hello World ; 隨后i+,
29、i=1,父進程A再次創建子進程 C,子進程B創建其子進程 D,都執行一次打印, 輸出四行Hello World ;隨后i=2,父進程A再次創建子進程 E,子進程B創建其子進程 F, 子進程C創建其子進程 G,子進程D創建其子進程H,都執行一次打印,輸出八行Hello World ; 共打印出 2+4+8=14 行 Hello World。擴展3:某一單核處理機的計算機系統中共有20個進程,那么處于運行狀態的進程最多有個,最少有 個;處于就緒狀態的進程最多有個,最少有 個;處于阻塞狀態的進程最多有 個,最少有 個;這些進程是運行的。解析:單核處理機的計算機系統中,處于運行狀態的進程 最多有1個,
30、最少有0個;處于就緒狀態的進程,最多有19個,最少有0個;處于阻塞狀態的進程,最多有20個,最少有0 個;這些進程是并發運行的。9、下列關于函數依賴的敘述中,哪一條是錯誤的()A.若X- Y, X- Z,則X- YZ (合并規則)B.若 XYf Z,則 X一Z, Y 一ZC.若X-Y, Y-Z,則XfZ (傳遞律)D.若X- Y,Y' e Y,則X- Y'(分解規則)答案:B解析:Armstrong 公理:設U是關系模式 R的屬性集,F是R上成立的只涉及 U中屬性的函數依賴集。函數依賴 的推理規則有以下三條:自反律:若屬性集Y包含于屬性集 X,屬性集X包含于U,則 XY在R上成
31、立。(此處X-Y 是平凡函數依賴)增廣律:若 XY在R上成立,且屬性集 Z包含于屬性集U,則XZYZ在R上成立。傳遞律:若 XfY和YfZ在R上成立,則 X 一Z在R上成立。推論:合并規則:若 X-Y, XfZ同時在R上成立,則 XfYZ在R上也成立。分解規則:若 XfW在R上成立,且屬性集 Z包含于 W,則XfZ在R上也成立。偽傳遞規則:若 X-Y在R上成立,且 WY>Z ,則XW>Z 。擴展1:下列關于部分函數依賴的敘述中,哪一條是正確的()A.若 XY,且存在屬性集 Z, Zn Y名,XZ,則稱Y對X部分函數依賴B.若X Y,且存在屬性集 Z, Zn Y#?, X Z,則稱Y
32、對X部分函數依賴C.若XfY,且存在X的真子集X', X' - Y,則稱Y對X部分函數依賴D.若 X Y,且又于X的任何真子集 X',都有X' - Y,則稱Y對X部分函數依賴答案:C備注:術語(1)若XfY,則X稱作決定因素(Determinant )(2)若 X-Y, Yf X,稱作 X<->Y。(3)若Y不函數依賴于X,稱作X -/-> Y 。(4)X -Y,若Y不包含X,則稱X-Y為非平凡的函數依賴。正常討論的都是非平凡的函數依賴。(5)X -Y,若丫包含X,則稱X-Y為平凡的函數依賴。(6)完全函數依賴(full functional
33、dependency) :在R(U)中,設X、丫是關系模式R (U)中不同的屬性子集,若 存在X-Y,且不存在X的任何真子集X',使得X' fY,則稱Y完全函數依賴(full functional dependency ) 于X。 記作 X-F->Y 。(7)部分函數依賴:在關系模式 R (U)中,X、丫是關系模式R (U)中不同的屬性子集,若 X-Y成立,如果X中 存在任何真子集X,而且有X-Y也成立,則稱Y對X是部分函數依賴,記作:X-P->Y o(8)設R是關系模式,U是其屬性集,K包含于U。若K完全函數確定U,則稱K是R的候選鍵(又叫候選關鍵字, 候選碼)。
34、包含在任意候選鍵內的屬性稱為 鍵屬性(又叫主屬性),不是鍵屬性的屬性稱為非鍵屬性(又叫非主屬性)。 顯然,候選鍵可以唯一標識關系的元組。候選鍵可能不唯一,通常指定一個候選鍵作為識別元組的主鍵。擴展2:設U為所有屬性,X, Y Z為屬性集,Z=U- X Y。下列關于函數依賴和多值依賴 的敘述中,哪些是正確的?A.若 X丫則X一一 Y (多值依賴的特殊情況)B.若 A一丫貝U X- YC.若X-Y Y? 丫則X- Y (函數依賴之分解規則)D.若 A-Y Y? 丫則 X一一 Y'E.若X一一 Y,則X- Z (對稱性)答案:ACE備注:多值依賴的定義:設R(U)是一個屬性集合 U上的一個關
35、系模式,X, Y和Z是U的子集,并且Z=U-X-Y多值依 賴X->->Y成立當且僅當對 R的任一個關系r, r在(X,Z比的每個值應一組 Y的值,這組值 僅僅決定于X值而與Z值無關。函數依賴是多值依賴的特殊情況。多值依賴的性質:若X一一 Y,則 X一一 Z;多值依賴對稱性若X-Y,則X一一 Y;說明函數依賴是多值依賴的特殊情況10、若關系模式R中沒有非主屬性,則()A. R肯定屬于2NF, (1 R不一定屬于 3NFB. R肯定屬于3NF,但R不一定屬于 BCNFC. R肯定屬于BCNF, (1 R不一定屬于4NFD. R肯定屬于4NF解析:答案選Co1NF:關系R的屬性值為不可分
36、的原子值;即要求屬性不可再分解。2NF:滿足1NF,消除非主屬性對候選碼的部分函數依賴;即要求記錄有惟一標識。3NF:滿足2NF,消除非主屬性對候選碼的傳遞函數依賴;即要求字段沒有冗余。BCNF:滿足3NF,消除每個屬性對候選碼的傳遞函數依賴;即主屬性不依賴于主屬性。(當只檢查非主屬性時,BCNF就成了第三范式。)4NF:滿足BCNF,消除非平凡且非函數依賴的多值依賴;即要求把同一表內的多對多關系 刪除。級別特點無損分解保持函數依賴1NF屬性值是原子值2NF消除了非主屬性對碼的部分函數依賴能達到能達到3NF消除了非主屬性對碼的部分函數傳遞能達到能達到BCNF消除了主屬性對碼的部分和傳遞函數依賴
37、能達到不一定能達到4NF消除了沒有非平凡且非函數依賴的多值依賴能達到不一定能達到5NF消除不是由候選碼所蘊含的連接依賴能達到不一定能達到11、設有關系模式 R (A, B, C, D),根據語義有如下函數依賴集:F=A-C,B8 D,OA。現將關系模式R分解為兩個關系模式 R1 (A,C) ,R2 (A,B,D),那么這個分解() 答案:具有無損連接性,不保持函數依賴。解析:根據充分條件來快速判斷無損分解的判斷:如果 R1AR2是R1或R2的超碼,則R上的分解(R1, R2)是無損分解。保持依賴的判斷:如果F上的每一個函數依賴都在其分解后的某一個關系上成立,則這個分解是保持依賴的。上題中R1A
38、R2=A, A-C,是R1的超碼,具有無損連接性;B D,OA在R2上不成立,因此不保持函數依賴。備注:關系模式分解的無損連接和保持函數依賴兩個特性之間沒有必然的聯系。12、假設磁頭當前位于第 105道,正在向磁道序號增加的方向移動。現有一個磁道訪問請求序列為35, 45, 12, 68, 110, 180, 170, 195,采用SCAN調度(電梯調度)算法得到的磁 道訪問序列是()A. 110, 170, 180, 195, 68, 45, 35, 12B. 110, 68, 45, 35, 12, 170, 180, 195C. 110, 170, 180, 195, 12, 35, 4
39、5, 68D. 12, 35, 45, 68, 110, 170, 180, 195解析:SCAN調度算法即掃描算法,如下圖所示,正在向磁道序號增加的方向移動,訪問序列為110, 170, 180, 195,后向磁道序號減少的方向移動,訪問序列為68, 45, 35, 12 ,因此,選擇答案Ao擴展:上題如果采用SSF(最短尋道優先調度算法、最短尋找時間優先算法)算法,如下圖 所示,首先選擇最近的磁道110,然后基于110,選擇最近的磁道 68,以此類推,訪問序列為下圖中箭頭所示,為 110, 68, 45 , 35, 12, 170, 180, 195備注:常用四種磁盤調度算法先來先服務算法
40、:按訪問請求到達的先后次序服務最短尋找時間優先算法:優先選擇距當前磁頭最近的訪問請求進行服務,主要考慮尋道優先。掃描算法(又稱電梯算法):在磁頭當前移動方向上選擇 與當前磁頭所在磁道距離 最近的請求作 為下一次服務的對象。麋大耳循環掃描算法:在掃描算法的基礎上規定磁頭單向移動來提供服務,回返時直接快速移動 至起始端而不服務任何請求。13、在UNIX文件系統中,若文件 Filel的權限是755,則表示(ABDE)A.文件屬主可執行 FilelB.文件屬主可讀FilelC.同組用戶可寫FilelD.同組用戶可執行 FilelE.其他用戶可讀 Filel解析:R:讀;W:寫;X:執行同組用戶(RWX
41、)101FILE1進行寫操作。其他用戶(RWX)101C選項錯誤。FILE1屬主(RWX)權PM 755111可知:同組用戶和其他用戶均不能對多選題常考知識點總結:1、在計算機系統中,并發進程間由于存在著相互制約關系會產生同步、互斥、死鎖、饑餓問題;并發進程間存在這 相互不感知、相互直接感知(如通信)、相互間接感知(如共享資 源)的問題。2、計算機產生死鎖的原因有兩個:進程資源分配不當,并發進程推進順序不當。 預防死鎖:守護進程:(破壞互斥條件)可剝奪資源:即當某進程新的資源未滿足時,釋放已占有的資源(破壞不可剝奪條件)資源一次性分配:(破壞請求和保持條件)資源有序分配法:系統給每類資源賦予一
42、個編號,每一個進程按編號遞增的順序請求資源,釋放則相反(破壞循環等待條件)-用來解決哲學家進餐問題。避免死鎖:預防死鎖的策略,會嚴重地損害系統性能。因此在避免死鎖時,要施加較弱的限制,從而獲得較滿意的系統性能。由于在避免死鎖的策略中,允許進程動態地申請資源。因而,系統在進行資源分配之前預先計算資源分配的安全性。若此次分配不會導致系統進入不安全狀態,則將資源分配給進程;否則,進程等待。其中最具有代表性的避免死鎖算法是銀行家算法。解除死鎖:當發現有進程死鎖后,便應立即把它從死鎖狀態中解脫出來,常采用的方法有:剝奪資源:從其它進程剝奪足夠數量的資源給死鎖進程,以解除死鎖狀態;撤消進程:可以直接撤消死
43、鎖進程或撤消代價最小的進程,直至有足夠的資源可用,死鎖狀態.消除為止;所謂代價是指優先級、運行代價、進程的重要性和價值等。3、中斷:處理器對系統中或系統外發生的異步事件的響應。中斷事件:即中斷源,引起中斷的事件中斷請求:中斷源通過中斷控制器向處理器發出的請求信號;中斷斷點:發生中斷時正在運行程序的暫停點;中斷處理程序:處理中斷事件的程序;中斷響應:處理器暫停當前程序轉而處理中斷的過程;4、易失性存儲器:主存儲器、高速緩沖存儲器非易失性存儲器: 快閃存儲器、磁盤存儲器、磁帶存儲器5、信息是數據的語義解釋;數據是信息的語法定義。信息是數據的內涵;數據是信息的載體。信息具有特定的語義,而且可以存儲以
44、及加工處理;數據可以表示信息,文字、圖像、聲音 等都是數據的表現形式。信息可以用物理符號表示;數據是描述現實世界的符號記錄。信息是具有社會屬性的資源;信息的價值與信息的準確性、及時性、完整性、可靠性有關;6、數據庫管理系統 DBMSDBMS是實現對數據庫系統中的數據進行有效管理的復雜的系統軟件;DBMS在操作系統的支持下運行;DBMS支持強有力的查詢語言;DBMS支持對于持久存儲的大量數據進行高效存取;備注:無法理解這句話的對錯:DBMS支持以看起來是原子和獨立于其他事務的方式并發地執行的持久的事務。如果多選題考到,不要選這個選項;單選題考到,看其他選項可有明 顯錯誤;總之,這個選項不選就可以
45、了。、7、數據庫事務的ACID特性事務的ACID特性指的是原子性、 一致性、隔離性和持久性。保證事務的原子性是 DBMS的事務管理器中故障恢復機制的責任;保證單個事務的一致性是應用程序員的責任;保證事務的隔離性是DBMS的事務管理器中并發控制部件的責任;保證事務的持久性是 DBMS的事務管理器中故障恢復機制的責任;8、Belady奇異現象,是指采用頁面置換FIFO算法時,如果對一個進程未分配它所要求的全部頁面, 有時就會出現分配的頁面數增多,但缺頁率反而提高的異常現象,這是一個違反直覺的現象。原因是:所使用的FIFO算法不夠好。Thrashing抖動現象,又叫顛簸。如果分配給進程的存儲塊數量小
46、于進程所需要的最小值,進程的運 行將很頻繁地產生缺頁中斷,這種頻率非常高的頁面置換現象稱為抖動。產生原因是:進程的內存量不足,因而分配頁面太少,總是缺頁;頁面置換算法不合理。備注:1)預防內存換頁是出現顛簸現象,可以采用工作集算法。2)內存顛簸的解決方法是:1 .如果是因為運行的程序太多,造成程序無法同時將所有頻繁訪問的頁面調入內存,則要降低多道 程序的數量。2 .如果是因為頁面置換算法不合理,可以修改置換算法來解決這個問題;3 .否則,還剩下兩個辦法:1終止該進程;2增加物理內存容量9、虛擬性是OS的四大特性之一。如果說可以通過多道程序技術將一臺物理CPU虛擬為多臺邏輯CPU ,從而允許多個
47、用戶共享一臺主機, 那么,通過SPOOling技術便可將一臺物理I/O設備虛擬為 多臺邏輯I/O設備,同樣允許多個用戶共享一臺物理 I/O設備。SPOOLing,是Simultaneous Peripheral Operation On-Line (即外部設備聯機并行操作)的縮寫,它是關于慢速 字符設備如何與計算機主機 交換信息的一種技術,通常稱為 假脫機技術”,也稱為假脫機真聯機技術。10、關系模式的一個分解可以做到既具有無損連接性,又保持函數依賴性。兩個特性都具有,則模式分解可以達到3NF,但不一定能達到BCNF。若要求分解具有無損連接性,則模式分解一定可以達到BCNF o若要求分解保持函
48、數依賴,則模式分解可以達到3NF,但不一定能達到BCNF o備注:關系模式分解的無損連接和保持函數依賴兩個特性之間沒有必然的聯系。11、進程控制塊可以分成調度信息和現場信息,調度信息包括進程名、進程號、存儲信息、優先級、當前狀態、資源清單等,供進程調度時參考使用;而 現場信息需要記錄那些可能會 被其他進程改變的寄存器,如 程序狀態字、時鐘信息、界地址寄存器等。12、關系代數等價轉換規則:無序笛卡爾積,自然連接,條件連接滿足交換律、結合律:E1X E2=E2X E1、(E1 X E2) X E3=E1X (E2 X E3);E1? E2=E2 ? E1、(E1? E2) ? E3=E1? (E2
49、 ? E3);E1?f? E2= E2?f?E1、(E1?f?E2)?f?E3=E1 ? f? (E2?f? E3);選擇b運算、選擇b和投影口的混合運算滿足交換律:(rF1 ( b F2 (E) =b F2 ( bF1 (E);<tF (HA1,A2 ,An (E) =HA1,A2 ,An( <r F (E);選擇運算與并、差運算滿足分配律:(tF( E1? E2)=(r F(E1) ? b F(E2);(tF( E1- E2)=(t F(E1)-(tF(E2);笛卡爾積與連接之間的公式:(rF(E1X E2)= E1? f? E2其實,記住幾個特例就可以了,如下備注:集合 A、
50、B,有 A? B=B? A、A? B=B ? A,但 A- BB- A、A + BwB+A。投影運算不滿足交換律,即:n L1(HL2(E) WHL2(IIL1(E);投影運算對交運算不具有分配律,即口 L(E1? E2)nL( E1)? EEL (E2);選擇運算對差運算不具有分配律,即 b F(E1- E2)w b F( E1)- b F (E2);13、設備管理主要任務有緩沖管理、設備分配、設備處理三大功能,通過接口技術為用戶提供一致的系統調用,通過協調技術避免設備沖突,屬于設備分配功能。14、要求進程的邏輯地址與內存存儲區域都是連續的是固定分區和可變分區存儲管理方案,兩者采用了連續分配 策略,并且是以整個程序不分割地直接裝入內存。而頁式、段式、段頁式均采用了事先分割成多個相等大小塊
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 泌尿系結石病人護理
- 湖南單招培訓資料指南
- 江蘇省常州市金壇區2024-2025學年八年級下學期期中地理試卷(含答案)
- 酒店前廳培訓
- 三新改革培訓課件
- 衛生計生監督協管培訓大綱
- 專題08 國際格局(教學設計)-中考歷史二輪復習學歷案+教學設計++測試+背誦清單(部編版)
- 光伏電池產品培訓
- excel數據處理-第三部分統計圖表與公式函數
- 個人委托投資合同書
- 部編版語文三年級下冊第六單元集體備課
- 成人腦室外引流護理-中華護理學會團體 標準
- 職業本科《大學英語》課程標準
- 《陸上風電場工程概算定額》NBT 31010-2019
- 第五章 中國特色社會主義理論體系的形成發展(一)
- 單基因遺傳病的分子生物學檢驗-醫學院課件
- 公務攝影拍攝技巧分享課件
- BS EN ISO 15848-1-2015 工業閥-逸散性排放的測量、試驗和鑒定程序(中文)
- 英阿馬島戰爭
- 診所備案申請表格(衛健委備案)
- 《中暑的預防及處理》PPT課件
評論
0/150
提交評論