文泉剛嵌入式Linux課后題答案(第一章前幾題沒寫)(共14頁)_第1頁
文泉剛嵌入式Linux課后題答案(第一章前幾題沒寫)(共14頁)_第2頁
文泉剛嵌入式Linux課后題答案(第一章前幾題沒寫)(共14頁)_第3頁
文泉剛嵌入式Linux課后題答案(第一章前幾題沒寫)(共14頁)_第4頁
文泉剛嵌入式Linux課后題答案(第一章前幾題沒寫)(共14頁)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1. linux常見的文件系統(tǒng)有哪些,VFS有何作用?p37常見的文件系統(tǒng):ex2t,ex3t,ext,VFATVFS是一個間接層,用于處理涉及文件的系統(tǒng)調(diào)用,并調(diào)用物理文件系統(tǒng)代碼中的必要功能來進行I/O操作。2. “/boot”目錄、“/etc”目錄有何作用?p40“/boot”:這個目錄下存放操作系統(tǒng)啟動時所要用到的程序,如啟動grub就會用到其下的/boot/grub子目錄?!?etc”:該目錄下存放了系統(tǒng)管理時要用到的各種配置文件和子目錄。系統(tǒng)在啟動過程中需要讀取其參數(shù)進行相應(yīng)的配置。3. 如何把“/root/wen”改名為“/root/jluzh”?使用命令:mv wen jluz

2、h4. 若有一個文件的屬性為“-rwxr-xrw-”,說明各項含義。r代表讀權(quán)限,w代表寫權(quán)限,x代表執(zhí)行權(quán)限,3個一組,第一段rwx表示文件擁有者擁有rwx三個權(quán)限,第二段r-x表示文件所有組擁有rx兩個權(quán)限,第三段rw-表示系統(tǒng)其他用戶擁有rw兩個權(quán)限。5. 執(zhí)行l(wèi)inux命令“fdisk-l”有何作用,結(jié)合實際操作解釋其操作結(jié)果。P57可以查看磁盤分區(qū)的情況,顯示結(jié)果中首先顯示了該磁盤的容量、磁頭數(shù)、每磁道的扇區(qū)、柱面數(shù)以及磁盤的標(biāo)識,接下來顯示了分區(qū)的情況,這里有三個分區(qū),boot分區(qū)、swap分區(qū)和“/”分區(qū)。6. 打包和壓縮文件有何區(qū)別,常用的打包和壓縮命令有哪些?p64區(qū)別:打包

3、是把幾個文件裝在一個文件包中,而壓縮則是把文件按照一定的算法將文件壓縮為一個存儲容量更小的文件。tar命令:對文件和目錄進行打包或解壓。gzip命令:壓縮或解壓縮文件。7. 簡述在shell編程中引號有什么作用?p70(1) 雙引號:由雙引號括起來的字符,除了$、倒引號和反斜線仍保留其特殊功能外,其余字符均作為普通字符對待。(2) 單引號:由單引號括起來的字符都作為普通字符出現(xiàn)。(3) 倒引號:倒引號括起來的字符串被shell解釋為命令行,在執(zhí)行時,Shell會執(zhí)行該命令行,并以它的標(biāo)準(zhǔn)輸出結(jié)果取代整個倒引號部分。8. 簡述Linux啟動過程分為哪幾個階段?p79BIOS引導(dǎo)階段、BootLo

4、ader引導(dǎo)階段、Kernel加載階段、init初始化階段。9. Linux通常由幾個運行級別?其對應(yīng)的含義是什么?p83有7個運行級別:0 停止系統(tǒng)1 單用戶模式2 基本的多用戶模式3 多用戶模式4.系統(tǒng)未使用5 使用GUI的多用戶模式6 重新啟動系統(tǒng)第二章:1. C語言有何特點?為什么適合適合嵌入式系統(tǒng)開發(fā)?P86(1) 是中級語言;(2) 是結(jié)構(gòu)化語言;(3) 功能齊全;(4) 可移植性好;由于上述原因,再加上Linux本身是使用C語言開發(fā)的,在Linux上用C語言開發(fā)效率很高,因此C語言尤其適合在嵌入式領(lǐng)域開發(fā)。2. 簡述開發(fā)流程,分別用啥工具軟件?流程:編寫源代碼、編譯程序、運行程序

