亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種異構(gòu)多核體系中外設(shè)的訪問方法

文檔序號:6613671閱讀:422來源:國知局
專利名稱:一種異構(gòu)多核體系中外設(shè)的訪問方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)操作系統(tǒng)領(lǐng)域,尤其涉及一種面向異構(gòu)多核體系的外設(shè) 空間i方問方法。
背景技術(shù)
隨著芯片設(shè)計(jì)水平的提高以及應(yīng)用需求的提升,多核CPU越來越多的被運(yùn) 用到產(chǎn)品中。目前采用多核CPU的異構(gòu)體系大多選用CPU中的一個(gè)核作為主 核,承擔(dān)主要的資源管理和復(fù)雜邏輯運(yùn)算;其余的核作為從核承擔(dān)邏輯簡單但 數(shù)據(jù)量大的工作。
在操作系統(tǒng)中,CPU負(fù)責(zé)維護(hù)系統(tǒng)的虛擬空間地址映射關(guān)系。除了常用的 內(nèi)存以外,其他一些設(shè)備的地址空間也常常被映射到CPU的虛擬地址空間內(nèi) (如復(fù)雜可編程邏輯設(shè)備cpld等)。應(yīng)用程序通過CPU訪問某一地址的時(shí)候均 是采用虛擬地址,其并不知道該虛擬地址對應(yīng)的空間在內(nèi)存中還是其他外設(shè)。
在異構(gòu)多核體系中,每個(gè)核運(yùn)行的不同的操作系統(tǒng)并發(fā)執(zhí)行。如果多個(gè)核 同時(shí)訪問同一地址空間,必須使用鎖等機(jī)制來保證資源的互斥。而CPU對外設(shè) 資源的訪問速度是相對比較慢的。

發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的之一是提供一種異構(gòu)多核體系中外設(shè)空間的訪問 方法,使用該方法能夠解決多核竟?fàn)幫庠O(shè)資源、對外設(shè)訪問速度慢的技術(shù)問題。 為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的 一種異構(gòu)多核體系中外設(shè)的訪問方法,至少包括如下步驟,
A、 從核操作系統(tǒng)向主核操作系統(tǒng)發(fā)送外設(shè)訪問代理請求;
B、 主核操作系統(tǒng)執(zhí)行實(shí)際的外設(shè)訪問,并將代理結(jié)果及數(shù)據(jù)反饋給從核操作系統(tǒng)。
進(jìn)一步地,步驟A中,若所述外設(shè)訪問代理請求是寫請求,則還包括將待 寫入數(shù)據(jù)寫入映射地址空間的步驟。
進(jìn)一步地,步驟A中,所述外設(shè)訪問代理請求包含有訪問地址信息。
進(jìn)一步地,步驟B中,還包括判斷所述外設(shè)訪問代理請求中包含的訪問地 址是不是映射地址空間的地址的步驟,若不是所述映射地址空間的地址,則執(zhí) 行相應(yīng)錯(cuò)誤處理步驟。
基于上述方案,步驟B中,還包括判斷所述外設(shè)訪問代理請求是讀請求還 是寫請求的步驟,如果是讀請求則執(zhí)行讀取步驟,若是寫請求則執(zhí)行寫入步驟。
基于上述方案,所述讀取步驟包括
B1 、主核操作系統(tǒng)從外設(shè)地址空間讀取數(shù)據(jù);
B2、主核操作系統(tǒng)將所述讀取的外設(shè)數(shù)據(jù)寫入映射地址空間中,并向從核 操作系統(tǒng)發(fā)送反饋消息;
B3、從核操作系統(tǒng)從所述映射地址空間中讀取所述外設(shè)數(shù)據(jù)。
進(jìn)一步地,步驟Bl中還包括判斷外設(shè)數(shù)據(jù)讀取是否成功的步驟,若成功 則執(zhí)行步驟B2,若失敗則向從核操作系統(tǒng)發(fā)送讀取失敗的反饋消息。
基業(yè)上述方案,所述寫入步驟包括
C1 、主核操作系統(tǒng)從映射地址空間中讀取待寫入數(shù)據(jù)將其寫入外設(shè)地址空
間;
C2、主核操作系統(tǒng)向從核操作系統(tǒng)發(fā)送代理結(jié)果反饋消息。
進(jìn)一步地,步驟C2中還包括判斷寫入是否成功的步驟,若成功則向從核
操作系統(tǒng)發(fā)送寫入成功的反饋消息,若失敗則向從核操作系統(tǒng)發(fā)送寫入失敗的
反饋消息。
本發(fā)明引入了主核操作系統(tǒng)代理從核操作系統(tǒng)訪問外設(shè)空間的機(jī)制,使 異構(gòu)體系中的從核操作系統(tǒng)訪問外設(shè)空間時(shí)無需考慮對外設(shè)資源的互斥問 題,增加了從核操作系統(tǒng)訪問外設(shè)空間的手段。從核操作系統(tǒng)向主核操作發(fā) 出請求后可以進(jìn)行進(jìn)程調(diào)度,主核操作系統(tǒng)完成對外設(shè)的訪問和內(nèi)存映射以后通知從核操作系統(tǒng)后,從核操作系統(tǒng)繼續(xù)完成后面的工作。避免了從核直 接操作外設(shè)速度慢的缺點(diǎn)。所有對外設(shè)空間的訪問最終都是由主核操作系統(tǒng) 直接完成的,減少了對外設(shè)加鎖等操作,提高了效率。同時(shí)也便于在主核操 作系統(tǒng)上實(shí)現(xiàn)對外設(shè)地址空間訪問的緩存等一 系列管理機(jī)制。


