

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 外文文獻閱讀與翻譯</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 操作系統</p><p> Nucleus PLUS 是為實時嵌入式應用而設計的一個搶先式多任務操作系統內核,其95%的代碼是用ANSIC 寫成的,因此非常便于移植并能夠支持大多數類型的處理器。從實現角度
38、來看,Nucleus PLUS 是一組C 函數庫,應用程序代碼與核心函數庫連接在一起,生成一個目標代碼,下載到目標板的RAM 中或直接燒錄到目標板的ROM 中執(zhí)行。在典型的目標環(huán)境中,Nucleus PLUS 核心代碼區(qū)一般不超過20K 字節(jié)大小。</p><p> Accelerated Technologies 軟件開發(fā)實踐證明具有幫助清晰,組件性,可靠性,可再用性及維護容易性。Nucleus PLUS 采
39、用了軟件組件的方法。每個組件具有單一而明確的目的,通常由幾個C 及匯編語言模塊構成,提供清晰的外部接口,對組件的引用就是通過這些接口完成的。Nucleus PLUS 的軟件組件的構成。</p><p> Nucleus PLUS 采用了軟件組件的方法。每個組件具有單一而明確的目的,通常由幾個C及匯編語言模塊構成,提供清晰的外部接口,對組件的引用就是通過這些接口完成的。除了少數一些特殊情況外,不允許從外部對組件內
40、的全局進行訪問。由于采用了軟件組件的方法,Nucleus PLUS 各個組件非常易于替換和復用。</p><p> Nucleus PLUS是一組C函數庫。 實時Nucleus PLUS應用將連接Nucleus PLUS 庫文件。Nucleus PLUS 庫文件:NUCLEUS.LI,它用于建立批處理文BUILD_LI.BAT,開發(fā)工具將使用BUILD_LI.Nucleus PLUS 應用層任務運行在管態(tài)模式。
41、這便于應用層任務直接調用操作系統服務的特權指令。這種方法有效地降低服務程序的調用的頻繁性,也易于執(zhí)行。當然,這種方法允許任務訪問任何事件。</p><p> Application Initialize。系統開始運行時,它用于創(chuàng)建任務、隊列、其他系統目標。在某些目標環(huán)境中,低級系統初始化文件INT.S 、INT.ASM 、INT.SRC 根據要求修改。這些文件初始化系統時鐘中斷、有效內存、其他內部處理機或專用目
42、標板。</p><p> NUCLEUS PLUS 主要包含的文件NUCLEUS.H,它包含了在NUCLEUS PLUS 參考手冊中定義函數的原型。但是NU_*函數并不真實存在。對于NUCLEUS PLUS 內核服務,在調用真實函數服務之前,根據用戶的請求,確實存在一個函數在工作和一個外殼(shell)在檢測錯誤。根據</p><p> 錯誤檢測條件的定義NU_NO_ERROR_CHE
43、CKING,Nucleus PLUS 內核服務被映像,并通過宏的替換來給于合適的基本函數。在不請求時,這完全有利于消除錯誤檢測。</p><p> 當編譯應用程序時,這里有幾個條件標志有效。通過編譯命令行選項定義NUCLEUS PLUS服務參數NU_NO_ERROR_CHECKING來禁止NUCLEUS PLUS應用基礎進行錯誤檢測。這將導致在一個實時執(zhí)行中時間真正地增加,并降低代碼大小。在編譯過程中,通過定義
44、NU_DEBUG選項使定義在NUCLEUS.H中的應用數據結構被直接影像到內部的NUCLEUS PLUS數據結構里。在一個源級調試環(huán)境中,這也允許用戶直接檢查每個</p><p> NUCLEUS PLUS數據結構的內部。如果使用了NU_DEBUG選項,能夠非常好地重建所有的NUCLEUSPLUS源代碼。</p><p> 處理器和開發(fā)工具取決NUCLEUS PLUS中四個絕對的文件。
45、其中這三個文件(INT.?,TCT.?,and TMT.?)是用匯編寫的。這些文件為基本的目標環(huán)境提供低級、運行期環(huán)境。第三個文件NUCLEUS.H直接或非直接包含在系統的所有文件中。該文件定義了變量數據、類型以及其他處理器和開發(fā)工具指定的信息。</p><p> INT(.S、ASM、SRC)文件負責低級初始化、中斷向量表存取服務。它也包含缺省的中斷服務例程處理程序。函數INT_Initialize 專用于已
46、知的目標板的初始化。例如,目標處理機不能產生內部時鐘中斷,就應建立目標板專用時鐘中斷。也就是說盡管他們使用相同的處理機體系結構,但是對于不同的目標板有必要對初始化文件INT 作相應的修改。</p><p> TCT(.S、.ASM、.SRC) 文件主要負責線程與系統間傳輸。一個線程定義任何一個NUCLEUS PLUS 操作系統任務和高級中斷。該文件包含所有在任務和高級中斷之間能執(zhí)行上下毫不相關事件的代碼。另外,
47、它還包含處理保護沖突和任務信號的代碼。</p><p> TMS(.S、.ASM、.SRC) 文件主要負責NUCLEUS PLUS 操作系統時鐘的服務,其中包含中斷定時處理程序。在許多端口中,當沒有時鐘發(fā)出時,中斷定時處理程序用于處理頻繁的低級操作。</p><p> NUCLEUS.H 文件通過NUCLEUS PLUS 操作系統源文件直接或間接包含。以NUCLEUS PLUS操作系統
48、服務或數據類型為參考編寫應用文件必須包含NUCLEUS.H 文件。該文件定義變量數據類型、中斷關閉或開放值、中斷向量數目、系統控制塊大小以及其他目標指定信息。</p><p> 操作系統版本控制文件RLD.C。該系統版本是在RLD.C 文件中通過ASCII 碼字符串RLD_Release_String 來定義的。該版本包含了通用C 語言源代碼的當前版本以及目標板指定代碼的版本。例如,基于DOS 1.1 版本/以
49、通用C 代碼版本2.2 編寫的Borland 目標指定代碼。</p><p> Copyright (c) 199x ATT - Nucleus PLUS - DOS Rot-land C Version 1.1 .G2.2”NUCLEUS PLUS 的每個文件也都包含版本信息。版本信息包含在每個文件的頭塊,它關聯到指定文件的版本。在許多例子中,在文件頭的版本與系統版本很不相同。在文件中的每個函數也在它的頭文件
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 外文翻譯--自動焊接操作系統
- 外文翻譯--自動焊接操作系統
- 外文翻譯--自動焊接操作系統
- 外文翻譯--自動焊接操作系統.doc
- 外文翻譯--自動焊接操作系統(英文)
- 外文翻譯--自動焊接操作系統.doc
- 外文翻譯--自動焊接操作系統.doc
- 外文翻譯--自動焊接操作系統.doc
- 外文翻譯--自動焊接操作系統.doc
- Nucleus實時操作系統在ARM中應用的研究.pdf
- 外文翻譯--rtx-51 實時操作系統
- 外文翻譯--rtx-51實時操作系統
- 操作系統課程設計-- 操作系統
- 淺談操作系統(操作系統論文)
- 操作系統課程設計——操作系統課程設計模擬操作系統
- [雙語翻譯]安卓外文翻譯--安卓操作系統的防盜云應用
- 外文翻譯基于android操作系統的座位管理系統的研究和實現
- 操作系統a
- 操作系統期末試題雙語含翻譯
- 操作系統
評論
0/150
提交評論