5、、調(diào)試程序、交叉編譯、編寫Makefile工具:編輯器Vi、Vim,編譯器GCC,調(diào)試器GDB,項目管理Make,版本管理CVS3. Vim編輯器有幾種模式,主要實現(xiàn)什么功能?命令模式:移動光標(biāo)、復(fù)制文本、刪除文本、找出行數(shù)等命令的操作都在此模式下進行;編輯模式:主要是輸入文本;底行模式:一般用來執(zhí)行查找特定的字符串、保存及退出等任務(wù);4. 舉例說明編譯器編譯過程可細分為幾個階段,每階段產(chǎn)生什么類型文件。4個階段:預(yù)處理(生產(chǎn).i文件)、編譯(生成“.s”文件)、匯編(生產(chǎn)目標(biāo)文件)、鏈接(可執(zhí)行文件)5. GDB調(diào)試器有何功能?什么是遠程調(diào)試?功能:1. 啟動程序,按照用戶自定義的要求運行程

6、序。 2. 可讓被調(diào)試的程序在用戶所指定的調(diào)試的斷點處停?。〝帱c可以是條件表達式) 3. 當(dāng)程序停住時,可以檢查此時程序中所發(fā)生的事。 4. 動態(tài)改變程序的執(zhí)行環(huán)境。遠程調(diào)試:用于調(diào)試目標(biāo)機和宿主機中程序運行環(huán)境不一樣的嵌入式程序。6. Make工程管理器有咩作用?Make工具通過一個稱為Makefile的文件來完成并自動維護編譯工作。7. Makefile文件中有啥變量,有啥作用?自定義變量: 預(yù)定義變量:包含了常見的編譯器、匯編器的名稱和編譯選項。自動變量:代表編譯語句出現(xiàn)目標(biāo)文件和依賴文件等,并且具有本地含義,即下一句中出現(xiàn)的相同變量代表的是下一語句的目標(biāo)文件和依賴文件。環(huán)境變量:8.

7、在Eclipse環(huán)境下開發(fā)C語言程序的流程:創(chuàng)建項目、編譯運行、斷點調(diào)試、9. What is CVS,其基本工作思路是什么?建立連接、項目提交、提交修改和版本比對10. 基本I/O操作函數(shù)有哪些,分別實現(xiàn)什么功能?Open函數(shù):成功則返回文件描述符,出錯返回-1.Read和write函數(shù):如果發(fā)生錯誤,返回值為-1,同時設(shè)置errno變量為錯誤代碼。Close函數(shù):若文件順利關(guān)閉則返回0,發(fā)生錯誤則返回-1,并置errno。11. 什么是程序、進程和線程,有咩區(qū)別???p201 p167程序:是靜態(tài)的,它是一些保存在磁盤上的指令的有序集合,沒有執(zhí)行的概念。進程:是一個程序的一次執(zhí)行的過程,是動

8、態(tài)的概念,是程序執(zhí)行和資源管理的最小單位。各個進程是在自己獨有的地址空間內(nèi)執(zhí)行,不但寄存器和堆棧是獨有的,動態(tài)數(shù)據(jù)堆、靜態(tài)數(shù)據(jù)區(qū)和程序代碼也相互獨立。線程:線程是處理及調(diào)度的基本單位。寄存器和堆棧是獨有的,但由于兩線程從屬于同一進程,他們共享一個地址空間,而動態(tài)堆、靜態(tài)數(shù)據(jù)區(qū)及程序代碼也為各線程共享。12. 進程間的通信和同步有哪些方式?管道及有名管道、信號、報文隊列、共享內(nèi)存、信號量、套接口13. 守護進程的創(chuàng)建過程:*創(chuàng)建子進程,父進程推出在子進程中創(chuàng)建新會話改變當(dāng)前目錄為根目錄重設(shè)文件權(quán)限掩碼關(guān)閉文件描述符。第三章1. 簡述嵌入式軟件結(jié)構(gòu),各部分有何作用?(1) 應(yīng)用軟件層:用戶應(yīng)用程序

9、主要通過調(diào)用系統(tǒng)的API函數(shù)對系統(tǒng)進行操作,完成用戶應(yīng)用功能開發(fā)。(2) 中間層:為處于自己上層的應(yīng)用軟件提供運行與開發(fā)的環(huán)境,幫助用戶靈活、高效地開發(fā)和繼承復(fù)雜的應(yīng)用軟件。(3) 實時操作系統(tǒng)RTOS(4) 設(shè)備驅(qū)動層:使用任何外部設(shè)備都需要有相應(yīng)驅(qū)動程序的支持,它為上層軟件提供了設(shè)備的操作接口。2. 簡述基于Linux的嵌入式軟件組成,各部分有何作用?(1) BootLoader:初始化硬件設(shè)備,建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境。(2) 內(nèi)核:嵌入式系統(tǒng)通常有許多設(shè)備用于與用戶交互,內(nèi)核通過所有這些設(shè)備各自的設(shè)備驅(qū)動

