freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

淺談linux相關(guān)技術(shù)及發(fā)展前景(編輯修改稿)

2025-07-22 11:58 本頁面
 

【文章內(nèi)容簡介】 ARM、MIPS、PowerPC等多種處理器。商業(yè)的交叉開發(fā)環(huán)境主要有Metrowerks CodeWarrior、ARM Software Development Toolkit、SDS Cross piler、WindRiver Tornado、Microsoft Embedded Visual C++等。交叉開發(fā)環(huán)境是指編譯、鏈接和調(diào)試嵌入式應(yīng)用軟件的環(huán)境。它與運(yùn)行嵌入式應(yīng)用軟件的環(huán)境有所不同,通常采用宿主機(jī)/目標(biāo)機(jī)模式,見圖3。第二步,交叉編譯和鏈接。在完成嵌入式軟件的編碼之后,就是進(jìn)行編譯和鏈接,以生成可執(zhí)行代碼。由于開發(fā)過程大多是在Intel公司x86系列 CPU的通用計(jì)算機(jī)上進(jìn)行的,而目標(biāo)環(huán)境的處理器芯片卻大多為ARM、MIPS、PowerPC、DragonBall等系列的微處理器,這就要求在建立 好的交叉開發(fā)環(huán)境中進(jìn)行交叉編譯和鏈接。第三步,交叉調(diào)試。嵌入式上層應(yīng)用軟件的調(diào)試可以使用本地調(diào)試和遠(yuǎn)程調(diào)試兩種方法。如果采用的是本地調(diào)試,首先要將所需的調(diào)試器移植到目標(biāo)系統(tǒng)中,然后就可以直接 在目標(biāo)機(jī)上運(yùn)行調(diào)試器來調(diào)試應(yīng)用程序了;如果采用的是遠(yuǎn)程調(diào)試,則需要移植一個(gè)調(diào)試服務(wù)器到目標(biāo)系統(tǒng)中,并通過它與宿主機(jī)上的調(diào)試器共同完成應(yīng)用程序的調(diào) 試。在嵌入式Linux系統(tǒng)的開發(fā)中,遠(yuǎn)程調(diào)試時(shí)目標(biāo)機(jī)上使用的調(diào)試服務(wù)器通常是gdbserver,而宿主機(jī)上使用的調(diào)試器則是gdb。兩者相互配合共 同完成調(diào)試過程。第四步,系統(tǒng)測(cè)試。整個(gè)軟件系統(tǒng)編譯過程,嵌入式系統(tǒng)的硬件一般采用專門的測(cè)試儀器進(jìn)行測(cè)試,而軟件則需要有相關(guān)的測(cè)試技術(shù)和測(cè)試工具的支持, 并要采用特定的測(cè)試策略。測(cè)試技術(shù)指的是軟件測(cè)試的專門途徑,以及能夠更加有效地運(yùn)用這些途徑的特定方法。在嵌入式軟件測(cè)試中,常常要在基于目標(biāo)機(jī)的測(cè)試 和基于宿主機(jī)的測(cè)試之間做出折衷?;谀繕?biāo)機(jī)的測(cè)試需要消耗較多的時(shí)間和經(jīng)費(fèi),而基于宿主機(jī)的測(cè)試雖然代價(jià)較小,但畢竟是在仿真環(huán)境中進(jìn)行的,因此難以完 全反映軟件運(yùn)行時(shí)的實(shí)際情況。 Linux內(nèi)核源代碼概述  首先研究 Linux 源代碼樹的頂層目錄,它通常(但不總是)位于 /usr/src/linux。我們不會(huì)研究得過于詳細(xì),因?yàn)?Linux 源代碼經(jīng)常會(huì)發(fā)生變化,但是,我們將嘗試讓給出的信息足以找出特定驅(qū)動(dòng)程序或函數(shù)的位置?! akefile:這個(gè)文件是整個(gè)源代碼樹的頂層 makefile。它定義了很多實(shí)用的變量和規(guī)則,比如默認(rèn)的 gcc 編譯標(biāo)記。  Documentation/:這個(gè)目錄中包含很多關(guān)于配置內(nèi)核、運(yùn)行 ramdisk 等任務(wù)的實(shí)用信息(但通常是過時(shí)的)。不過,與不同配置選項(xiàng)相應(yīng)的幫助條目并不在這里 —— 它們?cè)诿總€(gè)源代碼目錄的 Kconfig 文件中?! rch/:所有與體系結(jié)構(gòu)相關(guān)的代碼都在這個(gè)目錄以及 include/asm 目錄中。在此目錄中,每種體系結(jié)構(gòu)都有自己的目錄。例如,用于基于 PowerPC 的計(jì)算機(jī)的代碼位于 arch/ppc 目錄中。在這些目錄里,可以找到底層內(nèi)存管理、中斷處理、早期初始化、匯編例程,等等?! rypto/:這是內(nèi)核本身所用的加密 API?! rivers/:按照慣例,在此目錄的子目錄中可以找到運(yùn)行外圍設(shè)備的代碼。包括視頻驅(qū)動(dòng)程序、網(wǎng)卡驅(qū)動(dòng)程序、底層 SCSI 驅(qū)動(dòng)程序,以及其他類似的驅(qū)動(dòng)程序。例如,在 drivers/net 中可以找到大部分網(wǎng)卡驅(qū)動(dòng)程序。將一類驅(qū)動(dòng)程序組合在一起的某些更高層代碼,可能會(huì)(也可能不會(huì))像底層驅(qū)動(dòng)程序本身那些包含在同一目錄中?! s/:通用文件系統(tǒng)的代碼(稱做 VFS,即 Virtual File System)和各個(gè)不同文件系統(tǒng)的代碼都可以在這個(gè)目錄中找到。ext2 文件系統(tǒng)是在 Linux 中最常廣泛使用的文件系統(tǒng)之一。在 fs/ext2 中可以找到讀取 ext2 格式的代碼。并不是所有文件系統(tǒng)都會(huì)編譯或運(yùn)行。對(duì)某些尋找內(nèi)核項(xiàng)目的人而言,更生僻的文件系統(tǒng)永遠(yuǎn)都是理想的候選者?! nclude/:在 .c 文件的開頭所包含的大部分頭文件都可以在這個(gè)目錄中找到。 asm 目錄下是與體系結(jié)構(gòu)相關(guān)的包含(include )文件。部分內(nèi)核構(gòu)建過程創(chuàng)建從 asm 指定 asm 的符號(hào)鏈接。這樣,無需將其固定編碼到 .c 文件 include 就可以獲得用于那個(gè)體系結(jié)構(gòu)的正確文件。其他目錄中包含的是 非體系結(jié)構(gòu)相關(guān) 的頭文件。如果在不只一個(gè) .c 文件中使用了某個(gè)結(jié)構(gòu)體、常量或者變量,那么它可能應(yīng)該放入其中一個(gè)頭文件中?! nit/:這個(gè)目錄中的文件包括 、創(chuàng)建 早期用戶空間(early userspace) 的代碼,以及其他初始化代碼。可以認(rèn)為 是內(nèi)核“粘合劑(glue)”。在下一部分將深入討論 。早期用戶空間提供了 Linux 內(nèi)核引導(dǎo)起來時(shí)所需要的功能,而這些功能并不需要在內(nèi)核本身運(yùn)行?! pc/:IPC 的意思是 進(jìn)程間通信(interprocess munication)。它包含了共享內(nèi)存、信號(hào)量以及其他形式 IPC 的代碼?! ernel/:不適合放在任何其他位置的通用內(nèi)核級(jí)代碼位于此處。這里有高層系統(tǒng)調(diào)用代碼,以及 printk() 代碼、調(diào)度程序、信號(hào)處理代碼,等等。文件名包含很多信息,所以可以使用 ls k
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1