[發(fā)明專利]一種加載運(yùn)行VxWorks實(shí)時(shí)保護(hù)進(jìn)程的方法及系統(tǒng)有效
| 申請(qǐng)?zhí)枺?/td> | 201810495580.4 | 申請(qǐng)日: | 2018-05-22 |
| 公開(公告)號(hào): | CN110515751B | 公開(公告)日: | 2023-05-12 |
| 發(fā)明(設(shè)計(jì))人: | 曹海浪;粟蕩;易榮武;李志遠(yuǎn);肖家博;唐軍;蔣曉艷;陳靜勇 | 申請(qǐng)(專利權(quán))人: | 中車株洲電力機(jī)車研究所有限公司 |
| 主分類號(hào): | G06F11/00 | 分類號(hào): | G06F11/00;G06F9/445 |
| 代理公司: | 北京聿華聯(lián)合知識(shí)產(chǎn)權(quán)代理有限公司 11611 | 代理人: | 朱繪;張文娟 |
| 地址: | 412001 湖*** | 國(guó)省代碼: | 湖南;43 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 加載 運(yùn)行 vxworks 實(shí)時(shí) 保護(hù) 進(jìn)程 方法 系統(tǒng) | ||
本發(fā)明公開了一種加載運(yùn)行VxWorks實(shí)時(shí)保護(hù)進(jìn)程的方法及系統(tǒng)。方法包括:基于內(nèi)存構(gòu)造一個(gè)臨時(shí)文件系統(tǒng);將編譯好的VxWorks實(shí)時(shí)保護(hù)進(jìn)程的可執(zhí)行代碼文件寫到所述臨時(shí)文件系統(tǒng)中;調(diào)用啟動(dòng)所述可執(zhí)行代碼文件的相關(guān)接口,啟動(dòng)加載所述可執(zhí)行代碼文件。根據(jù)本發(fā)明的方法,可以脫離文件系統(tǒng)實(shí)現(xiàn)VxWorks實(shí)時(shí)保護(hù)進(jìn)程的啟動(dòng)加載,從而降低了VxWorks實(shí)時(shí)保護(hù)進(jìn)程的運(yùn)行硬件要求,提高了VxWorks實(shí)時(shí)保護(hù)進(jìn)程的運(yùn)行穩(wěn)定性。
技術(shù)領(lǐng)域
本發(fā)明電子技術(shù)領(lǐng)域,具體涉及一種加載運(yùn)行VxWorks實(shí)時(shí)保護(hù)進(jìn)程的方法及系統(tǒng)。
背景技術(shù)
vxWorks操作系統(tǒng)是現(xiàn)有技術(shù)中一種應(yīng)用非常廣泛的操作系統(tǒng),其傳統(tǒng)的應(yīng)用程序?yàn)镈KM(Downloadable?Kernel?Module)生成的.out程序,其.out程序所在的任務(wù)直接與系統(tǒng)內(nèi)核共享同一片內(nèi)存空間,如果.out中出現(xiàn)如內(nèi)存泄露之類的BUG,將可以直接別的任務(wù)或者引起系統(tǒng)崩潰。
從vxWorks?6.4開始,vxWorks操作系統(tǒng)引入了實(shí)時(shí)保護(hù)進(jìn)程(VxWorks?realtimeprocess?project,RTP)模式編程。RTP實(shí)時(shí)進(jìn)程中每個(gè)RTP進(jìn)程完全獨(dú)立,程序在RTP進(jìn)程內(nèi)部出現(xiàn)的任何錯(cuò)誤都被限制在RTP進(jìn)程內(nèi)部,刪除RTP實(shí)時(shí)進(jìn)程時(shí)自動(dòng)釋放所有資源。RTP與其他多進(jìn)程OS不同的是,VxWorks的RTP實(shí)時(shí)進(jìn)程具有完全的靜態(tài)確定性,提供保護(hù)功能的同時(shí)提供最高的實(shí)時(shí)響應(yīng)確定性和快速性,并且可以提供完全的存儲(chǔ)錯(cuò)誤檢測(cè)和存儲(chǔ)報(bào)告功能。動(dòng)態(tài)鏈接庫(kù)和共享數(shù)據(jù)區(qū)功能也同時(shí)提供。RTP實(shí)時(shí)保護(hù)進(jìn)程與VWorks原有的更高性能實(shí)時(shí)任務(wù)一起構(gòu)成保護(hù)性和實(shí)時(shí)性兼?zhèn)涞某?jí)設(shè)備平臺(tái)。
RTP實(shí)時(shí)保護(hù)模式的優(yōu)點(diǎn)是應(yīng)用程序相互獨(dú)立,互不影響,而且增加了內(nèi)核的穩(wěn)定性,缺點(diǎn)是“內(nèi)核態(tài)”與“用戶態(tài)”的內(nèi)存拷貝,其執(zhí)行效率有所降低,鎖著CPU速度越來越快,這點(diǎn)效率的犧牲已經(jīng)越來越微不足道。但是相比于傳統(tǒng)的DKM(downloadble?kernelmodule?project),RTP適合多個(gè)團(tuán)隊(duì)獨(dú)立運(yùn)作,然后匯總調(diào)試。
但是,vxWorks操作系統(tǒng)的RTP實(shí)時(shí)進(jìn)程生成的是可執(zhí)行文件.vxe,其類似于Windows環(huán)境下的exe可執(zhí)行文件,文件加載依賴于文件系統(tǒng)。然而,通常情況下嵌入式系統(tǒng)資源有限,并不是所有的嵌入式系統(tǒng)都有大容量的存儲(chǔ)芯片用以建立文件系統(tǒng),并且基于vxWorks操作系統(tǒng)構(gòu)建的文件系統(tǒng)本身存在著容易損壞,存儲(chǔ)在文件系統(tǒng)中的文件容易丟失或者損壞等問題。
發(fā)明內(nèi)容
本發(fā)明提供了一種加載運(yùn)行VxWorks實(shí)時(shí)保護(hù)進(jìn)程的方法,所述方法包括:
基于內(nèi)存構(gòu)造一個(gè)臨時(shí)文件系統(tǒng);
將編譯好的VxWorks實(shí)時(shí)保護(hù)進(jìn)程的可執(zhí)行代碼文件寫到所述臨時(shí)文件系統(tǒng)中;
調(diào)用啟動(dòng)所述可執(zhí)行代碼文件的相關(guān)接口,啟動(dòng)加載所述可執(zhí)行代碼文件。
在一實(shí)施例中,將編譯好的VxWorks實(shí)時(shí)保護(hù)進(jìn)程的可執(zhí)行代碼文件寫到所述臨時(shí)文件系統(tǒng)中,包括:
將所述可執(zhí)行代碼文件存放到數(shù)據(jù)存儲(chǔ)器中;
讀取所述數(shù)據(jù)存儲(chǔ)器中的所述可執(zhí)行代碼文件到所述內(nèi)存;
將所述內(nèi)存中的所述可執(zhí)行代碼文件寫到所述臨時(shí)文件系統(tǒng)中。
在一實(shí)施例中,讀取所述數(shù)據(jù)存儲(chǔ)器中的所述可執(zhí)行代碼文件到內(nèi)存,其中,以二進(jìn)制的形式讀取所述數(shù)據(jù)存儲(chǔ)器中的所述可執(zhí)行代碼文件到內(nèi)存。
在一實(shí)施例中,讀取所述數(shù)據(jù)存儲(chǔ)器中的所述可執(zhí)行代碼文件到內(nèi)存,其中,訪問所述數(shù)據(jù)存儲(chǔ)器中的絕對(duì)地址讀取所述可執(zhí)行代碼文件到內(nèi)存。
在一實(shí)施例中,訪問所述數(shù)據(jù)存儲(chǔ)器中的絕對(duì)地址讀取所述可執(zhí)行代碼文件到內(nèi)存,其中,獲取所述可執(zhí)行代碼文件的在相對(duì)于所述數(shù)據(jù)存儲(chǔ)器基地址的偏移和大小。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中車株洲電力機(jī)車研究所有限公司,未經(jīng)中車株洲電力機(jī)車研究所有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810495580.4/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F11-00 錯(cuò)誤檢測(cè);錯(cuò)誤校正;監(jiān)控
G06F11-07 .響應(yīng)錯(cuò)誤的產(chǎn)生,例如,容錯(cuò)
G06F11-22 .在準(zhǔn)備運(yùn)算或者在空閑時(shí)間期間內(nèi),通過測(cè)試作故障硬件的檢測(cè)或定位
G06F11-28 .借助于檢驗(yàn)標(biāo)準(zhǔn)程序或通過處理作錯(cuò)誤檢測(cè)、錯(cuò)誤校正或監(jiān)控
G06F11-30 .監(jiān)控
G06F11-36 .通過軟件的測(cè)試或調(diào)試防止錯(cuò)誤
- 運(yùn)行控制裝置及運(yùn)行控制方法
- 運(yùn)行支援裝置、運(yùn)行支援系統(tǒng)以及運(yùn)行支援程序
- 列車運(yùn)行處理方法、運(yùn)行處理裝置和運(yùn)行調(diào)度系統(tǒng)
- 運(yùn)行監(jiān)測(cè)系統(tǒng)及運(yùn)行監(jiān)測(cè)方法
- 運(yùn)行控制裝置及運(yùn)行控制方法
- 運(yùn)行曲線制作裝置、運(yùn)行輔助裝置以及運(yùn)行控制裝置
- 運(yùn)行支持裝置、車輛、運(yùn)行管理裝置和運(yùn)行支持方法
- 運(yùn)行計(jì)劃方法、運(yùn)行控制裝置和運(yùn)行計(jì)劃系統(tǒng)
- 運(yùn)行控制裝置、運(yùn)行管理系統(tǒng)、運(yùn)行控制方法以及車輛
- 自動(dòng)建模運(yùn)行系統(tǒng)及運(yùn)行方法
- 一種VXWORKS操作系統(tǒng)移植的方法
- 實(shí)現(xiàn)VxWorks與Qt通信的消息隊(duì)列方法
- 一種VxWorks映像文件正確性的檢查方法
- 一種用于IEC61850協(xié)議轉(zhuǎn)換設(shè)備的VxWorks操作系統(tǒng)的設(shè)計(jì)方法
- 一種VxWorks系統(tǒng)中BSP的設(shè)計(jì)方法
- 將VxWorks任務(wù)移植到Linux的方法及裝置
- 內(nèi)核加載方法、裝置及存儲(chǔ)介質(zhì)
- VxWorks的快速啟動(dòng)方法
- 一種定制雙系統(tǒng)
- 一種簡(jiǎn)便的VxWorks操作系統(tǒng)系統(tǒng)日志記錄方法
- 實(shí)時(shí)解碼系統(tǒng)與實(shí)時(shí)解碼方法
- 實(shí)時(shí)穩(wěn)定
- 實(shí)時(shí)監(jiān)控裝置、實(shí)時(shí)監(jiān)控系統(tǒng)以及實(shí)時(shí)監(jiān)控方法
- 實(shí)時(shí)或準(zhǔn)實(shí)時(shí)流傳輸
- 實(shí)時(shí)或準(zhǔn)實(shí)時(shí)流傳輸
- 實(shí)時(shí)通信方法和實(shí)時(shí)通信系統(tǒng)
- 實(shí)時(shí)更新
- 實(shí)時(shí)內(nèi)核
- 用于通信網(wǎng)絡(luò)的網(wǎng)絡(luò)設(shè)備及相關(guān)方法
- 實(shí)時(shí)量化方法及實(shí)時(shí)量化系統(tǒng)





