欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于spm的嵌入式操作系統(tǒng)進(jìn)程調(diào)度優(yōu)化方法

文檔序號(hào):6460446閱讀:433來源:國知局
專利名稱:基于spm的嵌入式操作系統(tǒng)進(jìn)程調(diào)度優(yōu)化方法
技術(shù)領(lǐng)域
本發(fā)明涉及嵌入式操作系統(tǒng)進(jìn)程調(diào)度優(yōu)化技術(shù),特別是涉及一種基于SPM 的嵌入式操作系統(tǒng)進(jìn)程調(diào)度優(yōu)化方法。
技術(shù)背景ScmtchPad Memory是一類存儲(chǔ)器的統(tǒng)稱,這類存儲(chǔ)器的共同特點(diǎn)是它們都 和CPU—起布線,即這類存儲(chǔ)器是和CPU集成在一個(gè)芯片上的。這樣做的好處 是,可以提高芯片的集成度,使得芯片本身就具有一定的存取能力,可以便于 SOC (System On Chip)的發(fā)展。同時(shí)由于這類存儲(chǔ)器距離CPU很近,所以它 們的讀寫速度就會(huì)相應(yīng)的加速。目前市場上高端的處理器芯片很多集成有片內(nèi)的存儲(chǔ)器,如Intel PXA27X 等。目前它們的功能主要是做處理器片內(nèi)Cache,或供用戶特殊使用的內(nèi)存。通 常它們都是和主內(nèi)存統(tǒng)一編址的,這樣就方便了開發(fā)人員的開發(fā)工作?;谄?內(nèi)內(nèi)存的一般特性,現(xiàn)在使用較多的是用SRAM作為片內(nèi)內(nèi)存,主要原因是它 有很好的讀寫性能。但是由于SRAM的體積限制,所以目前片內(nèi)的內(nèi)存都是小 容量的, 一般大小在256K左右,如Intel PXA272。SRAM是Static RAM的縮寫,它是一種靜態(tài)存取內(nèi)存,即不需要定時(shí)刷新 電路就可以保存它內(nèi)部存儲(chǔ)的數(shù)據(jù)。不像DRAM那樣的普通存儲(chǔ)器那樣需要刷 新電路,每隔一段時(shí)間,固定地要對(duì)DRAM刷新充電一次,否則內(nèi)部的數(shù)據(jù)即 會(huì)消失。由于這樣的原因,SRAM具有較高的讀寫性能。但是SRAM也有它的 缺點(diǎn),它的集成度較低,相同容量的DRAM內(nèi)存較SRAM需要較小的體積,因 此,如果主板上存在SRAM存儲(chǔ)器,則要占用一部分面積,這對(duì)嵌入式系統(tǒng)來 說是不能忍受的。 一般在主板上集成SRAM的系統(tǒng),通常是桌面系統(tǒng)。SRAM由于有較好的讀寫性能,所以在計(jì)算機(jī)系統(tǒng)內(nèi)有它的特定用途。目 前SRAM在主板上有幾種用法 一種是置于CPU與主存之間的高速緩存,這種 高速緩存有兩種規(guī)格 一種是固定在主板上的高速緩存,即通常所說的Cache; 另一種是插在卡槽上擴(kuò)充用的高速緩存。還有為了加速CPU內(nèi)部數(shù)據(jù)的傳送, 在CPU的內(nèi)部也設(shè)計(jì)有高速緩存,所以在Pentium CPU就有一級(jí)高速緩存和二 級(jí)高速緩存的概念, 一般一級(jí)緩存是內(nèi)建在CPU的內(nèi)部,二級(jí)緩存是集成在CPU 的外部。SRAM顯然速度快,不需要定時(shí)刷新,但是也有另外的缺點(diǎn),就是價(jià)格高,體積大,所以在主板上還不能作為用量較大的主存。片上SRAM的另外一種使用方法即Scratchpad Memory,簡稱SPM。 Cache 通常是由硬件控制,對(duì)于程序員來說無法對(duì)cache進(jìn)行控制;而SPM則是像內(nèi) 存一樣進(jìn)行編址的片上存儲(chǔ)空間,因此,程序員可以通過編寫程序時(shí),對(duì)地址 進(jìn)行控制,從而訪問SPM。到目前為止還沒有相關(guān)研究涉及到利用片內(nèi)高性能SPM對(duì)嵌入式操作系統(tǒng) 進(jìn)程調(diào)度的優(yōu)化。這種涉及到硬件性能的設(shè)計(jì)不同于軟件上的改良,硬件是整 個(gè)軟件的基礎(chǔ),所以高性能的內(nèi)存可以大幅度的提高進(jìn)程調(diào)度性能,提高系統(tǒng) 實(shí)時(shí)性。 發(fā)明內(nèi)容本發(fā)明的目的在于提供一種基于SPM的嵌入式操作系統(tǒng)進(jìn)程調(diào)度優(yōu)化方法。本發(fā)明解決其技術(shù)問題采用的技術(shù)方案如下-1) SPM組織以塊為單位,將SPM劃分為進(jìn)程調(diào)度代碼區(qū)、進(jìn)程調(diào)度數(shù)據(jù)區(qū)和擴(kuò)展區(qū);2) 進(jìn)程調(diào)度代碼和數(shù)據(jù)的抽取和組織從操作系統(tǒng)的相關(guān)部分抽取相關(guān)代碼和數(shù)據(jù),并把它們集中到兩個(gè)文件中; 一個(gè)文件專門存放嵌入式操作系統(tǒng)進(jìn)程調(diào)度模塊的代碼,另 一個(gè)文件專門存放 嵌入式操作系統(tǒng)進(jìn)程調(diào)度模塊的數(shù)據(jù);抽取過程用手工,或由軟件工具協(xié)助進(jìn)行;手工抽取由程序員閱讀源代碼 并進(jìn)行分析抽取;軟件工具協(xié)助進(jìn)行這是在軟件工具的幫助下將嵌入式操作系 統(tǒng)進(jìn)程調(diào)度模塊的代碼和數(shù)據(jù)抽取出來;3) 編譯器定址編譯經(jīng)由編譯控制文件的指導(dǎo),交叉編譯器將源代碼編譯為二進(jìn)制文件,編譯 控制文件決定了二進(jìn)制文件內(nèi)各模塊的地址分布。嵌入式操作系統(tǒng)的進(jìn)程調(diào)度 模塊被編址到指定地址。其中,嵌入式操作系統(tǒng)的進(jìn)程調(diào)度模塊的代碼被定址 到進(jìn)程調(diào)度代碼區(qū),嵌入式操作系統(tǒng)的進(jìn)程調(diào)度模塊的數(shù)據(jù)被定址到進(jìn)程調(diào)度 數(shù)據(jù)區(qū)。本發(fā)明與背景技術(shù)相比,具有的有益的效果是本發(fā)明是利用SPM這種高性能存儲(chǔ)器對(duì)一般嵌入式操作系統(tǒng)的進(jìn)程調(diào)度進(jìn) 行了優(yōu)化,嵌入式操作系統(tǒng)中與進(jìn)程調(diào)度相關(guān)的數(shù)據(jù)和代碼被編譯到SPM內(nèi)存 空間。嵌入式操作系統(tǒng)的源代碼被重新組織,其中與進(jìn)程調(diào)度相關(guān)的代碼和數(shù)據(jù)被獨(dú)立的分離開來,并利用交叉編譯器的定址編譯技術(shù),將其編譯到SPM中。 通過程序加載器,在編譯信息的指導(dǎo)下,將二進(jìn)制可執(zhí)行文件按指定要求,分 別加載到系統(tǒng)內(nèi)存空間的指定空間,其中與進(jìn)程調(diào)度相關(guān)的代碼和數(shù)據(jù)被加載 到SPM中的代碼區(qū)和數(shù)據(jù)區(qū),其他部分被加載到主內(nèi)存空間。(1) 實(shí)時(shí)性。利用SPM優(yōu)化操作系統(tǒng)進(jìn)程調(diào)度的方法可以大大降低進(jìn)程切 換的時(shí)間。(2) 低能耗。利用SPM的低功耗特性,降低嵌入式操作系統(tǒng)的運(yùn)行時(shí)功耗, 起到節(jié)能的效果。


圖1是本發(fā)明的實(shí)施過程示意圖; 圖2是SPM組織的示意圖;圖3是常規(guī)的嵌入式操作系統(tǒng)源代碼編譯狀況圖的示意圖; 圖4是編譯控制文件示意圖。
具體實(shí)施方式
本發(fā)明是一種基于SPM的嵌入式操作系統(tǒng)進(jìn)程調(diào)度優(yōu)化方法,下面結(jié)合圖 1說明其具體實(shí)施過程。1) SPM組織根據(jù)SPM的特點(diǎn),對(duì)SRAM空間進(jìn)行以塊為單位的劃分,這樣做的好處是 將進(jìn)程調(diào)度模塊的代碼區(qū)和數(shù)據(jù)區(qū)物理地分開和減少內(nèi)部碎片。另外可以隨著 系統(tǒng)的不斷變化而隨時(shí)適應(yīng)。在圖2中,代碼區(qū)和數(shù)據(jù)區(qū)是由一些特定大小的塊所組成,但代碼區(qū)和數(shù) 據(jù)區(qū)在物理空間中是分幵的,這樣就能夠避免數(shù)據(jù)和代碼的混亂和沖突。其中 的擴(kuò)展區(qū)是多余的SPM空間,可以被嵌入式操作系統(tǒng)用作普通內(nèi)存,和主存合 并到一起管理。進(jìn)程調(diào)度代碼區(qū)和進(jìn)程調(diào)度數(shù)據(jù)區(qū)的具體大小根據(jù)編譯器對(duì)源代碼編譯后 輸出的二進(jìn)制文件地址分布信息決定。這個(gè)地址分布信息包括進(jìn)程調(diào)度代碼和 數(shù)據(jù)的開始地址和結(jié)束地址,因此它們的大小是可以計(jì)算的。SPM中的每個(gè)區(qū) 都是由4K (和主內(nèi)存的塊大小一致)的大小的塊構(gòu)成,所以在為代碼區(qū)和數(shù)據(jù) 區(qū)分配空間時(shí),以塊為單位。2) 進(jìn)程調(diào)度代碼和數(shù)據(jù)的抽取和組織嵌入式操作系統(tǒng)進(jìn)程調(diào)度代碼和數(shù)據(jù),在通常的源代碼組織中不是存在于 獨(dú)立文件中,即進(jìn)程調(diào)度代碼和數(shù)據(jù)可能分布在數(shù)量不同的多個(gè)源文件當(dāng)中。這就導(dǎo)致了與進(jìn)程調(diào)度相關(guān)的代碼和數(shù)據(jù)分布不集中,在編譯后會(huì)在不同的邏輯空間區(qū)域,不便于加載集中加載代碼和數(shù)據(jù)到指定的內(nèi)存空間。圖3是常規(guī) 的嵌入式操作系統(tǒng)源代碼編譯狀況圖,圖中嵌入式操作系統(tǒng)源代碼經(jīng)過交叉編 譯器編譯形成二進(jìn)制映象文件,但其中的進(jìn)程優(yōu)先級(jí)表、進(jìn)程切換代碼、進(jìn)程 控制塊等與進(jìn)程調(diào)度相關(guān)的代碼和數(shù)據(jù)被分散在不同的地址空間中。為了能夠集中嵌入式操作系統(tǒng)中與進(jìn)程調(diào)度有關(guān)的代碼和數(shù)據(jù),需要從操 作系統(tǒng)的相關(guān)部分抽取相關(guān)代碼和數(shù)據(jù),并把它們集中到兩個(gè)文件中。在這兩 個(gè)文件中, 一個(gè)文件專門存放嵌入式操作系統(tǒng)進(jìn)程調(diào)度模塊的代碼,另一個(gè)文 件專門存放嵌入式操作系統(tǒng)進(jìn)程調(diào)度模塊的數(shù)據(jù),這兩個(gè)文件也是作為嵌入式 操作系統(tǒng)源文件需要編譯器對(duì)其進(jìn)行編譯。但這樣的組織方式,就可以充分利 用交叉編譯器的功能,對(duì)源文件進(jìn)行定址編譯。不同的嵌入式操作系統(tǒng)與進(jìn)程調(diào)度相關(guān)的代碼和數(shù)據(jù)有所不同,這需要對(duì) 嵌入式操作系統(tǒng)進(jìn)行研究。以源代碼公開的嵌入式操作系統(tǒng)UCOS-II為例,與 進(jìn)程調(diào)度相關(guān)的代碼在os一task.c、 osjore.c等文件中,而數(shù)據(jù)在ucos-II.h等文 件中,因此,需要從含有相關(guān)代碼的文件中分離出所有相關(guān)代碼和數(shù)據(jù),分別 建立文件存儲(chǔ)。兩個(gè)文件中, 一個(gè)是代碼源文件, 一個(gè)是數(shù)據(jù)源文件。兩個(gè)文 件可以在編譯器中被定址編譯。實(shí)際實(shí)現(xiàn)時(shí)的抽取過程既可以是手工的,也可以是由軟件工具協(xié)助進(jìn)行的。 手工抽取由程序員閱讀源代碼并進(jìn)行分析抽取。軟件工具協(xié)助進(jìn)行這是在軟件 工具的幫助下將嵌入式操作系統(tǒng)進(jìn)程調(diào)度模塊的代碼和數(shù)據(jù)抽取出來。3)編譯器定址編譯編譯器負(fù)責(zé)將嵌入式操作系統(tǒng)源代碼根據(jù)需要編譯為二進(jìn)制文件,這個(gè)二 進(jìn)制文件中的指令和數(shù)據(jù)的地址是根據(jù)編譯控制文件的要求計(jì)算的。所以編譯 器要明確獲得整個(gè)程序所以部分的代碼情況,通??梢酝ㄟ^設(shè)置編譯器選項(xiàng)輸 出信息文件獲得。程序加載器通過程序地址空間分布信息,將程序加載到指定 位置。如圖4所示,編譯控制文件包括源文件名、起始地址、最大偏移等信息。 其中源文件名為源代碼的文件名。起始地址就是源程序模塊需要被編譯到的內(nèi) 存起始地址。最大偏移是源文件被編譯為二進(jìn)制映象的空間尺寸。在定址編譯 階段,這個(gè)起始地址值是和經(jīng)過組織規(guī)劃過的SPM相互參照的。即這里的起始 地址和SPM規(guī)劃過的用于作為進(jìn)程調(diào)度模塊運(yùn)行環(huán)境的空間的起始值一致。經(jīng) 由編譯控制文件的指導(dǎo),交叉編譯器將源代碼編譯為二進(jìn)制文件,編譯控制文件決定了二進(jìn)制文件內(nèi)各模塊的地址分布。編譯好的二進(jìn)制操作系統(tǒng)映象文件 被程序加載器根據(jù)地址分布信息,加載到指定內(nèi)存空間,這樣才能正常運(yùn)行。 因此嵌入式操作系統(tǒng)的進(jìn)程調(diào)度模塊被編址到指定地址。其中,嵌入式操作系 統(tǒng)的進(jìn)程調(diào)度模塊的代碼被定址到進(jìn)程調(diào)度代碼區(qū),嵌入式操作系統(tǒng)的進(jìn)程調(diào) 度模塊的數(shù)據(jù)被定址到進(jìn)程調(diào)度數(shù)據(jù)區(qū)。
權(quán)利要求
1.一種基于SPM的嵌入式操作系統(tǒng)進(jìn)程調(diào)度優(yōu)化方法,其特征在于1)SPM組織以塊為單位,將SPM劃分為進(jìn)程調(diào)度代碼區(qū)、進(jìn)程調(diào)度數(shù)據(jù)區(qū)和擴(kuò)展區(qū);2)進(jìn)程調(diào)度代碼和數(shù)據(jù)的抽取和組織從操作系統(tǒng)的相關(guān)部分抽取相關(guān)代碼和數(shù)據(jù),并把它們集中到兩個(gè)文件中;一個(gè)文件專門存放嵌入式操作系統(tǒng)進(jìn)程調(diào)度模塊的代碼,另一個(gè)文件專門存放嵌入式操作系統(tǒng)進(jìn)程調(diào)度模塊的數(shù)據(jù);抽取過程用手工,或由軟件工具協(xié)助進(jìn)行;手工抽取由程序員閱讀源代碼并進(jìn)行分析抽取;軟件工具協(xié)助進(jìn)行這是在軟件工具的幫助下將嵌入式操作系統(tǒng)進(jìn)程調(diào)度模塊的代碼和數(shù)據(jù)抽取出來;3)編譯器定址編譯經(jīng)由編譯控制文件的指導(dǎo),交叉編譯器將源代碼編譯為二進(jìn)制文件,編譯控制文件決定了二進(jìn)制文件內(nèi)各模塊的地址分布。嵌入式操作系統(tǒng)的進(jìn)程調(diào)度模塊被編址到指定地址。其中,嵌入式操作系統(tǒng)的進(jìn)程調(diào)度模塊的代碼被定址到進(jìn)程調(diào)度代碼區(qū),嵌入式操作系統(tǒng)的進(jìn)程調(diào)度模塊的數(shù)據(jù)被定址到進(jìn)程調(diào)度數(shù)據(jù)區(qū)。
全文摘要
本發(fā)明公開了一種基于SPM的嵌入式操作系統(tǒng)進(jìn)程調(diào)度優(yōu)化方法。本發(fā)明是對(duì)嵌入式操作系統(tǒng)的源代碼進(jìn)行重新組織,其中與進(jìn)程調(diào)度相關(guān)的代碼和數(shù)據(jù)被獨(dú)立的分離開來,并利用交叉編譯器的定址編譯技術(shù),將其編譯到SPM中。本方法通過將嵌入式操作系統(tǒng)進(jìn)程調(diào)度相關(guān)代碼和數(shù)據(jù)放置到SPM中,可以有效地提高進(jìn)程調(diào)度的實(shí)時(shí)性。
文檔編號(hào)G06F9/312GK101251810SQ20081006113
公開日2008年8月27日 申請(qǐng)日期2008年3月11日 優(yōu)先權(quán)日2008年3月11日
發(fā)明者嚴(yán)力科, 居立晗, 峰 沙, 章鐵飛, 威 胡, 斌 謝, 劍 陳, 度 陳, 陳天洲, 黃長賓 申請(qǐng)人:浙江大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
安阳市| 金阳县| 屏南县| 砚山县| 简阳市| 河北省| 公安县| 元氏县| 昌都县| 比如县| 枞阳县| 视频| 长顺县| 河源市| 论坛| 泗阳县| 永登县| 建水县| 永川市| 金平| 石狮市| 陆良县| 西乌珠穆沁旗| 河曲县| 罗山县| 巴南区| 惠安县| 阳高县| 杂多县| 金沙县| 吴川市| 宿松县| 巫山县| 荃湾区| 东平县| 松原市| 兴山县| 商城县| 阿拉善盟| 敦化市| 平阳县|