10、程序來控制他們。(3) 應(yīng)用程序:提供圖形界面3. 嵌入式開發(fā)中為何要用交叉編譯開發(fā)方法,基于開發(fā)板的二次開發(fā)有何優(yōu)勢?優(yōu)勢:在軟件設(shè)計過程中不需過多地考慮硬件、系統(tǒng)開發(fā)周期短4. 簡述基于Linux的嵌入式軟件開發(fā)流程。(1).建立開發(fā)環(huán)境。 (2).配置開發(fā)主機。(3).建立引導(dǎo)裝載程序BOOTLOADER 。(4).移植Linux 操作系統(tǒng) (5).建立根文件系統(tǒng) (6).建立應(yīng)用程序的文件系統(tǒng) (7).開發(fā)應(yīng)用程序 (8).燒寫內(nèi)核、根文件系統(tǒng)、應(yīng)用程序。(9).發(fā)布產(chǎn)品。5. Samba服務(wù)有何作用,常用的BootLoader有哪些?Samba服務(wù)作用:是局域網(wǎng)上共享文件和打印機的一

11、種協(xié)議,能夠使Linux 和視窗系統(tǒng)之間進行共享服務(wù),使視窗系統(tǒng)能夠采用“網(wǎng)上鄰居”進行訪問 Linux 主機。常用的BootLoader:(1) ARMBoot(2) PPCBoot(3) U-Boot(4) RedBoot(5) Blob(6) ViVi6. 什么是NFS服務(wù),嵌入式軟件開發(fā)中為什么要用到NFS服務(wù)?什么是NFS服務(wù):NFS是網(wǎng)絡(luò)文件系統(tǒng)的意思,NFS可以使不同的計算機之間通過網(wǎng)絡(luò)進行文件共享的一種網(wǎng)絡(luò)協(xié)議,一般用于Linux網(wǎng)絡(luò)系統(tǒng)中。實際上,一臺NFS服務(wù)器就如同一臺文件服務(wù)器,只要將文件系統(tǒng)共享出來,NFS客戶端就可以將它掛載到本地系統(tǒng)中,從而可以像使用本地文件系統(tǒng)中

12、的文件一樣使用那些遠程文件系統(tǒng)中的文件為什么:它更加適用于Linux和Linux之間共享文件7. Minicom有何作用,它與Windows下的超級終端有何區(qū)別?8. BootLoader有何作用,常用的BootLoader有哪些?初始化硬件設(shè)備、建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境。9. Linux內(nèi)核分為幾個部分,什么是內(nèi)核空間和用戶空間,這種劃分有何優(yōu)缺點?體系結(jié)構(gòu)相關(guān)部分和體系結(jié)構(gòu)無關(guān)部分。Linux內(nèi)核采用虛擬內(nèi)存技術(shù),每個進程的虛擬內(nèi)存空間為4GB。其中0-3G屬于用戶空間,稱為用戶段,3G-4G屬于內(nèi)核空間,稱

13、為內(nèi)核段。有何優(yōu)缺點:不知道10. 簡述Linux的移植過程以及各過程中用到的工具和命令。找不到11. 常見的嵌入式文件系統(tǒng)有哪些?基于Flash的文件系統(tǒng)、基于RAM的文件系統(tǒng)、網(wǎng)絡(luò)文件系統(tǒng)NFS12. 設(shè)備驅(qū)動程序有何作用,Linux設(shè)備驅(qū)動程序分為哪些?1.對設(shè)備進行初始化。2.啟動或停止設(shè)備的運行。3.把數(shù)據(jù)從內(nèi)核傳送到硬件和從硬件讀取數(shù)據(jù)。4.讀取應(yīng)用程序傳送給設(shè)備文件的數(shù)據(jù)和回送應(yīng)用程序請求的數(shù)據(jù)。檢測和處理設(shè)備出現(xiàn)的錯誤等??蓞^(qū)分為 三種基本設(shè)備:字符設(shè)備、塊設(shè)備、網(wǎng)絡(luò)設(shè)備。13. 簡述Linux設(shè)備驅(qū)動的加載方式。靜態(tài)加載就是把驅(qū)動程序直接編譯到內(nèi)核里,在執(zhí)行make menu

