版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 外文文獻(xiàn)閱讀與翻譯</b></p><p> Nucleus PLUS</p><p> Nucleus PLUS is a real-time, preemptive, multitasking kernel designed for time-critical embedded applications. Approximatel
2、y 95% of Nucleus PLUS is written in ANSI C.Because of this, Nucleus PLUS is extremely portable and is currently available for use with most microprocessor families.</p><p> Nucleus PLUS is typically impleme
3、nted as a C library. Real-time Nucleus PLUS applications are linked with the Nucleus PLUS library. The resulting object may be downloaded to the target or placed in ROM. In a typical target environment, the binary image
4、of the Nucleus PLUS instruction area, assuming all services are used, requires roughly 20 Kbytes of memory.</p><p> Accelerated Technology.s software development practices facilitate clarity, modularity, re
5、liability, reusability, and ease of maintenance. Nucleus PLUS is comprised of multiple software components. Each software component has a unique purpose and a specific external interface to other components. The composit
6、ion of each Nucleus PLUS software component is discussed in greater detail in subsequent chapters.</p><p> Accelerated Technology (ATI) uses a software component methodology. A software component has a sing
7、le, clear purpose. Software components are typically comprised of several C and/or assembly language files. Each software component provides a well defined external interface. Utilization of a component is accomplished t
8、hrough use of its this external interface. With few exceptions, access to global data structures within a component is not allowed outside of the component. Because of this componen</p><p> Nucleus PLUS is
9、typically implemented as a C library. Real-time Nucleus PLUS applications are linked with the Nucleus PLUS library. The resulting object may then be downloaded to the target or placed in ROM.</p><p> NUCLEU
10、S.LI is typically the file name of the Nucleus PLUS library. This is built with the batch file BUILD_LI.BAT. The contents of BUILD_LI.BAT are specific to the development tool being used.</p><p> In processo
11、r architectures that have both supervisor and user modes of operation, Nucleus PLUS application tasks typically run in supervisor mode. This is because application tasks make direct calls to operating system services tha
12、t utilize privileged instructions. This method reduces service call overhead and is also much easier to implement. Of course, this method allows the tasks to access anything and everything.</p><p> The user
13、 is responsible for providing its own initialization routine, which is called Application Initialize. This routine should create the tasks, queues, and other system objects that are required when the system starts. If th
14、e application does not utilize dynamic creation/deletion of system objects during run-time, all of the required system objects may be created in Application_Initialize.Multitasking begins immediately after the user’s App
15、lication Initialize routine returns.</p><p> In some target environments, the low-level system initialization files, INT.S, INT.ASM, or INT.SRC may require modification. These files initialize the system ti
16、mer interrupt, available memory, and other entities that are inherently processor or board specific.</p><p> All user code that references Nucleus PLUS services and/or data types must include the file NUCLE
17、US.H. This file contains data type definitions, constant definitions, and function prototypes for all of the Nucleus PLUS services. This file is specific to each port of Nucleus PLUS.</p><p> The main Nucle
18、us PLUS include file, NUCLEUS.H, contains function prototypes that match those defined in the Nucleus PLUS reference manual. However, the NU_* functions do not really exist. For most Nucleus PLUS services, there exists a
19、 function that really does the work and a .shell. Function that checks for errors in the user’s request before calling the real function. Depending on the error checking conditional define,NU_NO_ERROR_CHECKING, the Nucle
20、us PLUS service call is mapped, through macro </p><p> There are several conditional flags available when compiling application programs, Nucleus PLUS application elements may disable error checking on para
21、meters supplied to Nucleus PLUS services by defining NU_NO_ERROR_CHECKING with a compiler command line option. This results in a substantial increase in run-time performance, and also reduces code size. Application data
22、structures defined in NUCLEUS.H may be mapped directly to the internal Nucleus PLUS data structures by defining the NU_DEBUG opti</p><p> Processor and development tool dependencies in Nucleus PLUS have bee
23、n isolated to four files. Three of the files (INT.?, TCT.?, and TMT.?) are written in assembly language. These files provide the low-level, run-time environment for the underlying target environment. The third file (NUCL
24、EUS.H) is included, either directly or indirectly, by all of the files in the system. This file defines various data types and other processor and development tool specific information.</p><p> The INT.[S,
25、ASM, or SRC] file is responsible for providing low-level</p><p> Initialization and services for accessing the processors interrupt vector table. This</p><p> File also contains default Interr
26、upt Service Routine (ISR) handlers. The function</p><p> INT_Initialize is specific to a given target board. For example, if the target</p><p> Processor is not able to generate an internal ti
27、mer interrupt, setting up the timer</p><p> Interrupt becomes board specific. This means that a modified version of INT might be necessary for different boards even though they share the same processor arch
28、itecture.</p><p> The TCT.[S, ASM, or SRC] file is primarily responsible for transferring control between threads and the system. A thread is defined as either a Nucleus PLUS task or a Nucleus PLUS HISR. Th
29、is file contains all of the code necessary to perform context switches between tasks and HISRs. Additionally, this file contains code necessary for handling protection conflicts and task signals.</p><p> Th
30、e TMT.[S, ASM, or SRC] file is primarily responsible for handling Nucleus PLUS timer services, including the timer interrupt handler. In most ports, the timer interrupt handler is designed for low-overhead operation when
31、 no timer has expired.</p><p> The NUCLEUS.H include file is included by all Nucleus PLUS source files – either directly or indirectly. Application files that reference Nucleus PLUS services and/or data typ
32、es must also include NUCLEUS.H. This file defines a variety of data types, interrupt lockout/enable values, the number of interrupt vectors, the size of system control blocks, and other target specific information.</p
33、><p> There are several different version layers in a Nucleus PLUS system. The system version is defined by the ASCII string RLD_Release_String in the file RLD.C. This version contains the current version of t
34、he generic C source code as well as the version of the target specific code. For example, the release string for version 1.1 of the DOS/Borland target specific code with version 2.2 of the generic code would be:</p>
35、;<p> Copyright (c) 199x ATI - Nucleus PLUS - DOS Borland C Version 1.1.G2.2. Nucleus PLUS also has version information for each file. The version information in the header block of each file identifies the versi
36、on of that specific file. In many cases, the version in the file header is quite different than the version of the system. Each function in a file also contains version information in its header. The version information
37、specified near the bottom of each function’s header indicates what changes</p><p> Nucleus 操作系統(tǒng)</p><p> Nucleus PLUS 是為實(shí)時(shí)嵌入式應(yīng)用而設(shè)計(jì)的一個(gè)搶先式多任務(wù)操作系統(tǒng)內(nèi)核,其95%的代碼是用ANSIC 寫成的,因此非常便于移植并能夠支持大多數(shù)類型的處理器。從實(shí)現(xiàn)角度
38、來看,Nucleus PLUS 是一組C 函數(shù)庫,應(yīng)用程序代碼與核心函數(shù)庫連接在一起,生成一個(gè)目標(biāo)代碼,下載到目標(biāo)板的RAM 中或直接燒錄到目標(biāo)板的ROM 中執(zhí)行。在典型的目標(biāo)環(huán)境中,Nucleus PLUS 核心代碼區(qū)一般不超過20K 字節(jié)大小。</p><p> Accelerated Technologies 軟件開發(fā)實(shí)踐證明具有幫助清晰,組件性,可靠性,可再用性及維護(hù)容易性。Nucleus PLUS 采
39、用了軟件組件的方法。每個(gè)組件具有單一而明確的目的,通常由幾個(gè)C 及匯編語言模塊構(gòu)成,提供清晰的外部接口,對組件的引用就是通過這些接口完成的。Nucleus PLUS 的軟件組件的構(gòu)成。</p><p> Nucleus PLUS 采用了軟件組件的方法。每個(gè)組件具有單一而明確的目的,通常由幾個(gè)C及匯編語言模塊構(gòu)成,提供清晰的外部接口,對組件的引用就是通過這些接口完成的。除了少數(shù)一些特殊情況外,不允許從外部對組件內(nèi)
40、的全局進(jìn)行訪問。由于采用了軟件組件的方法,Nucleus PLUS 各個(gè)組件非常易于替換和復(fù)用。</p><p> Nucleus PLUS是一組C函數(shù)庫。 實(shí)時(shí)Nucleus PLUS應(yīng)用將連接Nucleus PLUS 庫文件。Nucleus PLUS 庫文件:NUCLEUS.LI,它用于建立批處理文BUILD_LI.BAT,開發(fā)工具將使用BUILD_LI.Nucleus PLUS 應(yīng)用層任務(wù)運(yùn)行在管態(tài)模式。
41、這便于應(yīng)用層任務(wù)直接調(diào)用操作系統(tǒng)服務(wù)的特權(quán)指令。這種方法有效地降低服務(wù)程序的調(diào)用的頻繁性,也易于執(zhí)行。當(dāng)然,這種方法允許任務(wù)訪問任何事件。</p><p> Application Initialize。系統(tǒng)開始運(yùn)行時(shí),它用于創(chuàng)建任務(wù)、隊(duì)列、其他系統(tǒng)目標(biāo)。在某些目標(biāo)環(huán)境中,低級系統(tǒng)初始化文件INT.S 、INT.ASM 、INT.SRC 根據(jù)要求修改。這些文件初始化系統(tǒng)時(shí)鐘中斷、有效內(nèi)存、其他內(nèi)部處理機(jī)或?qū)S媚?/p>
42、標(biāo)板。</p><p> NUCLEUS PLUS 主要包含的文件NUCLEUS.H,它包含了在NUCLEUS PLUS 參考手冊中定義函數(shù)的原型。但是NU_*函數(shù)并不真實(shí)存在。對于NUCLEUS PLUS 內(nèi)核服務(wù),在調(diào)用真實(shí)函數(shù)服務(wù)之前,根據(jù)用戶的請求,確實(shí)存在一個(gè)函數(shù)在工作和一個(gè)外殼(shell)在檢測錯(cuò)誤。根據(jù)</p><p> 錯(cuò)誤檢測條件的定義NU_NO_ERROR_CHE
43、CKING,Nucleus PLUS 內(nèi)核服務(wù)被映像,并通過宏的替換來給于合適的基本函數(shù)。在不請求時(shí),這完全有利于消除錯(cuò)誤檢測。</p><p> 當(dāng)編譯應(yīng)用程序時(shí),這里有幾個(gè)條件標(biāo)志有效。通過編譯命令行選項(xiàng)定義NUCLEUS PLUS服務(wù)參數(shù)NU_NO_ERROR_CHECKING來禁止NUCLEUS PLUS應(yīng)用基礎(chǔ)進(jìn)行錯(cuò)誤檢測。這將導(dǎo)致在一個(gè)實(shí)時(shí)執(zhí)行中時(shí)間真正地增加,并降低代碼大小。在編譯過程中,通過定義
44、NU_DEBUG選項(xiàng)使定義在NUCLEUS.H中的應(yīng)用數(shù)據(jù)結(jié)構(gòu)被直接影像到內(nèi)部的NUCLEUS PLUS數(shù)據(jù)結(jié)構(gòu)里。在一個(gè)源級調(diào)試環(huán)境中,這也允許用戶直接檢查每個(gè)</p><p> NUCLEUS PLUS數(shù)據(jù)結(jié)構(gòu)的內(nèi)部。如果使用了NU_DEBUG選項(xiàng),能夠非常好地重建所有的NUCLEUSPLUS源代碼。</p><p> 處理器和開發(fā)工具取決NUCLEUS PLUS中四個(gè)絕對的文件。
45、其中這三個(gè)文件(INT.?,TCT.?,and TMT.?)是用匯編寫的。這些文件為基本的目標(biāo)環(huán)境提供低級、運(yùn)行期環(huán)境。第三個(gè)文件NUCLEUS.H直接或非直接包含在系統(tǒng)的所有文件中。該文件定義了變量數(shù)據(jù)、類型以及其他處理器和開發(fā)工具指定的信息。</p><p> INT(.S、ASM、SRC)文件負(fù)責(zé)低級初始化、中斷向量表存取服務(wù)。它也包含缺省的中斷服務(wù)例程處理程序。函數(shù)INT_Initialize 專用于已
46、知的目標(biāo)板的初始化。例如,目標(biāo)處理機(jī)不能產(chǎn)生內(nèi)部時(shí)鐘中斷,就應(yīng)建立目標(biāo)板專用時(shí)鐘中斷。也就是說盡管他們使用相同的處理機(jī)體系結(jié)構(gòu),但是對于不同的目標(biāo)板有必要對初始化文件INT 作相應(yīng)的修改。</p><p> TCT(.S、.ASM、.SRC) 文件主要負(fù)責(zé)線程與系統(tǒng)間傳輸。一個(gè)線程定義任何一個(gè)NUCLEUS PLUS 操作系統(tǒng)任務(wù)和高級中斷。該文件包含所有在任務(wù)和高級中斷之間能執(zhí)行上下毫不相關(guān)事件的代碼。另外,
47、它還包含處理保護(hù)沖突和任務(wù)信號的代碼。</p><p> TMS(.S、.ASM、.SRC) 文件主要負(fù)責(zé)NUCLEUS PLUS 操作系統(tǒng)時(shí)鐘的服務(wù),其中包含中斷定時(shí)處理程序。在許多端口中,當(dāng)沒有時(shí)鐘發(fā)出時(shí),中斷定時(shí)處理程序用于處理頻繁的低級操作。</p><p> NUCLEUS.H 文件通過NUCLEUS PLUS 操作系統(tǒng)源文件直接或間接包含。以NUCLEUS PLUS操作系統(tǒng)
48、服務(wù)或數(shù)據(jù)類型為參考編寫應(yīng)用文件必須包含NUCLEUS.H 文件。該文件定義變量數(shù)據(jù)類型、中斷關(guān)閉或開放值、中斷向量數(shù)目、系統(tǒng)控制塊大小以及其他目標(biāo)指定信息。</p><p> 操作系統(tǒng)版本控制文件RLD.C。該系統(tǒng)版本是在RLD.C 文件中通過ASCII 碼字符串RLD_Release_String 來定義的。該版本包含了通用C 語言源代碼的當(dāng)前版本以及目標(biāo)板指定代碼的版本。例如,基于DOS 1.1 版本/以
49、通用C 代碼版本2.2 編寫的Borland 目標(biāo)指定代碼。</p><p> Copyright (c) 199x ATT - Nucleus PLUS - DOS Rot-land C Version 1.1 .G2.2”NUCLEUS PLUS 的每個(gè)文件也都包含版本信息。版本信息包含在每個(gè)文件的頭塊,它關(guān)聯(lián)到指定文件的版本。在許多例子中,在文件頭的版本與系統(tǒng)版本很不相同。在文件中的每個(gè)函數(shù)也在它的頭文件
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 外文翻譯--自動(dòng)焊接操作系統(tǒng)
- 外文翻譯--自動(dòng)焊接操作系統(tǒng)
- 外文翻譯--自動(dòng)焊接操作系統(tǒng)
- 外文翻譯--自動(dòng)焊接操作系統(tǒng).doc
- 外文翻譯--自動(dòng)焊接操作系統(tǒng)(英文)
- 外文翻譯--自動(dòng)焊接操作系統(tǒng).doc
- 外文翻譯--自動(dòng)焊接操作系統(tǒng).doc
- 外文翻譯--自動(dòng)焊接操作系統(tǒng).doc
- 外文翻譯--自動(dòng)焊接操作系統(tǒng).doc
- Nucleus實(shí)時(shí)操作系統(tǒng)在ARM中應(yīng)用的研究.pdf
- 外文翻譯--rtx-51 實(shí)時(shí)操作系統(tǒng)
- 外文翻譯--rtx-51實(shí)時(shí)操作系統(tǒng)
- 操作系統(tǒng)課程設(shè)計(jì)-- 操作系統(tǒng)
- 淺談操作系統(tǒng)(操作系統(tǒng)論文)
- 操作系統(tǒng)課程設(shè)計(jì)——操作系統(tǒng)課程設(shè)計(jì)模擬操作系統(tǒng)
- [雙語翻譯]安卓外文翻譯--安卓操作系統(tǒng)的防盜云應(yīng)用
- 外文翻譯基于android操作系統(tǒng)的座位管理系統(tǒng)的研究和實(shí)現(xiàn)
- 操作系統(tǒng)a
- 操作系統(tǒng)期末試題雙語含翻譯
- 操作系統(tǒng)
評論
0/150
提交評論