[發(fā)明專利]用于分區(qū)的多處理器系統(tǒng)的實(shí)時(shí)線程服務(wù)有效
| 申請(qǐng)?zhí)枺?/td> | 200680034530.1 | 申請(qǐng)日: | 2006-09-12 |
| 公開(公告)號(hào): | CN101268445A | 公開(公告)日: | 2008-09-17 |
| 發(fā)明(設(shè)計(jì))人: | Y·庫巴克;D·莎瑪雅;S·雷諾;J·海爾德;R·加伯 | 申請(qǐng)(專利權(quán))人: | 英特爾公司 |
| 主分類號(hào): | G06F9/46 | 分類號(hào): | G06F9/46 |
| 代理公司: | 上海專利商標(biāo)事務(wù)所有限公司 | 代理人: | 陳煒 |
| 地址: | 美國(guó)加利*** | 國(guó)省代碼: | 美國(guó);US |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 用于 分區(qū) 處理器 系統(tǒng) 實(shí)時(shí) 線程 服務(wù) | ||
背景?
發(fā)明領(lǐng)域
本發(fā)明的各實(shí)施例涉及操作系統(tǒng)領(lǐng)域,尤其涉及實(shí)時(shí)線程。?
相關(guān)領(lǐng)域的描述?
實(shí)時(shí)操作系統(tǒng)(RTOS)是為實(shí)時(shí)應(yīng)用程序開發(fā)的操作系統(tǒng)(OS)。典型地,實(shí)時(shí)應(yīng)用程序在與真實(shí)世界環(huán)境交互時(shí)要求確定性的響應(yīng)時(shí)間。?
在現(xiàn)有OS下開發(fā)的應(yīng)用程序并不具有不受潛在OS限制的完全專用和可預(yù)測(cè)的環(huán)境。它或者需要與在隔離的環(huán)境之上或之內(nèi)運(yùn)行的特殊硬件和軟件平臺(tái)相協(xié)調(diào)。隔離環(huán)境可以是在同一或另一處理器上其本身虛擬地址空間內(nèi)的獨(dú)立進(jìn)程,通常帶有完全獨(dú)立的RTOS環(huán)境。應(yīng)用程序不得不通過顯式消息和數(shù)據(jù)緩沖交互來與這一隔離的環(huán)境交互。這就導(dǎo)致了資源利用效率低下,并會(huì)引起不確定的響應(yīng)時(shí)間。?
發(fā)明內(nèi)容
本發(fā)明的一個(gè)實(shí)施例是一種用于向多核環(huán)境中的應(yīng)用程序提供實(shí)時(shí)線程服務(wù)的技術(shù)。在操作系統(tǒng)(OS)的最高特權(quán)級(jí)(MPL)下在多核環(huán)境內(nèi)的實(shí)時(shí)核上發(fā)起驅(qū)動(dòng)程序。實(shí)時(shí)核與操作系統(tǒng)隔離。在最低特權(quán)級(jí)(LPL)下在實(shí)時(shí)核上使用庫為應(yīng)用程序創(chuàng)建實(shí)時(shí)線程。庫由應(yīng)用程序載入。實(shí)時(shí)線程與應(yīng)用程序共享虛擬地址空間。實(shí)時(shí)線程通過以下步驟創(chuàng)建:由驅(qū)動(dòng)程序接收來自庫的創(chuàng)建請(qǐng)求,其中庫傳遞來自應(yīng)用程序的創(chuàng)建請(qǐng)求,由驅(qū)動(dòng)程序驗(yàn)證?實(shí)時(shí)核可用;以及將引發(fā)請(qǐng)求從驅(qū)動(dòng)程序發(fā)送給執(zhí)行程序,執(zhí)行程序在實(shí)時(shí)核上引發(fā)實(shí)時(shí)線程。?
附圖簡(jiǎn)述?
通過參考以下用于說明本發(fā)明的實(shí)施例的描述和附圖將最好地理解本發(fā)明的實(shí)施例。附圖中:?
圖1是示出其中可實(shí)施本發(fā)明的一個(gè)實(shí)施例的系統(tǒng)的圖示。?
圖2是根據(jù)本發(fā)明一個(gè)實(shí)施例示出多核實(shí)時(shí)線程服務(wù)的圖示。?
圖3是根據(jù)本發(fā)明一個(gè)實(shí)施例示出實(shí)時(shí)線程服務(wù)的組件交互的圖示。?
圖4是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的共享虛擬地址空間的圖示。?
圖5是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的虛擬地址空間映射的圖示。?
圖6是根據(jù)本發(fā)明一個(gè)實(shí)施例示出連續(xù)的實(shí)時(shí)線程事件的圖示。?
圖7是根據(jù)本發(fā)明一個(gè)實(shí)施例示出支持多核環(huán)境中的實(shí)時(shí)線程服務(wù)的模塊的圖示。?
描述?
本發(fā)明的一個(gè)實(shí)施例是一種向多核環(huán)境中的應(yīng)用程序提供實(shí)時(shí)線程服務(wù)的技術(shù)。這些實(shí)時(shí)的核與OS隔離。驅(qū)動(dòng)程序在操作系統(tǒng)(OS)的內(nèi)核中發(fā)起。執(zhí)行程序則由驅(qū)動(dòng)程序發(fā)起以自舉并控制隔離的核。使用OS上的庫為應(yīng)用程序創(chuàng)建實(shí)時(shí)線程。該庫露出用戶級(jí)應(yīng)用程序接口(API)以便與驅(qū)動(dòng)程序和執(zhí)行程序通信。實(shí)時(shí)線程與該應(yīng)用程序共享虛擬地址空間并受執(zhí)行程序和驅(qū)動(dòng)程序的控制。?
在以下的描述中,陳述了眾多特定的細(xì)節(jié)。然而,應(yīng)理解可在沒有這些特定的細(xì)節(jié)的情況下實(shí)施本發(fā)明的實(shí)施例。在其它的例子中,沒有示出公知的電路、結(jié)構(gòu)和技術(shù),以免混淆對(duì)本發(fā)明的理解。?
可將本發(fā)明的一個(gè)實(shí)施例描述為進(jìn)程,一般將該進(jìn)程描述為流程圖、流程圖解、結(jié)構(gòu)圖或框圖。?
盡管流程圖將操作描述為順序進(jìn)程,但很多操作可并行或同時(shí)執(zhí)行。此外,可重新安排操作的順序。進(jìn)程在其操作完成時(shí)終止。進(jìn)程可以對(duì)應(yīng)于方?法、程序、過程、生成或制造方法等。?
本發(fā)明的一個(gè)實(shí)施例是一種為多核或多處理器系統(tǒng)實(shí)現(xiàn)實(shí)時(shí)線程服務(wù)的技術(shù)。術(shù)語“實(shí)時(shí)”在這里指的是響應(yīng)于真實(shí)世界事件或事務(wù)的確定性時(shí)間。各線程在用戶級(jí)處暴露。因此,可將其稱為輕型線程,因?yàn)橐4娴纳舷挛男畔⒌牧亢苄 L峁┰摼€程服務(wù)以支持隔離的對(duì)稱多核或多處理器系統(tǒng)(SMP)或核多處理器系統(tǒng)(CMP)。隔離的SMP/CMP平臺(tái)是多處理器/多核系統(tǒng),在其中主機(jī)OS被引導(dǎo)并且僅知曉部分核或處理器。其余的處理器對(duì)OS不可見。不可見的處理器也可稱為隔離的處理器。驅(qū)動(dòng)程序和執(zhí)行程序一起工作,從而允許程序器經(jīng)由用戶級(jí)庫提供的API,在與主OS隔離的分區(qū)SMP平臺(tái)內(nèi)的核/處理器上執(zhí)行線程。線程服務(wù)還允許程序器使用現(xiàn)成的和將來的多處理器(MP)平臺(tái)來用實(shí)時(shí)子系統(tǒng)擴(kuò)展現(xiàn)今的非實(shí)時(shí)OS,其中實(shí)時(shí)子系統(tǒng)使用在其中隔離的處理器與OS空間的處理器共享統(tǒng)一的虛擬地址空間的軟件模型。這樣就能夠方便地移植現(xiàn)有的代碼并能利用多個(gè)核的有效工作來快速開發(fā)這一OS擴(kuò)展,而不會(huì)產(chǎn)生對(duì)現(xiàn)有OS的限制。?
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于英特爾公司,未經(jīng)英特爾公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200680034530.1/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。