14、config命令進行內(nèi)核配置裁剪時,在窗口中可以選擇是否編譯入內(nèi)核,還是放入相應(yīng)內(nèi)核版本目錄中,還是不選。驅(qū)動編譯進內(nèi)核后,系統(tǒng)啟動后可以直接調(diào)用。動態(tài)加載利用了LINUX的module特性,可以在系統(tǒng)啟動后用insmod命令把驅(qū)動程序(.o文件)添加上去,在不需要的時候用rmmod命令來卸載。14. 根文件系統(tǒng)不能夠通過NFS掛載到開發(fā)板,試描述可能出現(xiàn)該錯誤的原因是什么?NFS服務(wù)器沒有開啟啊內(nèi)核配置不正確啊沒有設(shè)置開發(fā)板使用NFS掛載跟文件系統(tǒng)啊15. 內(nèi)核驅(qū)動模塊的編程和普通程序的編程有哪些區(qū)別?1. 內(nèi)核驅(qū)動模塊包含的頭文件是內(nèi)核程序相關(guān)的頭文件,而普通程序則包含的是glibc的頭文

15、件2. 模塊程序沒有main函數(shù),而是通過init_module函數(shù)在加載后初始化。3. 模塊程序內(nèi)可直接掉哦那個內(nèi)核函數(shù),而普通程序則是只能通過系統(tǒng)調(diào)用使用內(nèi)核函數(shù)。4. 普通用戶程序可運行多次,而內(nèi)核函數(shù)通常只能加載1次16. U-Boot的環(huán)境變量bootargs和bootcmd有什么作用?Bootcmd:是自動啟動時默認(rèn)執(zhí)行的一些命令,因此可以在當(dāng)前環(huán)境中定義各種不同配置。另一個不知道,反正很重要第四章1. 什么是GUI?嵌入式GUI有什么特點?GUI是指圖形用戶接口。特點:體積??;運行時耗用系統(tǒng)資源??;上層接口與硬件無關(guān),高度可移植;高可靠性;在某些應(yīng)用場合應(yīng)具備實時性。2. 比較說

16、明常用的嵌入式GUI有哪些,各有何特點?1.X Window:采用標(biāo)準(zhǔn)的Server/Clinent體系結(jié)構(gòu),具有可擴展性好、可移植性好等優(yōu)點。但該系統(tǒng)龐大、累贅、效率低,源代碼尚不開放,從而很難進行本地化開發(fā)。2.OpenGL:是一個功能強大的底層圖形庫,提供調(diào)用方便的圖形程序接口。的移植性好,可以在不同的平臺之間進行移植。常用于在高端的繪圖領(lǐng)域。3.MicroWindows:提供了相對完善的圖形功能和一些高級的特性,采用了基于消息機制的 Server/Client傳輸機制。4. MiniGUI:由國內(nèi)自由軟件開發(fā)人員設(shè)計開發(fā)的,目標(biāo)是為基于Linux的實時嵌入式系統(tǒng)提供一個輕量級的圖形用戶

17、界面支持系統(tǒng)。5.QT/Embedded:面向嵌入式系統(tǒng)的Qt版本3. QT作為嵌入式GUI有何優(yōu)點?(1) 優(yōu)良的跨平臺特性(2) 面向?qū)ο?3) 豐富的 API(4) 支持 2D/3D 圖形渲染,支持OpenGL。(5) 大量的開發(fā)文檔(6) XML支持(7) Webkit 引擎的集成,可以實現(xiàn)本地界面與Web內(nèi)容的無縫集成。4. 什么是信號和槽機制?與回調(diào)函數(shù)比較有何優(yōu)缺點?信號和槽是一種高級接口,應(yīng)用于對象之間的通信,它就是QT的核心特性。信號和槽是QT自定義的一種通信機制,獨立于標(biāo)準(zhǔn)的C/C+語言。5. QT中常用的控件有哪些?這題算了吧PPT105頁6. 簡述Eclipse平臺下Q

