嵌入式Linux軟件開發工程師職業資格認證考試題.doc_第1頁
嵌入式Linux軟件開發工程師職業資格認證考試題.doc_第2頁
嵌入式Linux軟件開發工程師職業資格認證考試題.doc_第3頁
嵌入式Linux軟件開發工程師職業資格認證考試題.doc_第4頁
嵌入式Linux軟件開發工程師職業資格認證考試題.doc_第5頁
已閱讀5頁,還剩1頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

精品文檔嵌入式Linux軟件開發工程師職業資格認證考卷注: 普通教室 考試時間:120分鐘題 號一二三四五六七九十合 分評卷人應得分201515102020實得分一、填空題(每小題1分,共20分)1、在linux系統中,以 文件 方式訪問設備。2、安裝linux系統對硬盤分區時,必須有兩種分區類型:文件系統分區和 交換分區 。3、在Linux系統中,用來存放系統所需要的配置文件和子目錄的目錄是 /etc 。4、進行遠程登錄的命令是 telnet 。5、利用gdb進行調試時,可通過 step 或 next 命令進行單步執行。6、gcc的編譯可分為_預處理_、編譯、匯編和_ _鏈接 _等四個階段。7、卸載Linux內核模塊使用命令_ rmmod _。8、 ARM處理器的中斷有兩種處理模式,分別為_快速中斷_ _模式和的_快速中斷_ _模式。9、 Linux文件的鏈接可分為符號鏈接和_ _硬鏈接_兩種。10、 Qt/Embedded使用_ 信號 _和_ _插槽_ _的機制實現函數的回調。11、 ARM處理器有多種運行模式,用戶程序運行在其中的_ _用戶_模式。12、 Linux系統在啟動init進程時使用的配置文件是_ _/etc/inittab _。13、 交叉編譯是指_ 在一個平臺上生成可以在另一個平臺上執行的代碼 _。14、 在linux系統中,以 文件 方式訪問設備。15、 利用gdb進行調試時,可通過step或 next 命令進行單步執行。16、 Qt/Embedded的底層圖形引擎基于 FrameBuffer 接口技術。17、 Linux操作系統的系統管理員(也就是超級用戶)帳號是 root 。18、 編寫的shell程序運行前必須賦予該腳本文件 執行 權限。19、 使用gcc編譯c程序生成可執行文件有時似乎是一步完成的,但實際要經歷如下四步:預處理、編譯、 匯編 和連接。20、 內核分為進程管理系統、內存管理系統、 IO管理系統 和文件管理系統等四個子系統。二、單項選擇題。(每小題1分,共15分) 1、如下哪一個命令可以幫助你知道shell命令的用法( A)A. man B. pwd C. help D. more2、在大多數Linux發行版本中,以下哪個屬于塊設備 ( B )A. 串行口 B. 硬盤 C. 虛擬終端 D. 打印機3、在Linux系統,默認的shell是什么( A ) A.bash B.ash C.csh D.gnush4、LILO的配置文件是:( B )A. /etc/conf B. /etc/lilo.conf C. /proc/kcore D. /usr/local/5、Linux文件權限一共10位長度,分成四段,第三段表示的內容是( D )A.文件類型 B.文件所有者的權限C.文件所有者所在組的權限 D.其他用戶的權限6、不是shell具有的功能和特點的是 ( A )A.管道 B.輸入輸出重定向 C.執行后臺進程 D.處理程序命令7、你用vi編輯器編寫了一個腳本文件shell.sh,你想將改文件名稱修改為shell2.sh,下列命令( B )可以實現。 A. cp shell.sh shell2.sh B. mv shell.sh shell2.sh C. ls shell.sh shell2.sh D. ll shell.sh shell2.sh8、字符設備文件類型的標志是 ( B )A. p B. c C. s D. l9、( B )命令可更改一個文件的權限設置? A. attribB. chmod C. change D. file10、系統中有用戶user1和user2,同屬于users組。在user1用戶目錄下有一文件file1,它擁有644的權限,如果user2用戶想修改user1用戶目錄下的file1文件,應擁有( B )權限。 A. 744 B. 664 C. 646 D. 74611、在CPU和物理內存之間進行地址轉換時,( B )將地址從虛擬(邏輯)地址空間映射到物理地址空間。A、TCB B、MMU C、CACHED、DMA12、關于文件系統的安裝和卸載,下面描述正確的是( A )。 A. 如果光盤未經卸載,光驅是打不開的 B. 安裝文件系統的安裝點只能是/mnt下 C. 不管光驅中是否有光盤,系統都可以安裝CD-ROM設備 D. mount /dev/fd0 /floppy 此命令中目錄/floppy是自動生成的13、用下列( A )命令查看Linux使用了多少內存A.cat /proc/meminfoB. cat /bin/meminfo C.vi /proc/meminfoD.vi /user/local/meminfo14、下列( D )設備是字符設備。A. hdc B. fd0 C. hda1 D. tty115、有如下的命令:$dd if=f1 of=f2。其中if=f1表示( A ) A. 以f1作為源文件,代替標準輸入 B. 以f1作為目標文件,代替標準輸出 C. 當條件滿足f1的時候,執行真正的拷貝 D. 拷貝的過程中,不轉化文件三、多項選擇題。(每小題3分,共15分) 1.嵌入式操作系統不同于通用操作系統的功能是( BC )A、任務調度 B、可裁減性 C、 強實時 D、設備管理 E、存儲器管理2.Linux系統中的設備文件通常有如下分類( BCD )A、虛擬設備 B、字符設備 C、網絡設備 D、塊設備 E、存儲設備3.常用的軟件開發模型有( BCD )A、結構型 B、 原型模型 C、 迭代型 D、瀑布型 E、綜合型4.ARM處理器的工作模式中屬于異常模式的有( CDE )A、用戶模式usr B、系統模式sys C、 外部中斷模式irq D、中止模式abt E、快速中斷模式fiq5.芯片總線又稱元件級總線,它是指系統內或插件板內各元件之間所使用的總線,下列屬于芯片總線的有( ACD )A、I2C總線 B、ISA總線 C、SPI總線 D、SCI總線 E、PCI總線四、判斷題。(每小題1分,共10分) 1、在gdb調試過程中,不退出gdb也可以執行UNIX shell命令。( 對 )2、Linux文件系統的文件都按其作用分門別類地放在相關的目錄中,對于外部設備文件,一般應將其放在/etc目錄中。( 錯 )3、 在Linux系統中,測試DNS服務器是否能夠正確解析域名的的客戶端命令,使用命令 nslookup 。( 對 )4、 激活網卡需要編譯內核。( 錯 )5、 在gdb調試過程中,用make命令可以不用退出gdb就可以重新產生可執行文件。( 對 )6、 在重新啟動Linux系統的同時把內存中的信息寫入硬盤,應使用shutdown r now命令實現。( 對 )7、 ARM處理器的運行模式可通過中斷或異常處理改變。( 對 )8、 BootLoader屬于嵌入式操作系統的一部分。( 錯 )9、 Busybox常用于替代桌面系統中的init和shell等程序,為嵌入式用戶提供使用環境。( 對 )10、 在嵌入式系統中,整個系統的加載啟動任務就完全由 Boot Loader 來完成。( 對 )五、綜合題。(每小題5分,共20分) 1、已知C語言程序有主程序模塊prog.c,prog.h,其中調用了另一模塊subr.c, subr.h中的功能。試寫出一個可將這兩個模塊編譯成可執行文件pr1的makefile。(5分)pr1: prog.o subr.ogcc o pr1 prog.o subr.oprog.o: prog.c prog.hgcc c o prog.o prog.csubr.o: subr.c subr.hgcc c o subr.o subr.c2、下面幾條宏定義語句的GPBCON 、GPBDAT、GPBUP地址分別是多少?#define GPIO_CTL_BASE0x56000000 #define bGPIO(p) _REG(GPIO_CTL_BASE + (p) #define GPBCON bGPIO(0x10) #define GPBDAT bGPIO(0x14) #define GPBUP bGPIO(0x18) GPBCON寄存器地址0X56000010GPBDAT寄存器地址0X56000014GPBUP 寄存器地址0X560000183、簡述說明字符設備注冊函數register_chrdev和注銷函數unregister_chrdev中參數的意義。int register_chrdev(unsigned int major, const char *name, struct file_ operations *fops);其中,major是為設備驅動程序向系統申請的主設備號,如果為0,則系統為此驅動程序動態分配一個主設備號。name是設備名,fops是對各個調用的入口點說明。此函數返回0時表示成功;返回-EINVAL,表示申請的主設備號非法。如果動態分配主設備號成功,此函數將返回所分配的主設備號。如果register_chrdev()操作成功,設備名就會出現在/proc/dvices文件中。當設備驅動模塊從Linux內核中卸載,對應的主設備號必須被釋放。字符設備在cleanup_ module()函數中調用unregister_chrdev()來完成設備的注銷。unregister_chrdev()的定義為:int unregister_chrdev(unsigned int major, const char *name);此函數的參數為主設備號major和設備名name。Linux內核把name和major在內核注冊的名稱對比,如果不相等,卸載失敗,并返回-EINVAL;如果major大于最大的設備號,也返回-EINVAL。4、Linux設備驅動程序通過調用request_irq函數來申請中斷,通過free_irq來釋放中斷。它們在linux/sched.h中的定義如下:int request_irq(unsigned int irq, void (*handler)(int irq,void dev_id,struct pt_regs *regs),unsigned long flags, const char *device, void *dev_id );void free_irq(unsigned int irq, void *dev_id);試簡述request_irq函數。Linux設備驅動程序通過調用request_irq函數來申請中斷,從request_irq函數返回的值為0時,表示申請成功;負值表示出現錯誤。該函數中的參數為:irq表示所要申請的硬件中斷號。handler為向系統登記的中斷處理子程序,中斷產生時由系統來調用,調用時所帶參數irq為中斷號,dev_id為申請時告訴系統的設備標識,regs為中斷發生時寄存器內容。device為設備名,將會出現在/proc/interrupts文件里。flag是申請時的選項,它決定中斷處理程序的一些特性,其中最重要的是決定中斷處理程序是快速處理程序(flag里設置了SA_INTERRUPT)還是慢速處理程序(不設置SA_INTERRUPT)。六、應用實踐題(每小題10分,共20分)1、Qt/Embedded對嵌入式GUI提供了強大的支持,信號和插槽機制是QT的核心機制,使用QT實現如下界面的登陸程序,其原代碼如下所示,請回答如下問題:1)什么是Qt中的信號插槽機制?(3分)2)應用程序中用到了哪些控件,列舉2個并說明該控件的特點?(4分)3)根據注釋完成程序中相應的語句?(4分)#include #include window.hCWinDlg:CWinDlg(QWidget* parent) : QDialog(parent)setWindowTitle(Example); /*設置窗口的標題*/Edit1 = new QLineEdit; /*創建一個Edit1和一個Buttion1*/Button1 = new QPushButton(OK);Edit1-setEchoMode(QLineEdit:Password);QVBoxLayout* Layout1 = new QVBoxLayout; /*創建一個布局對像Layout1*/Layout1-addWidget(Edit1); /*把Edit1加入到Layout1*/Layout1-addWidget(Button1); /*把Button1加入到Layout1*/(1) ; /*應用Layout1布局*/(2) ; /*建立Signal-Slot,使button1與function()相關聯*/CWinDlg:CWinDlg()delete Edit1; /*刪除Edit1與Button1對象*/delete Button1;void CWinDlg:function()if(Edit1-text() = example) /*如果Edit1輸入example*/ /*顯示Pass!消息框*/QMessageBox:warning(this, warning, Pass!, QMessageBox:Yes); else /*顯示Error!消息框*/QMessageBox:warning(this, warning, Error!, QMessageBox:Yes);#include #include window.hint main(int argc, char* argv)QApplication app(argc, argv); /*創建QT應用程序*/CWinDlg dlg; /*創建窗口*/return dlg.exec();/*運行程序*/1、參考答案:答案要點:1)什么是Qt中的信號插槽機制?與回調函數機制有何不同?(3分) 答案要點:回調函數機制是事先將一個回調函數指針傳遞給一個處理過程,當這個處理過程得到執行時,回調預先定義好的回調函數以期實現激活其他處理程序的目的。不同與回調函數機制,Qt提供了信號和插槽機制,信號是一個特定的標識;一個槽就是一個函數,與一般函數不同,槽函數既能和信號關聯,當某個事件出現時,通過發送信號,可以將與之相關聯的槽函數激活,執行相應代碼。2)應用程序中用到了哪些控件,列舉2個并說明該控件的特點?(4分)答案要點:應用程序中用到的控件有(1)文本框控件Edit,文本框控件主要用來顯示或接收用戶的輸入信息。(2)按鈕控件Button,按鈕控件主要響應用戶單擊功能。3)根據注釋完成程序中相應的語句?(4分)(1)setLayout(Layout1); (2) connect(Button1, SIGNAL(clicked(), this, SLOT(function();2、假定你在目錄/home

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論