




下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、一、選擇題(每題2分,共40分)1 .下列哪種打開文件的方式不能修改文件已有的內(nèi)容(B )A r+B rC w+D a+2 .以下哪種不是進(jìn)程的狀態(tài) (B )A 運(yùn)行態(tài)B鎖定態(tài) C睡眠態(tài) D停止態(tài)3.以讀寫方式打開一個(gè)已存在的標(biāo)準(zhǔn)I/O流時(shí)應(yīng)指定哪個(gè)mode 參數(shù)(B )A rB r+C w+D a+D大于10000的正整數(shù)4 . fork()的返回值不可能是(C )A -1B 0C 15 .常用來(lái)進(jìn)行多任務(wù)同步的機(jī)制是(B )A管道 B信號(hào)量 C信號(hào)(異步通信方式,中斷機(jī)制的模擬)D共享內(nèi)存(本身不提供同步機(jī)制,可自行添加信號(hào)量實(shí)現(xiàn)同步)信號(hào)量:解決進(jìn)程 線程之間的同步與互斥問題的一種通信機(jī)
2、制:信號(hào)量變量 和這個(gè)變量的等待隊(duì)列、兩個(gè)原子操作(PV).6 .下列哪個(gè)函數(shù)無(wú)法傳遞進(jìn)程結(jié)束時(shí)的狀態(tài)(A )AcloseB exitvoid exit( int status)7.以下哪種用法可以等待接收進(jìn)程號(hào)為A waitpid(pid, &status, 0)C _exitD returnpid的子進(jìn)程的退出狀態(tài) (A ) P59B waitpid(pid, &status, WNOHANG)C waitpid(-1, &status, 0)D waitpid(-1, &status, WNOHANG)WNOHANG:子進(jìn)程沒結(jié)束,不阻塞立即返回,返回值為 0。0:阻塞父進(jìn)程,直到子進(jìn)程
3、退出。8 . What kind of IPC has the highest efficiency? ( B)A semaphoreB sharedmemoryC fifoD message queueE signal9 .下列對(duì)無(wú)名管道描述錯(cuò)誤的是(C )A半雙工的通信模式B有固定的讀端和寫端C可以使用lseek函數(shù)D只存在于內(nèi)存中10 .下列對(duì)于有名管道描述錯(cuò)誤的是(D )A可以用于互不相關(guān)的進(jìn)程間B通過路徑名來(lái)打開有名管道C在文件系統(tǒng)中可見D管道內(nèi)容保存在磁盤上11.下列不屬于用戶進(jìn)程對(duì)信號(hào)的響應(yīng)方式的是A忽略信號(hào)B保存信號(hào)(1 終止 SIGINT Ctrl+c , SIGINTQUI
4、T Ctrl+z.。4 忽略 SIGCHILD )(B )C捕捉信號(hào)D按缺省方式處理。2 暫停 SIGSTOP 。 3 停止 SIGTSTPD SIGILL12 .不能被用戶進(jìn)程屏蔽的信號(hào)是(B )A SIGINTB SIGSTOP /SIGKILLC SIGQUIT非法指令時(shí)發(fā)出13 .下列哪個(gè)是不帶緩存的(C )A stdinB stdout C stderr D 都不是14 .下列不屬于IPC對(duì)象白是(A )A管道B共享內(nèi)存C消息隊(duì)列D信號(hào)燈IPC對(duì)象通過它的標(biāo)識(shí)符來(lái)引用和訪問,這個(gè)標(biāo)識(shí)符是一個(gè)非負(fù)整數(shù),它唯一的標(biāo)識(shí)了一 個(gè)IPC對(duì)象,這個(gè)IPC對(duì)象可以是消息隊(duì)列或信號(hào)量或共享存儲(chǔ)器中的
5、任意一種類型15 .如果鍵盤輸入為abcdef,程序如下所示,寸T印結(jié)果應(yīng)該是(A )char buffer6;fgets(buffer, 6, stdin); 遇到n或 讀取了 size 1個(gè)字符后返回.printf( %s”, buffer);A abcde B abcdef C abcdef 后出現(xiàn)亂碼 D 段錯(cuò)誤16 .用open()創(chuàng)建新文件時(shí),若該文件存在則可以返回錯(cuò)誤信息的參數(shù)是(B )A O_CREAT (創(chuàng)建新文件)B O_EXCL C O_TRUNC(刪除原有數(shù)據(jù))D O_NOCTTYint open( const char pathname, int flags, int
6、 perms)17 .下列不是用戶進(jìn)程的組成部分的是(D )A正文段B用戶數(shù)據(jù)段C系統(tǒng)數(shù)據(jù)段D elf段進(jìn)程是由 進(jìn)程控制塊、程序段、數(shù)據(jù)段 三部分組成18 .以下哪種方法無(wú)法查看進(jìn)程的信息(C )A psB查看 /proc 目錄C killD topLinux系統(tǒng)中每一個(gè)進(jìn)程都會(huì)有 /proc文件系統(tǒng)下的與之對(duì)應(yīng)的一個(gè)目錄(init進(jìn)程信息存放在/proc/1目錄下)。19 .默認(rèn)情況下,不會(huì)終止進(jìn)程的信號(hào)是(D )A SIGINTB SIGKILLC SIGALRMD SIGCHLD20 . fread()返回值的含義是(B )A讀取的字節(jié)數(shù) B讀取的對(duì)象數(shù) C緩沖區(qū)的首地址D 0size
7、_t fread (void *ptr, size_t size, size_t nmemb, FILE *stream);、簡(jiǎn)直題(30分)一一1 .請(qǐng)描述進(jìn)程和程序的區(qū)別? (5分)進(jìn)程和程序的區(qū)別程序是靜態(tài)的,它是一些保存在 磁盤上的指令的有序集合,沒有任何執(zhí)行的概念進(jìn)程是一個(gè)動(dòng)態(tài)的概念,它是程序執(zhí)行的過程,包括創(chuàng)建、調(diào)度和消亡進(jìn)程是一個(gè)獨(dú)立的可調(diào)度的任務(wù)進(jìn)程是一個(gè)抽象實(shí)體。當(dāng)系統(tǒng)在執(zhí)行某個(gè)程序時(shí),分配和釋放的各種資源進(jìn)程是一個(gè)程序的 一次執(zhí)行的過程進(jìn)程是程序執(zhí)行和資源管理的最小單位2 .指出靜態(tài)庫(kù)和共享庫(kù)的區(qū)別(使用方法,對(duì)程序的影響)(5分)靜態(tài)庫(kù)在程序 編譯時(shí)會(huì)被連接到目標(biāo)代碼中,
8、程序運(yùn)行時(shí)將不再需要該 靜態(tài)庫(kù),因此體積較大。動(dòng)態(tài)庫(kù)在程序編譯時(shí)并 不會(huì)被連接 到目標(biāo)代碼中,而是在程序運(yùn)行是才被載入,因此在程序運(yùn)行時(shí)還需要?jiǎng)討B(tài)庫(kù)存在,因此代碼體積較小。3 .寫出設(shè)置信號(hào)處理函數(shù)和用戶定義的信號(hào)處理函數(shù)的原型(5分)void (*signal(int signum, void (*handler)(int)(int);typedef void (*sighandler_t)(int);sighandler_t signal(int signum, sighandler_t handler);void driver_handler(int signo);void (*hand
9、ler)( int );handler , 一個(gè)指向函數(shù)的指針,該函數(shù)有一個(gè)int參數(shù),返回void。T *signal( int signo, P) , P = void (*handler)( int );signal , 一個(gè)函數(shù),該函數(shù)有 2個(gè)參數(shù)(signo, P ),返回類型T的指針void (T) ( int ) , T = signal( int signo, P)T, 一個(gè)函數(shù),該函數(shù)有一個(gè)int參數(shù),返回void 。4.程序代碼如下,請(qǐng)按執(zhí)行順序?qū)懗鲚敵鼋Y(jié)果(10分)int main() pid_t pid1,pid2;if(pid1=fork() = = 0)子進(jìn)程處理程
10、序sleep(3);printf( infol from child process_1n ); exit(0);printf( info2 from child process_1n ); else if(pid2=fork() = = 0)子進(jìn)程 2sleep(1);printf( infol from child process_2n ); exit(0); else wait(NULL); wait(NULL); printf( info1 from parent processn ); printf( info2 from parent process ); _exit(0);inf
11、o1 from child process_2info1 from child process_1 info1 from parent process 5.列出任意四種進(jìn)程間通信的方式(5分)傳統(tǒng)的進(jìn)程間通信方式無(wú)名管道(pipe)、有名管道(fifo)和信號(hào)(signal) System V IPC 對(duì)象共享內(nèi)存(share memory)、消息隊(duì)歹U (message queue和信號(hào)燈(semaphore) BSD套接字(socket)入綜合題(30分)1 .指出創(chuàng)建守護(hù)進(jìn)程的步驟(5分)P651)創(chuàng)建子進(jìn)程,父進(jìn)程退出fork(), exit()2)在子進(jìn)程中創(chuàng)建新會(huì)話setsid()
12、3)改變當(dāng)前目錄為根目錄chdir()4)重設(shè)文件權(quán)限掩碼umask (0)5)關(guān)閉文件描述符close()2 .請(qǐng)畫出Linux中進(jìn)程的狀態(tài)切換圖(5分)3 .用文件IO分別實(shí)現(xiàn)標(biāo)準(zhǔn)IO中的(r, r+, w, w+, a, a+),文件名由argv1傳入程序. (O_RDONL Y, O_WRONL Y, O_RDWR, O_CREA T, O_TRUNC, O_APPEND)(10 分) int open (const char pathname, int flags, int perms);r: open (argv1,O_RDONL Y);r+:open (argv1,O_RDWR)
13、;w:open(argv1,O_WRONL Y | O_CREAT | O_TRUNC,0666);w+: open(argv1,O_RDWR | O_CREAT | O_TRUNC,0666);a: open(argv1,O_WRONL Y | O_CREAT | O_APPEND,0666);a+: open(argv1,O_RDWR | O_CREAT | O_APPEND,0666);4.編寫程序?qū)崿F(xiàn)如下功能(10分):reader.c 從argv1所指定的文件中讀取內(nèi)容,依次寫到管道 /home/linux/myfifo 中writer.c從管道/home/linux/my巾fo 中
14、讀取內(nèi)容,寫到 argv1所指定的文件中并保存Read.cint main(int argc, const char *argv) int fd,fd_src;char buf32;int bytes;if(argc 2) printf(Usage %s src_filen,argv0);return -1;if(fd = open(,7home/linux/myfifo,O_WRONLY ) 0) perror(fail to open);return -1;if( fd_src = open(argv1,O_RDONLY ) 0)write(fd,buf,bytes);close(fd);close(fd_src);return 0;Write.cint main(int argc, const char *argv)int fd,fd_dest;char
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度農(nóng)家樂經(jīng)營(yíng)權(quán)整體轉(zhuǎn)讓協(xié)議
- 2025年度智慧社區(qū)停車位租賃管理服務(wù)合同
- 二零二五年度企業(yè)融資抵押擔(dān)保合同
- 二零二五農(nóng)村房屋租賃光伏發(fā)電設(shè)施安裝與運(yùn)營(yíng)合同
- 2025年度購(gòu)房補(bǔ)充協(xié)議:智能家居與家庭健康數(shù)據(jù)管理合同
- 二零二五年度荒山承包轉(zhuǎn)讓與生態(tài)保護(hù)責(zé)任合同
- 2025年度海洋經(jīng)濟(jì)園區(qū)國(guó)有土地使用權(quán)租賃合同
- 二零二五年度夫妻離婚協(xié)議書及財(cái)產(chǎn)分割及子女撫養(yǎng)權(quán)及撫養(yǎng)金及贍養(yǎng)費(fèi)及債務(wù)處理及子女教育協(xié)議書
- 2025年度服裝工廠與電商平臺(tái)戰(zhàn)略合作合同
- 2025年度超市經(jīng)營(yíng)權(quán)整體轉(zhuǎn)讓與社區(qū)生態(tài)循環(huán)服務(wù)合同
- 《小米市場(chǎng)營(yíng)銷策略》課件
- 2025年湖南高爾夫旅游職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)附答案
- 2025年湖南大眾傳媒職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)新版
- 北京房屋租賃合同電子版7篇
- 《園林機(jī)械使用與維修》課件-任務(wù)3.園林養(yǎng)護(hù)機(jī)械
- 項(xiàng)目式學(xué)習(xí)在小學(xué)數(shù)學(xué)教學(xué)中的應(yīng)用
- 2024年05月山東威海市商業(yè)銀行科技類社會(huì)招考筆試歷年參考題庫(kù)附帶答案詳解
- 2025中智集團(tuán)下屬單位公開招聘41人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 中醫(yī)理療館路演
- 產(chǎn)后腹直肌分離治療
- 【責(zé)任清單】醫(yī)院系統(tǒng)紀(jì)檢監(jiān)察責(zé)任清單
評(píng)論
0/150
提交評(píng)論