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

正文內(nèi)容

arm嵌入式開發(fā)流程和開發(fā)工具(編輯修改稿)

2025-05-04 05:08 本頁面
 

【文章內(nèi)容簡介】 內(nèi)核,為程序員提供了高效的實時多任務調(diào)度、中斷管理,實時的系統(tǒng)資源以及實時的任務間通信。在各種CPU平臺上提供了統(tǒng)一的編程接口和一致的運行特性,盡可能的屏蔽了不同CPU之間的底層差異。應用程序員可以將盡可能多的精力放在應用程序本身,而不必再去關心系統(tǒng)資源的管理。基于VxWorks操作系統(tǒng)的應用程序可以在不同CPU平臺上輕松移植。VxWorks是一種功能強大而且比較復雜的操作系統(tǒng),包括了進程管理、存儲管理、設備管理、文件系統(tǒng)管理、網(wǎng)絡協(xié)議及系統(tǒng)應用等幾個部分。VxWorks只占用了很小的存儲空間,并可高度裁減,保證了系統(tǒng)能以較高的效率運行。所以,僅僅依靠人工編程調(diào)試,很難發(fā)揮它的功能并設計出可靠、高效的嵌入式系統(tǒng),必須要有與之相適應的開發(fā)工具。TornadoII就是為開發(fā)VxWorks應用系統(tǒng)提供的集成開發(fā)環(huán)境,TornadoII中包含的工程管理軟件,可以將用戶自己的代碼與VxWorks的核心有效的組合起來,可以按用戶的需要裁剪配置VxWorks內(nèi)核;vxSim原型仿真器可以讓程序員不用目標機的情況下,直接開發(fā)系統(tǒng)原型,作出系統(tǒng)評估;功能強大的CrossWind調(diào)試器可以提供任務級和系統(tǒng)級的調(diào)試模式,可以進行多目標機的聯(lián)調(diào);優(yōu)化分析工具可以幫助程序員從多種方式真正地觀察、跟蹤系統(tǒng)的運行,排除錯誤,優(yōu)化性能。 ADS與MultiICE簡介本節(jié)將簡單介紹ARM開發(fā)軟件ADS(ARM Developer Suite)和MultiICE硬件仿真器。,將以一個簡單的例子描述如何在ADS集成開發(fā)環(huán)境下編寫、編譯并調(diào)試應用程序。ARM ADS全稱為ARM Developer Suite,是ARM公司推出的用于ARM程序設計、開發(fā)和調(diào)試的集成開發(fā)工具。它支持Windows NT4,Windows 2000,Windows 9Windows 9Windows XP和Windows Me等操作系統(tǒng)。ADS由命令行開發(fā)工具,ARM運行時庫,圖形化集成開發(fā)環(huán)境(Code Warrior和AXD),實用程序和支持軟件組成。下面將就每個部分作詳細的介紹。本文以ADS ,并假設已經(jīng)將ADS “C:\Program Files\ARM\ADSv1_2\”目錄下。 命令行開發(fā)工具ADS包含一系列基于命令行的ARM編譯、匯編、鏈接等工具,它們位于ADS安裝目錄的bin子目錄下(C:\Program Files\ARM\ADSv1_2\Bin)。它們既可以在命令控制臺環(huán)境下使用,同時由于已被嵌入到了ADS的圖形界面中,所以也可以在圖形界面下通過參數(shù)設置等手段來使用。ARM C(C++)編譯器ADS包含包含多種C編譯器,包括:armcc,tcc,armcpp和tcpp。其中armcc是ARM C編譯器,armcpp是ARM C++編譯器,tcc是Thumb C 編譯器,tcpp是Thumb C++ 編譯器。ARM匯編器(armasm)armasm是ARM和Thumb的匯編器. 它對用ARM 匯編語言和Thumb 匯編語言寫的源代碼進行匯編。ARM鏈接器(armlink)armlink是ARM連接器。該命令既可以將編譯得到的一個或多個目標文件和相關的一個或多個庫文件進行鏈接,生成一個可執(zhí)行文件,也可以將多個目標文件部分鏈接成一個目標文件,以供進一步的鏈接。ARM鏈接器生成的是ELF格式的可執(zhí)行映像文件。符號調(diào)試器(armsd)armsd是ARM 和Thumb的符號調(diào)試器。它能夠進行源碼級的程序調(diào)試。用戶可以在用C或匯編語言寫的代碼中進行單步調(diào)試,設置斷點,查看變量值和內(nèi)存單元的內(nèi)容。 ARM運行時庫ADS提供以下的:在ADS軟件安裝路徑的lib目錄(C:\Program Files\ARM\ADSv1_2\lib)下有兩個子目錄:armlib和cpplib。這兩個子目錄提供了兩種運行時庫來支持被編譯的C和C++代碼,它們分別是:ANSI C函數(shù)庫和C++函數(shù)庫。環(huán)境變量ARMLIB必須被設置成指向庫路徑。另外一種指定ARM C和ARM C++庫路徑的方法是,在鏈接的時候使用操作選項libpath directory(directory代表庫所在的路徑),來指明要裝載的庫的路徑。需要說明的是,ADS安裝成功后,ARMLIB被缺省指向到C:\Program Files\ARM\ADSv1_2\LIB目錄,因此通常不用進行設置鏈接器就會自動從ARMLIB指定的庫路徑中找出這兩個函數(shù)庫的路徑。ANSI C函數(shù)庫:(armlib)ARM C 庫包含浮點代數(shù)運算庫、數(shù)學庫等各類庫函數(shù)。與這些庫相應的頭文件在C:\Program Files\ARM\ADSv1_2\include目錄中。這個C函數(shù)庫是由以下幾部分組成:1)在ISO C標準中定義的函數(shù);2)在semihosted環(huán)境下(semihosting是針對ARM目標機的一種機制,它能夠根據(jù)應用程序代碼的輸入/輸出請求,與運行有調(diào)試功能的主機通訊。這種技術(shù)允許主機為通常沒有輸入和輸出功能的目標硬件提供主機資源)用來實現(xiàn)C庫函數(shù)的與目標相關的函數(shù);3)被C和C++編譯器所調(diào)用的支持函數(shù)。ARM C 庫提供了額外的一些部件支持C++,并為不同的結(jié)構(gòu)體系和處理器編譯代碼。ARM C庫函數(shù)是以二進制格式提供的,并禁止修改。如果讀者想對庫函數(shù)創(chuàng)建新的實現(xiàn)的話,可以把這個新的函數(shù)編譯成目標文件,然后在鏈接的時候把它包含進來。這樣在鏈接的時候,使用的是新的函數(shù)實現(xiàn)而不是原來的庫函數(shù)。通常情況下,為了創(chuàng)建依賴于目標的應用程序,在ANSI C庫中只有很少的幾個函數(shù)需要實現(xiàn)重建。C++函數(shù)庫:這個子目錄包含了Rogue Wave C++庫和C++支持函數(shù)庫。Rogue Wave C++庫和C++支持函數(shù)庫合在一起被稱為ARM C++庫。與這些庫相應的頭文件安裝在C:\Program Files\ARM\ADSv1_2\include目錄下。這個庫是由以下幾部分組成的:
點擊復制文檔內(nèi)容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1