一、選擇題
1:main()
執行結果為( ) ;
a.0 , 0 b.0 , 1
c.1 , 0 d.1 , 1
2:某檔案中定義的靜態全域性變數(或稱靜態外部變數)其作用域是( )
a.只限某個函式 b.本檔案
c.跨檔案 d.不限制作用域
3:設 int a[10],*p=a ;則對陣列元素的正確引用是( )
a.a[p] b.p[a]
c.*(p+2) d.p+2
4:c語言中,系統自動開啟的檔案是( )
a.二進位制檔案 b.隨機檔案
c.非緩衝檔案 d.裝置檔案
5:下列程式的執行結果是( )
main( )
a.9 b.11 c.17 d.19
6:在軟體生命週期中,下列哪個說法是不準確的?( )
a.軟體生命週期分為計畫、開發和執行三個階段
b.在計畫階段要進行問題確認和需求分析
c.在開發後期才能進行編寫**和軟體測試
d.在執行階段主要是進行軟體維護
7:下列語句定義整型指標p1、p2,( ) 是正確的。
a.int p1,p2; b.int*p1,*p2;
c.int *p1,p2; d.int**p1,p2;
8:下列程式的執行結果是( )
main()
;int *ptr = (int*)(&a+1);
printf("%d %d" , *(a+1),*(ptr-1) );
}a. 2 2 b. 2 1
c.2 5 d.以上均不是
二、簡答題
8、下面的程式或程式段存在乙個錯誤或不妥處請在其下劃一條線,並將改正的內容寫到每小題後的空白處
main()
9、下面的**輸出是什麼,為什麼?
void foo(void)
__interruptdouble compute_area (double radius)
三、核心驅動題
11、請簡述arm linux核心啟動流程。
12、驅動裡面為什麼要有併發、互斥的控制?如何實現?舉例說明。
13、請簡述linux核心終端處理分成上半部分和下半部分的原因,為何要分?如何實現?
四、程式設計實現題
14、設計並實現乙個在linux平台下簡單的記憶體fifo字元裝置驅動,並簡述該驅動的驗證方法。
linux驅動工程師面試
首先,我要說的是,就業成功最關鍵的因素在於紮實的基礎,很寬的知識面,豐富的實踐經驗.這些都是,工作學習中我們需要自己積累的內容,這些真的很重要,如果大家現在不是立馬就要找到乙份工作,建議把以上我提到的三點務必達到一定的要求,這些才是根本.當然,我寫這篇文章並不是向大家介紹怎麼學習,我想與大家分享的是...
驅動工程師的面試問題
1.nt式的驅動要匯入的標頭檔案是ntddk.h,wdm式的驅動要匯入的是wdm.h。2.nt式不支援即插即用,通過服務來手動載入 wdm是即插即用,通過inf來載入。3.wdm在裝置建立和pnp訊息處理上有區別。在和驅動通訊過程中,我們一般都會碰到應該選擇何種型別的緩衝型別進行通訊。本文將簡要的介...
Linux裝置驅動工程師之路 input子系統
linux裝置驅動工程師之路 input子系統 k style 一 input子系統系統框架 linux核心實現了一套input子系統,很多輸入裝置,比如說按鍵 鍵盤 滑鼠 觸控螢幕等等都可以利用input子系統提供的介面來編寫驅動,這樣可以幫驅動編寫者減少大量工作量。因為input子系統會幫驅動完...