溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

現(xiàn)代操作系統(tǒng)(一)——引論

發(fā)布時(shí)間:2020-07-15 10:27:51 來源:網(wǎng)絡(luò) 閱讀:1247 作者:mazongfei 欄目:系統(tǒng)運(yùn)維
  1. 什么是多道程序設(shè)計(jì)?

多道程序設(shè)計(jì)是將內(nèi)存分幾個(gè)部分,每一部分存放不同的作業(yè),例如:

現(xiàn)代操作系統(tǒng)(一)——引論

當(dāng)一個(gè)作業(yè)等待I/O操作完成時(shí),另一個(gè)作業(yè)可以使用CPU。如果內(nèi)存中可以同時(shí)存放足夠多的作業(yè),則CPU利用率可以接近100%,在內(nèi)存中同時(shí)駐留多個(gè)作業(yè)需要特殊的硬件來對(duì)其進(jìn)行保護(hù),以避免作業(yè)的信息被竊取或受到***。



2.什么是SPOOLing?是否認(rèn)為將來的高級(jí)個(gè)人計(jì)算機(jī)會(huì)把SPOOLing作為標(biāo)準(zhǔn)功能?

當(dāng)一個(gè)作業(yè)運(yùn)行結(jié)束時(shí),操作系統(tǒng)就能將一個(gè)新作業(yè)從磁盤讀出,裝進(jìn)空出來的內(nèi)存區(qū)域運(yùn)行,這種技術(shù)叫做SPOOLing(同時(shí)的外部設(shè)備聯(lián)機(jī)操作)



3.在早期計(jì)算機(jī)中,每個(gè)字節(jié)的讀寫直接由CPU處理(即沒有DMA),對(duì)于多道程序而言這種組織方式有什么含義?


4.系列計(jì)算機(jī)的思想在20世紀(jì)60年代由IBM引入進(jìn)System/360大型機(jī),現(xiàn)在這種思想已經(jīng)消亡了還是繼續(xù)活躍著?


5.緩慢采用GUI的一個(gè)原因是支持它的硬件的成本(高昂)。為了支持25行80列字符的單色文本屏幕應(yīng)該需要多少視頻RAM?對(duì)于1024*768像素24色彩位圖需要多少視頻RAM?在1980年($5/kb)這些RAM的成本是多少?現(xiàn)在它的成本是多少?現(xiàn)在它的成本是多少?


6.在建立一個(gè)操作系統(tǒng)時(shí)有幾個(gè)設(shè)計(jì)目的,例如:資源利用、及時(shí)性、健壯性等。列出兩個(gè)可能互相矛盾的設(shè)計(jì)目的。


7.下面的哪一條指令只能在內(nèi)核態(tài)中使用?

    a)禁止所有的中斷

    b)讀日期-時(shí)間時(shí)鐘

    c)設(shè)置日期-時(shí)間時(shí)鐘

    d)改變存儲(chǔ)器映像


8.考慮一個(gè)有兩個(gè)CPU的系統(tǒng),并且每一個(gè)CPU有兩個(gè)線程,假設(shè)有三個(gè)程序P0,P1,P2,分別以運(yùn)行時(shí)間5ms、10ms、20ms開始。運(yùn)行這些程序需要多少時(shí)間?假設(shè)這三個(gè)程序都是100%限于CPU,在運(yùn)行時(shí)無阻塞,并且一旦設(shè)定就不改變CPU。


9.一臺(tái)計(jì)算機(jī)有一個(gè)四級(jí)流水線,每一級(jí)都花費(fèi)相同的時(shí)間執(zhí)行其工作,即1ns。這臺(tái)機(jī)器每秒可執(zhí)行多少條指令?


10.假設(shè)一個(gè)計(jì)算機(jī)系統(tǒng)有高速緩存、內(nèi)存(RAM)以及磁盤,操作系統(tǒng)用虛擬內(nèi)存。讀取緩存中的一個(gè)詞需要2ns,RAM需要10ns,磁盤需要10ms。如果緩存的命中率是95%,內(nèi)存的是(緩存失效時(shí))99%,讀取一個(gè)詞的平均時(shí)間是多少?


11.一個(gè)校隊(duì)人員注意到一部將要出版的操作系統(tǒng)手稿中有一個(gè)多次出現(xiàn)的拼寫錯(cuò)誤。這本書大致有700頁,每頁50行,一行80個(gè)字符。若把文稿用電子掃描,那么 主副本進(jìn)入【】每個(gè)存儲(chǔ)系統(tǒng)的層次要花費(fèi)多少時(shí)間?對(duì)于內(nèi)存儲(chǔ)方式,考慮所給定的存儲(chǔ)時(shí)間是每次一個(gè)字符,對(duì)于磁盤設(shè)備,假定存取時(shí)間是每次一個(gè)1024字符的盤塊,而對(duì)于磁帶,假設(shè)給定開始時(shí)間后的存取時(shí)間和磁盤存取時(shí)間相同。


12.在用戶程序進(jìn)行一個(gè)系統(tǒng)調(diào)用,以讀寫磁盤文件時(shí),該程序提供指示說明了所需要的文件,一個(gè)指向數(shù)據(jù)緩沖區(qū)的指針以及計(jì)數(shù)。然后,控制權(quán)轉(zhuǎn)給操作系統(tǒng),它調(diào)用相關(guān)的驅(qū)動(dòng)程序,假設(shè)驅(qū)動(dòng)程序啟動(dòng)磁盤并且直到中斷發(fā)生才終止,在從磁盤讀的情況下,調(diào)用者會(huì)被阻塞(因?yàn)槲募袥]有數(shù)據(jù))。在向磁盤寫時(shí)會(huì)發(fā)生什么情況?需要把調(diào)用者阻塞一直等到磁盤傳送完成為止嗎?


