freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

中國科學(xué)院大學(xué)操作系統(tǒng)考試思考題答案-wenkub.com

2025-06-25 03:55 本頁面
   

【正文】 b_lock為1說明緩沖塊正與硬盤交互,內(nèi)核會(huì)攔截進(jìn)程對該緩沖塊的操作,以免發(fā)生錯(cuò)誤,交互完成后,置0表明進(jìn)程可以操作該緩沖塊。b_uptodate與b_dirt,是為了解決緩沖塊與數(shù)據(jù)塊的數(shù)據(jù)正確性問題而存在的。同樣,寫操作類似。該進(jìn)程得到自己的頁面,就可以執(zhí)行寫操作。MMU在解析線性地址時(shí),若發(fā)現(xiàn)某個(gè)表項(xiàng)的P位為零,說明沒有對應(yīng)頁面,就會(huì)產(chǎn)生缺頁中斷。這時(shí)產(chǎn)生時(shí)鐘中斷,輪到進(jìn)程2執(zhí)行,進(jìn)程2也執(zhí)行同樣邏輯的程序。最后,用戶進(jìn)程調(diào)用exit退出,釋放程序所占頁面,解除與文件有關(guān)的內(nèi)容,并調(diào)用tell_father給父進(jìn)程發(fā)信號,退出后執(zhí)行調(diào)度,shell進(jìn)程收到用戶進(jìn)程發(fā)送的信號設(shè)置為就緒態(tài),待其執(zhí)行時(shí),釋放掉用戶進(jìn)程task_struct所占用的頁面,解除與task[64]的關(guān)系,這時(shí)用戶進(jìn)程徹底退出。還要解決文件繼承的問題,然后將str1進(jìn)程TSS和LDT掛接在GDT的指定位置,完成這些后,將str1設(shè)為就緒態(tài)。32. 詳細(xì)分析一個(gè)進(jìn)程從創(chuàng)建、加載程序、執(zhí)行、退出的全過程。Linux ,其地址存放在CR3寄存器中,通過線性地址中的“頁目錄項(xiàng)”數(shù)據(jù)及CR3寄存器就可以找到頁目錄表中對應(yīng)的頁目錄項(xiàng),通過該頁目錄項(xiàng)可以找到對應(yīng)的頁表,結(jié)合線性地址中的“頁表項(xiàng)”數(shù)據(jù)就可以找到對應(yīng)的頁表項(xiàng),通過該頁表項(xiàng)可以找到對應(yīng)的物理頁面,最后通過線性地址中的“頁內(nèi)偏移”落實(shí)到實(shí)際的物理地址值。GDT和LDT放在內(nèi)核數(shù)據(jù)區(qū),屬于0特權(quán)級,3特權(quán)級的用戶進(jìn)程無權(quán)訪問修改。答:代碼見P90 get_free_page函數(shù)。由于在內(nèi)核IOPL的初始值為0,且未經(jīng)改變。答: cli指令用于復(fù)位IF標(biāo)志位,其執(zhí)行與CPL(當(dāng)前特權(quán)級)和EFLAGS[IOPL]標(biāo)志位有關(guān)。在創(chuàng)建進(jìn)程1執(zhí)行copy_process中,執(zhí)行copy_mem(nr,p)時(shí),內(nèi)核為進(jìn)程1拷貝了進(jìn)程 0的頁表(160 項(xiàng)),同時(shí)修改了頁表項(xiàng)的屬性為只讀。答:第一次調(diào)用get_free_page函數(shù)申請的空閑頁面用于進(jìn)程1 的task_struct及內(nèi)核棧。轉(zhuǎn)換特權(quán)級時(shí)采用中斷和中斷返回的方式,調(diào)用系統(tǒng)中斷實(shí)現(xiàn)從3到0的特權(quán)級轉(zhuǎn)換,中斷返回時(shí)轉(zhuǎn)換為3特權(quán)級。idt[0],也就是idt的第一項(xiàng)中斷描述符的地址;type是15,dpl(描述符特權(quán)級)是0;addr是中斷服務(wù)程序divide_error(void)的入口地址。圖見P39(注意要畫出7個(gè)頁,參考如下)代碼見P39 最下面23. 用文字和圖說明中斷描述符表是如何初始化的,可以舉例說明(比如:set_trap_gate(0,amp。在sys_pause()中,將當(dāng)前進(jìn)程(進(jìn)程0)的狀態(tài)設(shè)置為TASK_INTERRUPTBLE,然后執(zhí)行schedule(),遍歷task[]數(shù)組,找到唯一的一個(gè)處于TASK_RUNNING的進(jìn)程(進(jìn)程1),然后切換到進(jìn)程1執(zhí)行,即switch_to(1)。代碼見P83頁、P85頁、P86頁。利用硬件進(jìn)行壓棧,可以確保 eip 的值指向正確的指令,以使在中斷返回后,程序能夠繼續(xù)執(zhí)行。導(dǎo)致反復(fù)執(zhí)行,主要是利用了兩個(gè)系統(tǒng)調(diào)用 sys_fork 和 sys_pause 對進(jìn)程狀態(tài)的設(shè)置,以及利用了進(jìn)程調(diào)度機(jī)制。) pause()?!璸state = TASK_RUNNING?!璸 = cs amp?!璸 = eip。奇怪的是,我們在代碼中并沒有看見向后的goto語句,也沒有看到循環(huán)語句,是什么原因?qū)е路磸?fù)執(zhí)行?請說明理由,并給出代碼證據(jù)。(先理解清楚,稍后補(bǔ)充)16. 假設(shè):經(jīng)過一段時(shí)間的運(yùn)行,操作系統(tǒng)中已經(jīng)有5個(gè)進(jìn)程在運(yùn)行,且內(nèi)核分別為進(jìn)程進(jìn)程5分別創(chuàng)建了第一個(gè)頁表,這兩個(gè)頁表在誰的線性地址空間?用圖表示這兩個(gè)頁表在線性地址空間和物理地址空間的映射關(guān)系。代碼如下:INIT_TASK的定義見P68。(因?yàn)樵谶M(jìn)程0未激活之前,使用的是boot階段的user_stack。setup_paging 用于分頁,在該函數(shù)中對 0x0000 和 0x5000 的進(jìn)行了初始化操作。剩余的原因:after_page_tables 中壓入了一些參數(shù),為內(nèi)核進(jìn)入 main 函數(shù)的跳轉(zhuǎn)做準(zhǔn)備。特權(quán)級基于段,這樣當(dāng)段選擇子具有不匹配的特權(quán)級時(shí),按照特權(quán)級規(guī)則判斷是否可以訪問。有了這些基礎(chǔ),操作系統(tǒng)可以把內(nèi)核設(shè)計(jì)成最高特權(quán)級,把用戶進(jìn)程設(shè)計(jì)成最低特權(quán)級。物理地址是由內(nèi)核將線性地址轉(zhuǎn)換而成的,所以操作系統(tǒng)可以訪問任何物理地址,而用戶進(jìn)程只能使用邏輯地址。同時(shí),保護(hù)模式中特權(quán)級的引入對于操作系統(tǒng)內(nèi)核提供了強(qiáng)有力的保護(hù)。調(diào)用線路圖見P42 圖146。9. 為什么不用call,而是用ret“調(diào)用”main函數(shù)?畫出調(diào)用路線圖,給出代碼證據(jù)。打開PE是說明系統(tǒng)處于保護(hù)模式下,如果不打開A20的話,可以訪問的內(nèi)存只能是奇數(shù)1M段,若要真正在保護(hù)模式下工作,必須打開A20,實(shí)現(xiàn)32位尋址。7. 打開A20和打開pe究竟是什么關(guān)系,保護(hù)模式不就是32位的嗎?為什么還要打開A20?有必要嗎?答:有必要。因?yàn)榇藭r(shí)需要由16位實(shí)模式向32位保護(hù)模式轉(zhuǎn)變,即將進(jìn)行實(shí)模式下的中斷向量表和保護(hù)模式下中斷描述符表的交接工作,在保護(hù)模式的中斷機(jī)制尚未完成時(shí)不允許響應(yīng)中斷,以免發(fā)生未知的錯(cuò)誤。答:bootsect首先利用int 0x13中斷分別加載setup程序及system模塊,待bootsect程序的任務(wù)完成之后,執(zhí)行jmpi 0,SETUPSEG由于 bootsect 將 setup 段加載到了 SETUPSEG:0 的地方,在實(shí)模式下,該指令跳轉(zhuǎn)到setup段的第一條指令。3. 為什么BIO
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)教案相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1