[發(fā)明專利]協(xié)處理器系統(tǒng)和在本地存儲器上加載應(yīng)用程序的方法有效
| 申請?zhí)枺?/td> | 200910168620.5 | 申請日: | 2009-08-28 |
| 公開(公告)號: | CN101996082A | 公開(公告)日: | 2011-03-30 |
| 發(fā)明(設(shè)計(jì))人: | 楊雨東;林詠華;李嚴(yán);林海波;郭麗惠 | 申請(專利權(quán))人: | 國際商業(yè)機(jī)器公司 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445 |
| 代理公司: | 北京市金杜律師事務(wù)所 11256 | 代理人: | 吳立明 |
| 地址: | 美國紐*** | 國省代碼: | 美國;US |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 處理器 系統(tǒng) 本地 存儲器 加載 應(yīng)用程序 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明一般涉及協(xié)處理器系統(tǒng),尤其涉及一種在協(xié)處理器系統(tǒng)的本地存儲器上加載應(yīng)用程序的方法。
背景技術(shù)
軟件管理的本地存儲器常用于基于協(xié)處理器(processor?core)的混合體系結(jié)構(gòu),例如Cell/B.E.和某些DSP?SoCs。圖1示意性地表示一種混合體系結(jié)構(gòu)100。圖1中所示的多個(gè)協(xié)處理器(也稱加速器)110每個(gè)都有自己的本地存儲器120,也能訪問與其它加速器共享的存儲器140。加速器在主控處理器130的控制下協(xié)同工作,通過執(zhí)行本地存儲器中的代碼,完成相應(yīng)的功能。
這樣的體系結(jié)構(gòu)能夠優(yōu)化執(zhí)行應(yīng)用程序的性能,卻也使應(yīng)用開發(fā)變得復(fù)雜,其中要考慮的一個(gè)問題是代碼加載。眾所周知,由于種種限制,本地存儲器的容量一般很小,可能遠(yuǎn)遠(yuǎn)低于復(fù)雜的應(yīng)用程序的代碼和數(shù)據(jù)的大小。通常要把應(yīng)用程序的代碼劃分為多個(gè)較小的計(jì)算段(stages),將數(shù)據(jù)劃分為較小的數(shù)據(jù)塊,使每個(gè)計(jì)算段連同一個(gè)或多個(gè)相關(guān)數(shù)據(jù)塊能裝入本地存儲器。在將代碼劃分為多個(gè)計(jì)算段的情況下,需要代碼加載器(亦稱代碼加載程序)將各個(gè)計(jì)算段鏈接起來,以便在一個(gè)計(jì)算段完成之后繼續(xù)執(zhí)行下一個(gè)計(jì)算段。
存在采用不同工作方式的加載器,例如主機(jī)側(cè)應(yīng)用加載器和處理器(或加速器)側(cè)應(yīng)用加載器。在主機(jī)側(cè)應(yīng)用加載器方式中,加載器位于主控處理器130上,所以不占用加速器的本地存儲器的空間。但是,由于控制要在加速器與控制處理器之間頻繁切換,因此耗費(fèi)時(shí)間。
在加速器側(cè)應(yīng)用加載器方式中,加載器由加速器或協(xié)處理器110控制。常用的加速器側(cè)應(yīng)用加載器包括代碼重復(fù)占位(overlay)加載器(下文也簡稱“overlay加載器”)和常駐應(yīng)用加載器(簡稱“常駐加載器”)。overlay加載器方式中,為重復(fù)占位存儲段保留的存儲空間,不能被其它功能使用,并且需要修改編譯程序和鏈接工具,因而增加了實(shí)現(xiàn)的復(fù)雜度和成本。常駐應(yīng)用加載器中,鏈接到被加載應(yīng)用程序中的常駐加載器必須是相同的,并且必須被映射到目標(biāo)存儲器即本地存儲器中相同的地址,因而不夠靈活。
發(fā)明內(nèi)容
協(xié)處理器系統(tǒng)的代碼加載的靈活性,影響應(yīng)用開發(fā)的方式和性能。為此,本發(fā)明提出了一種改進(jìn)的應(yīng)用程序代碼加載方法。
按照本發(fā)明的一個(gè)方面,提供一種在協(xié)處理器系統(tǒng)的本地存儲器上加載應(yīng)用程序的方法,其中,本地存儲器包含加載區(qū)和非加載區(qū),加載區(qū)中存儲著加載器和應(yīng)用程序的待加載可執(zhí)行映象的描述數(shù)據(jù),加載器包含可重定位代碼,該方法包含:將可重定位代碼和描述數(shù)據(jù)從加載區(qū)復(fù)制到非加載區(qū);被復(fù)制到非加載區(qū)的可重定位代碼根據(jù)描述數(shù)據(jù)加載所述待加載可執(zhí)行映象。
按照本發(fā)明的另一個(gè)方面,提供一種協(xié)處理器系統(tǒng),所述協(xié)處理器系統(tǒng)包含協(xié)處理器的本地存儲器,其中,本地存儲器中設(shè)置有包含可重定位代碼的加載器,所述加載器被配置得將加載器的可重定位代碼和應(yīng)用程序的可執(zhí)行映象的描述數(shù)據(jù),從本地存儲器的加載區(qū)復(fù)制到本地存儲器的非加載區(qū),由復(fù)制到非加載區(qū)的可重定位代碼根據(jù)描述數(shù)據(jù)加載所述可執(zhí)行映象。通過利用本地存儲器中在加載時(shí)原本不需要的非加載區(qū)來放置加載器,加載器的位置無需受到嚴(yán)格的限制,本發(fā)明的方法和系統(tǒng)在不占用額外的存儲空間的情況下,可以提高應(yīng)用程序開發(fā)的靈活性。
附圖說明
通過對附圖中所示的本發(fā)明示例實(shí)施例的更詳細(xì)描述,將使本發(fā)明的上述、以及其它目的、特征和優(yōu)勢變得更加明顯;附圖中相同或類似的標(biāo)記,一般表示本發(fā)明示例性實(shí)施例中的相同或相類似的部件或部分。
圖1示意性地表示一種可以在其中實(shí)施本發(fā)明技術(shù)方案的體系結(jié)構(gòu);
圖2示意性地表示應(yīng)用程序的可執(zhí)行映象及其加載前后的地址映射關(guān)系;
圖3示意性地表示代碼重復(fù)占位加載器方式中的可執(zhí)行映象與本地存儲器的映射;
圖4示意性地表示重復(fù)占位加載的工作方式;
圖5示意性地表示常駐加載器的可執(zhí)行映象和地址映射;
圖6示意性表示按照本發(fā)明一個(gè)實(shí)施例的加載器運(yùn)行時(shí)本地存儲器的布局;
圖7示意性地表示按照本發(fā)明方法的一個(gè)實(shí)施例加載應(yīng)用程序的過程。
具體實(shí)施方式
將參照附圖更加詳細(xì)地描述本發(fā)明的實(shí)施方式,在附圖中顯示了本發(fā)明的實(shí)施例。然而,本發(fā)明可以以各種形式實(shí)現(xiàn),而不應(yīng)該理解為受到所描述的實(shí)施方式的限制。提供這些實(shí)施例是為了更加透徹和完整地闡述本發(fā)明,使所述技術(shù)領(lǐng)域的普通技術(shù)人員能了解本發(fā)明的實(shí)質(zhì)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于國際商業(yè)機(jī)器公司,未經(jīng)國際商業(yè)機(jī)器公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910168620.5/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:治療肝硬化的中草藥
- 下一篇:治療小孩遺尿病的中草藥