13.什么是陷阱指令?在操作系統(tǒng)中解釋它的用途


14.陷阱和中斷的主要差別是什么?


15.在分時(shí)系統(tǒng)中為什么需要進(jìn)程表?在只有一個(gè)進(jìn)程存在的個(gè)人計(jì)算機(jī)系統(tǒng)中,該進(jìn)程控制整個(gè)機(jī)器直到進(jìn)程結(jié)束,這種機(jī)器也需要進(jìn)程表嗎?


16.說明有沒有理由要在一個(gè)非空的目錄中安裝一個(gè)文件系統(tǒng)?如果要這么做,如何做?


17.在一個(gè)操作系統(tǒng)中系統(tǒng)調(diào)用的目的是什么?


18.對(duì)于下列系統(tǒng)調(diào)用,給出引起失敗的條件:fork、exec以及unlink。


19.在count=write(fd,buffer,nbytes);調(diào)用中,能在count中而不是nbytes中返回值嗎?如果能,為什么?


20.有一個(gè)文件,其文件描述符是fd,內(nèi)含下列字節(jié)序列:3,1,4,1,5,9,2,6,5,3,5.有如下系統(tǒng)調(diào)用:

lseek(fd,3,SEEK_SET);

read(fd,&buffer,4);

其中l(wèi)seek調(diào)用尋找文件中的字節(jié)3.在讀操作完成之后,buffer中的內(nèi)容是什么?


21.假設(shè)一個(gè)10MB的文件存在磁盤連續(xù)扇區(qū)的同一個(gè)軌道上(軌道號(hào):50)。磁盤的磁頭臂此時(shí)位于第100號(hào)軌道,要想從磁盤上找回這個(gè)文件,需要多長時(shí)間?假設(shè)磁頭臂從一個(gè)柱面移動(dòng)到下一個(gè)柱面需要1ms,當(dāng)文件的開始部分存儲(chǔ)在的扇區(qū)旋轉(zhuǎn)到磁頭下需要5ms,并且讀的速率是100MB/s。


22.塊特殊文件和字符特殊文件的基本差別是什么?


23.在圖1-17的例子中庫調(diào)用稱為read,而系統(tǒng)調(diào)用自身稱為read。這兩者都有相同的名字是正常的嗎?如果不是,哪一個(gè)更重要?


24.在分布式系統(tǒng)中,客戶機(jī)-服務(wù)器模式很普遍。這種模式能用在單個(gè)計(jì)算機(jī)的系統(tǒng)中嗎?


25.對(duì)程序員而言,系統(tǒng)調(diào)用就像對(duì)其他庫過程的調(diào)用一樣,有無必要讓程序員了解哪一個(gè)庫過程導(dǎo)致了系統(tǒng)調(diào)用?在什么情形下,為什么?


26.圖1-23說明有一批UNIX的系統(tǒng)調(diào)用沒有與之相等價(jià)的Win32 API。對(duì)于所列出的每一個(gè)沒有Win32等價(jià)的調(diào)用,若把一個(gè)UNIX程序轉(zhuǎn)換到Windows下運(yùn)行,會(huì)有什么后果?


27.可移植的操作系統(tǒng)是能從一個(gè)系統(tǒng)體系結(jié)構(gòu)到另一個(gè)體系結(jié)構(gòu)的移動(dòng)不需要任何修改的操作系統(tǒng)。為什么建立一個(gè)完全可移植性的操作系統(tǒng)是不可行的,描述一下在設(shè)計(jì)一個(gè)高度可移植的操作系統(tǒng)時(shí)所設(shè)計(jì)的高級(jí)的兩層是什么樣的。


28.請(qǐng)解釋在建立基于微內(nèi)核的操作系統(tǒng)時(shí)策略與機(jī)制的分離帶來的好處


29.下面是關(guān)于單位轉(zhuǎn)換的

    a)一微年是多少秒?

    b)微米常稱為micron。那么gigamicron是多長?

    c)1TB存儲(chǔ)器中有多少字節(jié)?

    d)地球的質(zhì)量是6000 yottagram,換算成kilogram是多少?


30.寫一個(gè)和圖1-19類似的shell,但是包含足夠的實(shí)際可工作的代碼,還可以填寫某些功能,如輸入輸出重定向、管道以及后臺(tái)作業(yè)等。


31.如果擁有一個(gè)個(gè)人UNIX類操作系統(tǒng)(Linux、MINIX、Free BSD),可以安全地崩潰和再啟動(dòng),請(qǐng)寫一個(gè)可以試圖創(chuàng)建一個(gè)無限制數(shù)量子進(jìn)程的shell腳本并觀察所發(fā)生的事。在運(yùn)行之前,通過shell鍵入sync,在磁盤上備好文件緩沖區(qū)以避免毀壞文件系統(tǒng)。


32.用一個(gè)類似于UNIX od或MS-DOS DEBUG的程序考察并嘗試解釋UNIX類系統(tǒng)或Windows的目錄。


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI