色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > VxWorks Tornado基礎(chǔ)構(gòu)成配置

          VxWorks Tornado基礎(chǔ)構(gòu)成配置

          作者: 時(shí)間:2016-09-12 來(lái)源:網(wǎng)絡(luò) 收藏

          1.1Tornado組件

          本文引用地址:http://cafeforensic.com/article/201609/304991.htm

          開(kāi)始之前先考慮一下下面5個(gè)問(wèn)題,后面會(huì)給出這些問(wèn)題的答案。

          什么是Tornado?

          什么是VxWorks?

          怎樣使用Tornado和VxWorks?

          Tornado都提供了哪些方便?

          這些文件存放在什么地方?

          什么是Tornado?

          ┌─────────┐ ┌─────────┐

          │Real-Time System │ │Development Tools│

          └─────────┘ └─────────┘

          │ Networking │

          ┴────────┬─────────┴

          Tornado是一個(gè)開(kāi)發(fā)實(shí)時(shí)嵌入式應(yīng)用程序的集成開(kāi)發(fā)環(huán)境。

          它主要包括下列組件:

          ·VxWorks實(shí)時(shí)操作系統(tǒng),用來(lái)嵌入式或運(yùn)行時(shí)間要求嚴(yán)格的應(yīng)用程序。

          ·測(cè)試、定時(shí)和調(diào)試用的開(kāi)發(fā)工具。

          ·網(wǎng)絡(luò)組件允許進(jìn)行下列操作

          ·處理器內(nèi)部通信

          ·遠(yuǎn)程文件訪問(wèn)

          ·遠(yuǎn)程命令/函數(shù)執(zhí)行

          ·通過(guò)網(wǎng)絡(luò)啟動(dòng)

          開(kāi)發(fā)工具

          Tornado開(kāi)發(fā)工具包括:

          ·Launch - 加載Tornado工具

          ·WindSh - 與目標(biāo)機(jī)(Target)進(jìn)行交互(只要成功運(yùn)行目標(biāo)服務(wù)器就可以啟動(dòng)windsh,方法:?jiǎn)螕魌ornado的tools->shell菜單項(xiàng)即可啟動(dòng) windsh)

          ·CrossWind - 源碼級(jí)調(diào)試器

          ·Browser - 顯示系統(tǒng)信息

          ·Project Facility - 配置應(yīng)用程序或者VxWorks

          ·WindView - 多任務(wù)應(yīng)用程序分析器

          ·Simulator - 在主機(jī)操作系統(tǒng)上運(yùn)行的VxWorks目標(biāo)機(jī)仿真程序

          這些工具都可以通過(guò)Tcl定制,包括:

          ·增加新的功能

          ·定制用戶接口

          ·利用一些常駐目標(biāo)機(jī)工具

          幾乎所有的Wind River工具都可以通過(guò)Tool Command Language(Tcl)定制,它是一個(gè)類似于Bourne Shell或C的腳本語(yǔ)言。

          更多關(guān)于Tcl的信息參見(jiàn)《Tcl and the Tk TollKit》,John Ousterhout著。

          Tcl允許:

          ·增加用戶定義命令

          ·定制Tornado GUI,增加新菜單項(xiàng)、按鈕等等。

          Tornado可以運(yùn)行在Solaris 2.51,2.6和2.7上;Windows 95,98和NT上;以及HP-UX 10主機(jī)上。

          UNIX和Windows下的一些GUI定制可能存在不一致。

          Tornado綁定了對(duì)GNU C++的支持。

          實(shí)時(shí)系統(tǒng)

          ┌────────┐

          ┌───────┐ │ Memory Mgmt.│ ┌──────┐

          │ File System │ └────────┘ │ I/O System │

          └───────┘ Kernel └──────┘

          ┌───────┐ ┌───────┐

          │Device Driver │ │ Network Stack│

          └───────┘ └───────┘

          實(shí)時(shí)操作系統(tǒng)中運(yùn)行的應(yīng)用程序可以有嚴(yán)格的響應(yīng)時(shí)間。(即可以制定多少時(shí)間內(nèi)必須做出響應(yīng)或報(bào)錯(cuò))

          實(shí)時(shí)操作系統(tǒng)具有多任務(wù)內(nèi)核,完成以下功能:

          ·實(shí)時(shí)任務(wù)調(diào)度(基于優(yōu)先級(jí)的搶占式調(diào)度)

          ·任務(wù)間的通信

          ·互斥

          其他標(biāo)準(zhǔn)外設(shè)都是以庫(kù)的形式提供出來(lái),不作為內(nèi)核部分。

          實(shí)時(shí)操作系統(tǒng)與非實(shí)時(shí)系統(tǒng)的區(qū)別:

          ·基于優(yōu)先級(jí)的搶占式調(diào)度

          ·響應(yīng)速度更快

          ·內(nèi)核更小并且可以配置(微內(nèi)核架構(gòu))

          性能優(yōu)勢(shì)

          所有任務(wù)運(yùn)行于共享地址空間內(nèi)(windows下進(jìn)程運(yùn)行在虛擬地址空間內(nèi))

          RAM fooLib tTaskA

          int fooVal; ┌────fooSet(4)

          text void fooSet(int x){ ─┤ tTaskB

          data ─────fooVal = x; └──────────fooSet(99)

          bss }

          所有任務(wù)運(yùn)行于特權(quán)模式。

          ·在Unix/NT系統(tǒng)中,所有進(jìn)程獨(dú)立存儲(chǔ)各自的data段和bss段,共享text段,即所有的進(jìn)程都調(diào)用同一地址下的text段執(zhí)行相同的代碼。

          ·在VxWorks系統(tǒng)中,當(dāng)任務(wù)訪問(wèn)到某個(gè)模塊的text、data或bss段時(shí),所有任務(wù)都是訪問(wèn)的相同物理地址。

          ·所有任務(wù)都運(yùn)行于共享地址空間內(nèi)

          +使得任務(wù)間的通信更加簡(jiǎn)單快捷

          +使得上下文的切換更加迅速(不需要保存和回復(fù)虛擬地址上下文關(guān)系)

          +一個(gè)不正常的任務(wù)可能導(dǎo)致整個(gè)系統(tǒng)崩潰

          ·所有任務(wù)都運(yùn)行于特權(quán)模式

          +沒(méi)有系統(tǒng)調(diào)用的開(kāi)銷,所有VxWorks系統(tǒng)程序的調(diào)用都像普通程序調(diào)用一樣。

          交叉開(kāi)發(fā)

          Host Target

          ┌───────┐ RS-232 ┌──────┐

          │ Tornado │ ──────────── │ VxWorks │

          └───────┴─┐ ┌─┴──────┘

          ethernet ─────┴─────────┴─────────

          上圖為典型的Tornado開(kāi)發(fā)環(huán)境配置

          ·在host機(jī)上通過(guò)一些工具完成編碼和編譯

          +編輯

          +通過(guò)界面或者命令行完成編譯/裝配/鏈接

          +源代碼管理(ClearCase, PVCS, Visual Source Safe,...)

          ·通過(guò)host上的Tornado工具完成target上的測(cè)試/調(diào)試工作

          +下載目標(biāo)模塊

          +執(zhí)行

          +源碼級(jí)調(diào)試

          +性能監(jiān)測(cè)

          ·典型的開(kāi)發(fā)周期循環(huán)包括在主機(jī)上反復(fù)的編碼和編譯,下載到目標(biāo)機(jī),并在目標(biāo)機(jī)上測(cè)試代碼的運(yùn)行,然后再回到主機(jī)對(duì)代碼做進(jìn)一步的修改。

          Tornado發(fā)布

          ·所支持板卡的Boot Rom

          +與板卡有關(guān)

          +通過(guò)網(wǎng)絡(luò)從主機(jī)上下載vxworks

          +Turnkey for standard board(不能理解-_-)

          ·產(chǎn)品的CD-ROM包括

          +運(yùn)行在主機(jī)上的Tornado工具

          +運(yùn)行于目標(biāo)機(jī)的VxWorks操作系統(tǒng)

          +風(fēng)河公司支持的bsp

          ·編譯器等

          ·關(guān)于VxWorks和Tornado的幫助手冊(cè)

          ·一些SPARC板采用OpenBoot方式下載bootRom程序,然后啟動(dòng)VxWorks

          ·Tornado的安裝目錄中自帶包括編譯器、連接器在內(nèi)的GNU工具包。Tornado2.0板與Tornado1.0.1板使用同樣的C編譯器GCC2.7.2;仿真器(simulator)下的C++代碼的編譯器則基于EGCS1.0.2或EGCS1.0.3。


          上一頁(yè) 1 2 3 下一頁(yè)

          關(guān)鍵詞:

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