圖1為本發(fā)明的所述方法步驟流程圖。
具體實(shí)施例方式
下面根據(jù)附圖和實(shí)施例對本發(fā)明作進(jìn)一 步詳細(xì)說明
本發(fā)明的核心思想是。操作系統(tǒng)采用主從式管理結(jié)構(gòu),只有運(yùn)行于主核上 的操作系統(tǒng)有直接對外設(shè)地址空間訪問的權(quán)限。主核操作系統(tǒng)一方面需處理本 身代碼中對外設(shè)地址空間訪問的需求,另 一方面還需提供對從核操作系統(tǒng)訪問
外設(shè)空間請求的代理功能;運(yùn)行于從核上的操作系統(tǒng)無直接訪問外設(shè)空間的權(quán) 限,它通過向主核操作系統(tǒng)發(fā)出代理請求來等待主核將外設(shè)空間的訪問結(jié)果映 射在共享內(nèi)存中,從而從所述映射的內(nèi)存空間中間接地獲得結(jié)果。此外,多操
作系統(tǒng)間的通信是采用硬件提供的核間通信手段作為載體進(jìn)行通信,共同采用 協(xié)商好地協(xié)議格式對通信內(nèi)容進(jìn)行解釋。
操作系統(tǒng)采用主從式管理結(jié)構(gòu)。運(yùn)行在主核的操作系統(tǒng)一方面可以管理本 身代碼中對外設(shè)地址空間的訪問;另一方面主核與從核在初始化時(shí)已協(xié)商好一 塊共享的內(nèi)存空間來作為主核存放代理訪問外設(shè)數(shù)據(jù)的地方。
從核操作系統(tǒng)中的程序任務(wù)如果要訪問外設(shè),根據(jù)圖1的流程進(jìn)行處理
步驟1:從核操作系統(tǒng)按和主核操作系統(tǒng)商定的協(xié)議組織外設(shè)訪問代理請 求消息,向主核操作系統(tǒng)發(fā)送外設(shè)訪問代理請求消息。
從核操作系統(tǒng)在發(fā)送完所述外設(shè)訪問代理請求消息后將訪問外設(shè)的程序任 務(wù)設(shè)置為阻塞狀態(tài),等待主核操作系統(tǒng)的反饋消息。從核操作系統(tǒng)在所述訪問 外設(shè)的程序任務(wù)阻塞期間還可調(diào)度其他任務(wù)執(zhí)行,直到收到主核的代理請求反 饋消息。若所述的外設(shè)訪問代理請求消息為向外設(shè)寫入數(shù)據(jù)的寫請求,則在該步驟
后再向從核操作系統(tǒng)發(fā)送外設(shè)訪問代理請求,請求中應(yīng)包含待寫入外設(shè)數(shù)據(jù)在 映射地址空間中的起始及結(jié)束地址以及外設(shè)標(biāo)識信息等。
若所述的外設(shè)訪問代理請求消息為從外設(shè)讀入數(shù)據(jù)的讀請求,則在向主核 發(fā)送的外設(shè)訪問代理請求消息中應(yīng)包括主從核協(xié)商好的待讀入數(shù)據(jù)在映射地址 空間中的存放地址信息及外設(shè)標(biāo)識信息。
步驟2:主核操作系統(tǒng)接收所述從核操作系統(tǒng)發(fā)送的外設(shè)訪問代理請求消 息,判斷代理請求所要訪問的地址是否是映射地址空間。如果是,轉(zhuǎn)步驟4; 否則執(zhí)行步驟3。
所述映射地址空間為主從核在初始化時(shí)協(xié)商好的用于主核操作系統(tǒng)存放代 理從核訪問外設(shè)數(shù)據(jù)的內(nèi)存空間,是主從核操作系統(tǒng)的關(guān)于讀取或?qū)懭霐?shù)據(jù)的 數(shù)據(jù)交換空間。根據(jù)主從核之間約定的協(xié)議,從核操作系統(tǒng)發(fā)送的外設(shè)訪問代 理請求消息所要訪問的內(nèi)存地址必須在所述映射地址空間內(nèi)。否則將作為錯(cuò)誤 消息處理。
步驟3:主核操作系統(tǒng)向從核操作系統(tǒng)發(fā)送代理失敗的反饋消息,結(jié)束本 次代理流程。
步驟4:主核操作系統(tǒng)判斷所述代理請求是讀請求還是寫請求,若是讀請
求執(zhí)行步驟5;若是寫請求則執(zhí)行步驟10。
步驟5:主核操作系統(tǒng)訪問外設(shè)地址空間,從外設(shè)地址空間讀取數(shù)據(jù)。 步驟6:外設(shè)地址空間訪問成功否?若訪問成功則執(zhí)行步驟7;若失敗則執(zhí)
行步驟9。
步驟7:主核操作系統(tǒng)將讀取的外設(shè)數(shù)據(jù)存放在映射地址空間中,然后向 從核操作系統(tǒng)發(fā)送讀取成功的反饋消息。
步驟8:從核操作系統(tǒng)接收讀取成功的反饋消息,讀取映射地址空間中的 外設(shè)數(shù)據(jù),結(jié)束本次代理流程。
步驟9:主核操作系統(tǒng)向從核操作系統(tǒng)發(fā)送讀取失敗的反饋消息,結(jié)束本次代理流程。
步驟10:主核操作系統(tǒng)從映射地址空間中讀取要傳送給外設(shè)的數(shù)據(jù),將其
寫入外設(shè)地址空間。
步驟ll:主核操作系統(tǒng)判斷寫入是否成功,若成功則執(zhí)行步驟12,若失敗 執(zhí)行步驟13。
步驟12:向從核操作系統(tǒng)發(fā)送寫入成功的反饋消息,結(jié)束本次代理流程。 步驟13:向從核操作系統(tǒng)發(fā)送寫失敗的反饋消息,結(jié)束本次代理流程。
行通信。主從核上的操作系統(tǒng)共同采用協(xié)商好地協(xié)議格式對通信內(nèi)容進(jìn)行解釋。 從核操作系統(tǒng)向主核操作系統(tǒng)發(fā)送的代理請求消息中至少包含
1、 代理的類型(讀操作還是寫操作);
2、 請求的映射地址空間的地址。
主核向從核發(fā)送的反饋消息中至少包含代理的結(jié)果信息,如成果還是失敗, 如果出現(xiàn)錯(cuò)誤的情況下錯(cuò)誤的提示信息等。
本發(fā)明還可有其它多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下, 本領(lǐng)域技術(shù)人員當(dāng)可才艮據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改 變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1、一種異構(gòu)多核體系中外設(shè)的訪問方法,其特征在于,至少包括如下步驟,A、從核操作系統(tǒng)向主核操作系統(tǒng)發(fā)送外設(shè)訪問代理請求;B、主核操作系統(tǒng)執(zhí)行實(shí)際的外設(shè)訪問,并將代理結(jié)果及數(shù)據(jù)反饋給從核操作系統(tǒng)。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟A中,若所述外設(shè)訪 問代理請求是寫請求,則還包括將待寫入數(shù)據(jù)寫入映射地址空間的步驟。
3、 根據(jù)權(quán)利要求2所述的方法,其特征在于,步驟A中,所述外設(shè)訪問 代理請求包含有訪問地址信息。
4、 根據(jù)權(quán)利要求3所述的方法,其特征在于,步驟B中,還包括判斷所 述外設(shè)訪問代理請求中包含的訪問地址是不是映射地址空間的地址的步驟,若 不是所述映射地址空間的地址,則執(zhí)行相應(yīng)錯(cuò)誤處理步驟。
5、 根據(jù)權(quán)利要求3或4所述的方法,其特征在于,步驟B中,還包括判 斷所述外設(shè)訪問代理請求是讀請求還是寫請求的步驟,如果是讀請求則執(zhí)行讀 取步驟,若是寫請求則執(zhí)行寫入步驟。
6、 根據(jù)權(quán)利要求5所述的方法,其特征在于,所述讀取步驟包括 Bl、主核操作系統(tǒng)從外設(shè)地址空間讀取數(shù)據(jù);B2、主核操作系統(tǒng)將所述讀取的外設(shè)數(shù)據(jù)寫入映射地址空間中,并向從核 操作系統(tǒng)發(fā)送反饋消息;B3、從核操作系統(tǒng)從所述映射地址空間中讀取所述外設(shè)數(shù)據(jù)。
7、 根據(jù)權(quán)利要求6所述的方法,其特征在于,步驟B1中還包括判斷外設(shè) 數(shù)據(jù)讀取是否成功的步驟,若成功則執(zhí)行步驟B2,若失敗則向從核操作系統(tǒng)發(fā) 送讀取失敗的反饋消息。
8、 根據(jù)權(quán)利要求5所述的方法,其特征在于,所述寫入步驟包括Cl 、主核操作系統(tǒng)從映射地址空間中讀取待寫入數(shù)據(jù)將其寫入外設(shè)地址空C2、主核操作系統(tǒng)向從核操作系統(tǒng)發(fā)送代理結(jié)果反饋消息。
9、根據(jù)權(quán)利要求8所述的方法,其特征在于,步驟C2中還包括判斷寫入是否成功的步驟,若成功則向從核操作系統(tǒng)發(fā)送寫入成功的反饋消息,若失敗 則向從核操作系統(tǒng)發(fā)送寫入失敗的反饋消息。
全文摘要
本發(fā)明涉及異構(gòu)多核體系中外設(shè)的訪問方法,本發(fā)明中從核操作系統(tǒng)向外設(shè)發(fā)送代理請求,由主核操作系統(tǒng)代理執(zhí)行實(shí)際的外設(shè)訪問,主從核之間協(xié)商一塊共享內(nèi)存映射地址空間作為數(shù)據(jù)交換空間,主核操作系統(tǒng)將外設(shè)訪問的結(jié)果反饋給從核操作系統(tǒng),從核操作系統(tǒng)從映射地址空間中獲取外設(shè)的數(shù)據(jù)。通過本發(fā)明技術(shù)方案增加了從核操作系統(tǒng)訪問外設(shè)空間的手段,避免了從核直接操作外設(shè)速度慢的缺點(diǎn),提高了訪問效率。
文檔編號G06F9/46GK101430651SQ200710176830
公開日2009年5月13日 申請日期2007年11月5日 優(yōu)先權(quán)日2007年11月5日
發(fā)明者凡 楊, 陽 趙 申請人:中興通訊股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1