linux內(nèi)核經(jīng)典面試題_第1頁(yè)
已閱讀1頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、LINUX 內(nèi)核經(jīng)典面試題 2015-05-02 23:08:14分類: LINUX原文地址:LINUX 內(nèi)核經(jīng)典面試題 作者:sunjiangang-ok 1) Linux 中主要有哪幾種內(nèi)核鎖?2) Linux 中的用戶模式和內(nèi)核模式是什么含意?3) 怎樣申請(qǐng)大塊內(nèi)核內(nèi)存?4) 用戶進(jìn)程間通信主要哪幾種方式?5) 通過(guò)伙伴系統(tǒng)申請(qǐng)內(nèi)核內(nèi)存的函數(shù)有哪些?6) 通過(guò) slab 分配器申請(qǐng)內(nèi)核內(nèi)存的函數(shù)有?7) Linux 的內(nèi)核空間和用

2、戶空間是如何劃分的(以 32 位系統(tǒng)為例)?8) vmalloc()申請(qǐng)的內(nèi)存有什么特點(diǎn)?9) 用戶程序使用 malloc()申請(qǐng)到的內(nèi)存空間在什么范圍?10) 在支持并使能 MMU 的系統(tǒng)中,Linux 內(nèi)核和用戶程序分別運(yùn)行在物理地址模式還是虛擬地址模式?11) ARM 處理器是通過(guò)幾級(jí)也表進(jìn)行存儲(chǔ)空間映射的?12) Linux 是通過(guò)什么組件來(lái)實(shí)現(xiàn)支持多種文件系通的?13) Linux 虛擬文件系統(tǒng)的關(guān)鍵數(shù)據(jù)結(jié)構(gòu)有哪些?(至少寫出

3、四個(gè))14) 對(duì)文件或設(shè)備的操作函數(shù)保存在那個(gè)數(shù)據(jù)結(jié)構(gòu)中?15) Linux 中的文件包括哪些?16) 創(chuàng)建進(jìn)程的系統(tǒng)調(diào)用有那些?17) 調(diào)用 schedule()進(jìn)行進(jìn)程切換的方式有幾種?18) Linux 調(diào)度程序是根據(jù)進(jìn)程的動(dòng)態(tài)優(yōu)先級(jí)還是靜態(tài)優(yōu)先級(jí)來(lái)調(diào)度進(jìn)程的?19) 進(jìn)程調(diào)度的核心數(shù)據(jù)結(jié)構(gòu)是哪個(gè)?20) 如何加載、卸載一個(gè)模塊?21) 模塊和應(yīng)用程序分別運(yùn)行在什么空間?22) Linux 中的浮點(diǎn)運(yùn)算由應(yīng)用程序?qū)崿F(xiàn)還是內(nèi)核實(shí)現(xiàn)?

4、23) 模塊程序能否使用可鏈接的庫(kù)函數(shù)?24) TLB 中緩存的是什么內(nèi)容?25) Linux 中有哪幾種設(shè)備?26) 字符設(shè)備驅(qū)動(dòng)程序的關(guān)鍵數(shù)據(jù)結(jié)構(gòu)是哪個(gè)?27) 設(shè)備驅(qū)動(dòng)程序包括哪些功能函數(shù)?28) 如何唯一標(biāo)識(shí)一個(gè)設(shè)備?29) Linux 通過(guò)什么方式實(shí)現(xiàn)系統(tǒng)調(diào)用?30) Linux 軟中斷和工作隊(duì)列的作用是什么?1. Linux 中主要有哪幾種內(nèi)核鎖? 中主要有哪幾種內(nèi)核鎖?(2) 發(fā)生中斷或異常。2.6 內(nèi)核引入了內(nèi)核

5、搶占,大多數(shù)內(nèi)核模式的代碼也可以被搶占。3. 怎樣申請(qǐng)大塊內(nèi)核內(nèi)存? 怎樣申請(qǐng)大塊內(nèi)核內(nèi)存?在 Linux 內(nèi)核環(huán)境下,申請(qǐng)大塊內(nèi)存的成功率隨著系統(tǒng)運(yùn)行時(shí)間的增加而減少,雖然可以通過(guò) vmalloc 系列調(diào)用申請(qǐng)物理不連續(xù)但虛擬地址連續(xù)的內(nèi)存,但畢竟其使用效率不高且在 32 位系統(tǒng)上 vmalloc 的內(nèi)存地址空間有限。所以,一般的建議是在系統(tǒng)啟動(dòng)階段申請(qǐng)大塊內(nèi)存,但是其成功的概率也只是比較高而已,而不是 100%。如果程序真的

6、比較在意這個(gè)申請(qǐng)的成功與否,只能退用“啟動(dòng)內(nèi)存”(Boot Memory)。下面就是申請(qǐng)并導(dǎo)出啟動(dòng)內(nèi)存的一段示例代碼:void* x_bootmem = NULL;EXPORT_SYMBOL(x_bootmem);unsigned long x_bootmem_size = 0;EXPORT_SYMBOL(x_bootmem_size);static int __init x_bootmem_setup(char *str){x_boo

7、tmem_size = memparse(str, x_bootmem = alloc_bootmem(x_bootmem_size);printk(“Reserved %lu bytes from %p for x\n“, x_bootmem_size, x_bootmem);return 1;}__setup(“x-bootmem=“, x_bootmem_setup);可見其應(yīng)用還是比較簡(jiǎn)單的,不過(guò)利弊總是共生的,它不可避免也有其

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論