Linux选择填空练习题
1.linux中把分區(qū)和目錄對應(yīng)的過程叫做(掛載)
2.信號是在軟件層次上對(中斷)機(jī)制的一種模擬, 是一種異步通信方式。
3.用GCC編譯過程可以被細(xì)分為四個階段:(預(yù)處理、編譯、匯編和鏈接)
4.編譯有線程的文件要加(-pthread)參數(shù)。
5.父進(jìn)程等待子進(jìn)程的結(jié)束,可以使用的函數(shù)是(wait())和(waitpid())
6.linux主要有兩個信號安裝函數(shù),分別是什么?(signaction)、(signal)
7.Linux操作系統(tǒng)內(nèi)核由(c語言和匯編語言)編寫完成。
8.目錄(/boot)下存放linux操作系統(tǒng)啟動時所要用到的程序
9.Linux 系統(tǒng)的設(shè)備文件分為三類?(字符設(shè)備、塊設(shè)備和網(wǎng)絡(luò)設(shè)備)
10.Linux 中采用“一對一”的線程機(jī)制,也就是一個用戶線程對應(yīng)一個(內(nèi)核線程)
11.vim三種模式:在命令模式下按下(:(英文冒號))就進(jìn)入了底線命令模式。
12.Vim的三種模式:(命令模式? 插入模式?? 底行模式)
13.標(biāo)準(zhǔn)I/O提供了三種類型的緩沖,分別是?(全緩沖,行緩沖,不帶緩沖)
14.linux文件系統(tǒng)由四部分組成(內(nèi)核、shell、文件系統(tǒng)和應(yīng)用程序)用于存放文件的控制信息。
15.一個完整的信號生命周期包含4個重要的事件,這4個重要事件分別是?(信號誕生、信號在進(jìn)程中注冊、信號在進(jìn)程中注銷、信號處理函數(shù)執(zhí)行完畢)
16.互斥鎖只有兩種狀態(tài),即?(上鎖( lock )和解鎖( unlock ))
17.線程本身調(diào)用(pthread_exit)函數(shù)可以退出線程。
18.向消息隊(duì)列發(fā)送消息的函數(shù)是(msgsnd)
19.(fcntl)系統(tǒng)調(diào)用可以根據(jù)文件描述符來操作文件特性。
20.Valgrind包括很多工具,(Memcheck)是valgrind應(yīng)用最廣泛的工具,一個重量級的內(nèi)存檢查器,能夠發(fā)現(xiàn)開發(fā)中絕大多數(shù)內(nèi)存錯誤使用情況,(Cachegrind)是主要用來檢查程序中緩存使用出現(xiàn)的問題。
21.信號發(fā)送函數(shù)中, (alarm)和(setitimer())用于設(shè)置定時器,當(dāng)計(jì)時時間到達(dá)時,向進(jìn)程發(fā)送SIGALRM信號。
22.在標(biāo)準(zhǔn)IO庫中,rewind函數(shù)作用?(將文件內(nèi)部的位置指針重新指向一個流(數(shù)據(jù)流/文件)的開頭)
23.c語言中沒有明確給定初值的全局變量和靜態(tài)變量存放在哪兒?(全局存儲區(qū)(靜態(tài)存儲區(qū)))
24.函數(shù)geteuid()用于得到進(jìn)程的??(用戶有效 UID 值)
25.當(dāng)一個線程的屬性設(shè)置為(分離狀態(tài)),該線程結(jié)束時立即釋放它所占有的系統(tǒng)資源。
26.以下哪種方式屬于異常終止一個進(jìn)程(D接到一個信號并終止)
27.下列命令哪個是創(chuàng)建線程私有數(shù)據(jù)命令()(pthread_key_create()) ???
28.下面哪種通信方式適用于不同機(jī)器之間的進(jìn)程通信。(套接字)
29.linux中通過調(diào)用waitpid()函數(shù)得到進(jìn)程的退出信息,該函數(shù)原型為pid_t waitpid(pid_t pid, int *status, int options);當(dāng)?shù)谝粋€參數(shù)pid取值為-1時,表示(等待任一子進(jìn)程退出,相當(dāng)于 wait())
30.Linux環(huán)境中使用kill函數(shù)向進(jìn)程或進(jìn)程組發(fā)送信號。Kill函數(shù)原型為int kill(pid_t? pid,? int signo);當(dāng)?shù)谝粋€31.參數(shù)pid>0時,表示(發(fā)送信號給進(jìn)程ID為pid的進(jìn)程)
32.共享主存基本操作(shmat())將共享主存區(qū)映射到進(jìn)程虛擬地址空間
33.lseek(fd,位移數(shù),whence):設(shè)置文件偏移量
34.文件描述符的數(shù)據(jù)類型:int
35.創(chuàng)建目錄:mkdir()
36.命令行有什么函數(shù)提供:shell
37.getpid()獲取子進(jìn)程id? ?????????? getppid()獲取父進(jìn)程id
38.getuid()獲取用戶id?????????? ?? ? geteuid()獲取有效用戶id
39.更改目錄:cd ;查看當(dāng)前所在的目錄位置: pwd;查看目錄下的文件: ls;修改文件權(quán)限:chmod;查看進(jìn)程:ps
40.進(jìn)程中不能忽略的兩個信號?(SIGSTOP和SIGKILL)
41.UDP,TCP屬于(傳輸層)協(xié)議。
42.移動指針lseek函數(shù)的參數(shù):(lseek(int fd ,_off_t? offset , int whence))
43.一個進(jìn)程是 ( PCB 結(jié)構(gòu)與程序和數(shù)據(jù)的組合)
44.一個進(jìn)程調(diào)用 wait 或 waitpid 函數(shù),可能產(chǎn)生 3 中情況,下列不屬于這 3 種情況的是 (如果該進(jìn)程沒有子進(jìn)程,立即返回,返回值為 0)
45.程序和進(jìn)程是兩個不同的概念,以下不能描述這個觀點(diǎn)的是 (同一個程序運(yùn)行 10 次,產(chǎn)生的是同一個進(jìn)程)
46.哪種進(jìn)程之間的通信,數(shù)據(jù)不可以重復(fù)讀(fifo、 管道)
47.下述是Linux下多線程編程常用的pthread庫提供的函數(shù)名和意義,說法不正確的是?(pthread_exit殺死一個線程)
48.對線程函數(shù)來說,說法正確的是:(pthread_create中參數(shù)arg是傳遞給start_routine函數(shù)的參數(shù))
49.對互斥鎖及條件變量說法不正確的是:(在使用條件變量時,互斥鎖會失去作用,所以是否有互斥鎖關(guān)系不重要)
50.以下說明正確的是:(線程是一個獨(dú)立的指令流,是在進(jìn)程中被創(chuàng)建的,隨進(jìn)程的關(guān)閉而關(guān)閉)
51.線程A SendMessage給線程B,線程B處理該消息時又SendMessage給線程A,會出現(xiàn):(繼承執(zhí)行)
52.linux文件系統(tǒng)通常由四部分組成:引導(dǎo)塊,超級塊,索引節(jié)點(diǎn)和 (數(shù)據(jù)塊)
53.任何進(jìn)程在運(yùn)行時默認(rèn)打開的三個流對象,都有相應(yīng)的文件描述符,標(biāo)準(zhǔn)文件描述符定義標(biāo)準(zhǔn)輸入設(shè)備的值為(0)
54.系統(tǒng)調(diào)用的函數(shù)原型int open(const char *pathname, int flags),flag值中(O_TRUNC)表示若文件存在且為只讀或只寫成功打開,則將長度截為0。
55.使用下列函數(shù)調(diào)用int fcntl(int fd, int cmd);來實(shí)現(xiàn)文件描述符的復(fù)制,cmd參數(shù)應(yīng)使用哪一個?(F_DUPFD)
56.獲取目錄的系統(tǒng)調(diào)用函數(shù)為(getcwd())
57.linux 文件系統(tǒng)由四部分組成,(超級塊)用于存放文件的控制信息。
58.使用 gdb 調(diào)試程序時,next 和 step 命令的作用?(next:單步運(yùn)行,不進(jìn)入函數(shù)內(nèi)部; setp:單步運(yùn)行,進(jìn)入函數(shù)內(nèi)部)?
59.返回調(diào)用進(jìn)程的進(jìn)程標(biāo)識號的系統(tǒng)函數(shù)是(getpid)
60.進(jìn)程初始化數(shù)據(jù)區(qū):全局初始化數(shù)據(jù)區(qū)/靜態(tài)數(shù)據(jù)區(qū)
61.進(jìn)程的堆區(qū):用于動態(tài)內(nèi)存分配。一般由程序員分配和釋放,若程序員不釋放,程序結(jié)束時由 OS 回收。
62. Linux 文件系統(tǒng)中的塊有(根據(jù)塊使用的不同):引導(dǎo)塊、超級塊、Inode 塊、數(shù)據(jù)塊。 控制信息、文件基本屬性等是 Inode 節(jié)點(diǎn),為文件系統(tǒng)索引。存放數(shù)據(jù)的為數(shù)據(jù)塊。超級塊中含有文件系統(tǒng)的基本信息,如塊大小、指向空間 inode 和數(shù)據(jù)塊的指針等相關(guān)信息。
63.進(jìn)程運(yùn)行時默認(rèn)打開的標(biāo)準(zhǔn)對象:標(biāo)準(zhǔn)輸入設(shè)備 stdin、標(biāo)準(zhǔn)輸出設(shè)備 stdout、標(biāo)準(zhǔn)錯誤 輸出設(shè)備 stderror
64.修改文件權(quán)限命令:chmod、chgrp、chown。
65.文件描述符為?整型。對于用戶空間來說,任何打開的文件都將分配一個唯一非負(fù)整數(shù), 用于標(biāo)識該打開文件,該值即文件描述符,為一個大于等于 0 的整數(shù)。
66.權(quán)限的值?讀:4 寫:2 執(zhí)行:1 注意:前三位為用戶的權(quán)限,再三位為所屬組的權(quán) 限,再三位為其他用戶的權(quán)限。
67.獲取文件屬性,是否穿透?stat 函數(shù)具有穿透能力,能夠穿透鏈接文件;而 lstat 函數(shù)不 具有穿透能力,不穿透鏈接文件,文件類型還為鏈接文件。
68. opendir 函數(shù):打開一個目錄,返回一個目錄流指針。參數(shù)為欲打開目錄的名稱(路徑)。
mkdir 函數(shù):第一個參數(shù)是欲創(chuàng)建的目錄文件路徑,第二個參數(shù)是創(chuàng)建目錄的權(quán)限。
69. fcntl 函數(shù):修改某個文件描述符的特殊屬性
70.創(chuàng)建硬鏈接的系統(tǒng)調(diào)用:link()
71.接受消息隊(duì)列的函數(shù) msgrcv()
72.自己退出線程的函數(shù):pthread_exit();被取消線程運(yùn)行:pthread_cancle()
73.互斥鎖、條件變量、讀寫鎖的初始化:互斥鎖的初始化:pthread_mutex_init() 條件變量的初始化:pthread_cond_init() 讀寫鎖的初始化:pthread_rwlock_init()
74.讀寫鎖:非阻塞的加鎖解鎖和阻塞的加鎖解鎖。
堵塞的方式申請讀鎖:pthread_rwlock_rdlock()
非堵塞的方式申請讀鎖:pthread_rwlock_tryrdlock()
堵塞方式申請寫鎖:pthread_rwlock_wrlock()
非堵塞方式申請寫鎖:pthread_rwlock_trywrlock()
75.互斥鎖的上鎖函數(shù)是 pthread_mutex_lock(),非阻塞加 try; 解鎖函數(shù)是 pthread_mutex_unlock()。
76.面向連接的編程:TCP;面向無連接的是:UDP
77.在不同主機(jī)間進(jìn)行通訊的是:scoket 或者是套接字
78.三次握手:連接建立、數(shù)據(jù)傳輸、連接釋放。
79.創(chuàng)建套接字的函數(shù) scoket()
80.網(wǎng)絡(luò)編程的常見函數(shù):
監(jiān)聽網(wǎng)絡(luò)函數(shù):listen()
發(fā)起連接函數(shù):connect()
接受連接函數(shù):accept()
讀寫 scoket 對象:read()/write()
TCP 發(fā)送和接受數(shù)據(jù):send()/recv()
關(guān)閉 scoket 對象:close()
81. Linux下獲取文件屬性函數(shù): stat()
總結(jié)
以上是生活随笔為你收集整理的Linux选择填空练习题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OpenAI Gym 关于CartPol
- 下一篇: Linux系统文件颜色代表的意思