18、T的開發(fā)過程。1.新建qt工程 2.配置QT和選擇QT組件3.ui設(shè)計4.代碼設(shè)計5.編譯運行第五章:1. 什么是嵌入式數(shù)據(jù)庫,有何特點?嵌入式數(shù)據(jù)庫將數(shù)據(jù)庫系統(tǒng)與操作系統(tǒng)和具體應(yīng)用集成在一起,運行在各種智能嵌入式設(shè)備上。具有體積小、便攜性、易用性的特點,但數(shù)據(jù)可靠性較低。2.結(jié)合實例列舉嵌入式數(shù)據(jù)庫的應(yīng)用領(lǐng)域。 空間探索一些全球著名的機構(gòu)將嵌入式數(shù)據(jù)庫用在一些著名的空間探索裝置中,如大家熟知的一些太陽系內(nèi)行星的探測器等。 軍事設(shè)備和系統(tǒng)一些著名的軍事機構(gòu)和全球著名的武器生產(chǎn)商將嵌入式數(shù)據(jù)庫運用到他們的系統(tǒng)控制裝置、戰(zhàn)士武器、軍艦裝置、火箭和導(dǎo)彈裝置中。這些場合用的數(shù)據(jù)庫有很多的安全設(shè)定和特化

19、設(shè)定,基本上嚴(yán)格按照每個客戶的技術(shù)標(biāo)準(zhǔn)的要求來特化引擎級構(gòu)件。具體的應(yīng)用級的構(gòu)件由客戶自己完成。3.簡述SQLite的組成結(jié)構(gòu)。SQL 編譯器、內(nèi)核、后端以及附件第六章:1. 簡述TCP/IP模型和OSI參考模型的對應(yīng)關(guān)系。OSI中的應(yīng)用層、表示層、會話層對應(yīng)TCP/IP的應(yīng)用層傳輸層一樣OSI中的網(wǎng)絡(luò)層對應(yīng)TCP/IP中的網(wǎng)絡(luò)互聯(lián)層OSI中的數(shù)據(jù)鏈路層、物理層對應(yīng)TCP/IP中的網(wǎng)絡(luò)接口層2. 列舉5個TCP/IP協(xié)議并說明功能。l Internet協(xié)議(IP):該協(xié)議被設(shè)計成互聯(lián)分組交換通信網(wǎng),以形成一個網(wǎng)際通信環(huán)境,它負(fù)責(zé)在源主機和目的地主機之間傳輸來自其較高層軟件的稱為數(shù)據(jù)報文的數(shù)據(jù)塊

20、,它在源和目的地之間提供非連接型傳遞服務(wù)。l 網(wǎng)際控制報文協(xié)議(ICMP):它實際上不是IP層部分,但直接同IP層一起工作,報告網(wǎng) 絡(luò)上的某些出錯情況。允許網(wǎng)際路由器傳輸差錯信息或測試報文。l 地址識別協(xié)議(ARP):ARP實際上不是網(wǎng)絡(luò)層部分,它處于IP和數(shù)據(jù)鏈路層之間,它是在32位IP地址和48位局域網(wǎng)地址之間執(zhí)行翻譯的協(xié)議。 l 傳輸控制協(xié)議(TCP):由于IP提供非連接型傳遞服務(wù),因此TCP應(yīng)為應(yīng)用程序存取網(wǎng)絡(luò)創(chuàng)造了條件,使用可靠的面向連接的傳輸層服務(wù)。該協(xié)議為建立網(wǎng)際上用戶進程之間的對話負(fù)責(zé)。此外,還確保兩個以上進程之間的可靠通信。它所提供的功能包括:監(jiān)聽輸入對話建立請求、請求另一網(wǎng)

21、絡(luò)站點對話、可靠的發(fā)送和接收數(shù)據(jù)和適度的關(guān)閉對話。l 用戶數(shù)據(jù)報文協(xié)議(UDP):UDP提供不可靠的非連接型傳輸層服務(wù),它允許在源和目的 地站點之間傳送數(shù)據(jù),而不必在傳送數(shù)據(jù)之前建立對話。此外,該協(xié)議還不使用TCP使用的端對端差錯校驗。當(dāng)使用UDP時,傳輸層功能全都發(fā)回,而開銷卻比較低。它主要用于那些不要求TCP協(xié)議的非連接型的應(yīng)用程序。例如,名字服務(wù)和網(wǎng)絡(luò)管理。3. 簡述TCP鏈接建立的過程第一步客戶機向服務(wù)器發(fā)送一個TCP數(shù)據(jù)包,表示請求建立連接。 為此,客戶端將數(shù)據(jù)包的SYN位設(shè)置為1,并且設(shè)置序列號seq=1000(我們假設(shè)為1000)。 第二步服務(wù)器收到了數(shù)據(jù)包,并從SYN位為1知道這是一個建立請求的連接。于是服務(wù)器也向客戶端發(fā)送一個TCP數(shù)據(jù)包。因為是響應(yīng)客戶機的請求,于是服務(wù)器設(shè)置ACK為1,ack_s

溫馨提示

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

評論

0/150

提交評論