




已閱讀5頁,還剩77頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
二八 年 一 月 件支持平臺(tái)的研究與實(shí)現(xiàn) ( 國家 863 計(jì)劃資助項(xiàng)目 編號(hào): 2001 A in 2008 by 63 書脊 L i n u x 上 構(gòu) 件 支 持 平 臺(tái) 的 研 究 與 實(shí) 現(xiàn) 馮 世 光 同 濟(jì) 大 學(xué) 學(xué)位論文版權(quán)使用授權(quán)書 本人完全了解同濟(jì)大學(xué)關(guān)于收集、保存、使用學(xué)位論文的規(guī)定,同意如下各項(xiàng)內(nèi)容:按照學(xué)校要求提交學(xué)位論文的印刷本和電子版本;學(xué)校有權(quán)保存學(xué)位論文的印刷本和電子版,并采用影印、縮印、掃描、數(shù)字化或其它手段保存論文;學(xué)校有權(quán)提供目錄檢索以及提供本學(xué)位論文全文或者部分的閱覽服務(wù);學(xué)校有權(quán)按有 關(guān)規(guī)定向國家有關(guān)部門或者機(jī)構(gòu)送交論文的復(fù)印件和電子版;在不以贏利為目的的前提下,學(xué)??梢赃m當(dāng)復(fù)制論文的部分或全部內(nèi)容用于學(xué)術(shù)活動(dòng)。 學(xué)位論文作者簽名: 年 月 日 同濟(jì)大學(xué)學(xué)位論文原創(chuàng)性聲明 本人鄭重聲明:所呈交的學(xué)位論文,是本人在導(dǎo)師指導(dǎo)下,進(jìn)行研究工作所取得的成果。除文中已經(jīng)注明引用的內(nèi)容外,本學(xué)位論文的研究成果不包含任何他人創(chuàng)作的、已公開發(fā)表或者沒有公開發(fā)表的作品的內(nèi)容。對(duì)本論文所涉及的研究工作做出貢獻(xiàn)的其他個(gè)人和集體,均已在文中以明確方式標(biāo)明。本學(xué)位論文原創(chuàng)性聲明的法律責(zé)任由本人承擔(dān)。 學(xué)位論文作者簽名: 年 月 日摘要 I 摘要 跨平臺(tái)技術(shù)能實(shí)現(xiàn) 應(yīng)用程序在不同 硬件平臺(tái)或 操作系統(tǒng) 平臺(tái) 上 運(yùn)行。 他 屏蔽了 平臺(tái)的差異 , 達(dá)到 了應(yīng)用程序 在異構(gòu)環(huán)境下順利 運(yùn)行的目的。 論文首先分析了 作系統(tǒng) 上的 件 運(yùn) 行 平臺(tái) 。 它 包括 : 核 接口,設(shè)備驅(qū)動(dòng)程序接口和 件運(yùn)行機(jī)制。 用程 序都是以構(gòu)件接口的形式調(diào)用系統(tǒng)內(nèi)核功能。保持 系統(tǒng) 接口的不變性,在其他宿主操作系統(tǒng)上 重新實(shí)現(xiàn)他們 , 可以實(shí)現(xiàn) 件的跨操作系統(tǒng)平臺(tái)運(yùn)行 。 臺(tái)是 在 不同操作系統(tǒng)之上 模擬 的統(tǒng)一 件運(yùn)行平臺(tái)。通過臺(tái), 件可以二進(jìn)制兼容地運(yùn)行在不同的操作系統(tǒng)之上。 括 平臺(tái)適配層和 擬層。 論文 中 提出了 種平臺(tái)適配層,詳細(xì)地闡述了他們的 函數(shù) 接口設(shè)計(jì)和實(shí)現(xiàn)。 平臺(tái)適配層決定著 擬層的設(shè)計(jì)方式和實(shí)現(xiàn), 兩種適配層技術(shù)也就代表了兩種不同的 構(gòu)。論文詳細(xì)分析了這兩種架構(gòu) 上 應(yīng)用 程序 運(yùn)行過程 , 運(yùn)行 效率損失和平臺(tái)模擬程度。 在 臺(tái) 上 模擬了代理對(duì)象和存根對(duì)象 , 用進(jìn)程間通信的方式實(shí)現(xiàn)件的自動(dòng)列集散集機(jī)制 。通過向內(nèi)核對(duì)象管理進(jìn)程注冊和查詢服務(wù) , 模擬 了 件的 命名服務(wù)機(jī)制 。 論文還針對(duì) 臺(tái) 全部運(yùn)行在宿主操作系統(tǒng)用戶態(tài) 的特點(diǎn),分析了 臺(tái)上構(gòu)件對(duì)象的生命周期問題。 最后,論文 比較 了 臺(tái) 和其他的跨平臺(tái)技術(shù),也為 后的研究提出一些建議 。 關(guān)鍵詞: 和欣操作系統(tǒng),構(gòu)件技術(shù), 跨平臺(tái)技術(shù) ,軟件復(fù)用 , 構(gòu)件運(yùn)行平臺(tái) I on S. It AR It AR on S by is a AR S It of in is PC be to a on of S, of is At of We we 錄 第 1 章 引言 . 1 題的目的和意義 . 1 內(nèi)外的研究現(xiàn)狀 . 2 . 2 目 . 4 容內(nèi)核 . 5 目 . 6 令集仿真 . 7 人所作的工作 . 8 文的組織和結(jié)構(gòu) . 8 第 2 章 相關(guān)技術(shù)與概念 . 10 體系架構(gòu) . 10 系統(tǒng)接口 . 12 口 . 13 程和線程接口 . 14 步對(duì)象接口 . 16 件技術(shù) . 18 件技術(shù)的相關(guān)概念 . 20 件自動(dòng)列集散集 . 22 件命名服務(wù)機(jī)制 . 24 備驅(qū)動(dòng)服務(wù) . 25 第 3 章 架構(gòu)設(shè)計(jì) . 27 總體架構(gòu) . 27 于 配層的 構(gòu) . 28 配層 . 29 于 擬內(nèi)核 . 29 目錄 的實(shí)現(xiàn) . 31 口層和 通信協(xié)議 . 32 的內(nèi)核對(duì)象管理 . 33 配層架構(gòu)的優(yōu)缺點(diǎn) . 35 于 配層的 構(gòu) . 36 配層 . 37 于 擬內(nèi)核 . 38 構(gòu)的優(yōu)缺點(diǎn) . 40 種適配層的技術(shù)比較 . 41 備驅(qū)動(dòng)程序的模擬 . 42 第 4 章 構(gòu)件運(yùn)行機(jī)制的設(shè)計(jì) . 44 構(gòu)件列集散集機(jī)制 . 44 理和存根的數(shù)據(jù)結(jié)構(gòu) . 44 輸協(xié)議和元數(shù)據(jù) . 47 據(jù)傳輸方式 . 49 務(wù)線程模型 . 50 種適配層上的差異 . 51 命名服務(wù)機(jī)制 . 51 構(gòu)件生命周期管理 . 53 理對(duì)象和存根對(duì)象的生命周期 . 54 核對(duì)象的生命周期 . 55 其他跨平臺(tái)技術(shù)比較 . 56 第 5 章 件運(yùn)行機(jī)制的實(shí)現(xiàn) . 57 制的封裝 . 57 自動(dòng)列集散集機(jī)制的實(shí)現(xiàn) . 59 理對(duì)象的實(shí)現(xiàn) . 59 根對(duì)象的實(shí)現(xiàn) . 62 命名服務(wù)機(jī)制的實(shí)現(xiàn) . 64 第 6 章 總結(jié)與展望 . 68 結(jié) . 68 望 . 69 目錄 V 致謝 . 70 參考文獻(xiàn) . 71 個(gè)人簡歷 在讀期間發(fā)表的學(xué)術(shù)論文與研究成果 . 72 第 1 章 引言 1 第 1章 引言 課題的目的和意義 自從計(jì)算機(jī)誕生以來,信息產(chǎn)業(yè)迅猛發(fā)展。在這個(gè)發(fā)展過程中,各種技術(shù)和成果 層出不窮。計(jì)算機(jī)的性能不斷提升,各種技術(shù)更是得到了差異化的發(fā)展。就 處理器 而言 , 現(xiàn)在常見的就有 等。 服務(wù)器和桌面 上 的 操作系統(tǒng) 可以分為各種 作系統(tǒng) 的變種 , 作系統(tǒng)和作系統(tǒng) 等等 。 與日俱增的應(yīng)用軟件則更是深入到了人們生活中的每一個(gè)細(xì)節(jié)。應(yīng)用于不同領(lǐng)域的嵌入式芯片和各種特定的 操作系統(tǒng) 更是種類繁多 。計(jì)算機(jī)的這種差異化的發(fā)展,觸及了各個(gè)領(lǐng)域,滿足了人們各方面的需求。 但是這也造成了各種平臺(tái)和技術(shù)各自為營的局面。各種技術(shù)和平臺(tái)之間無法互通,應(yīng)用程序通常只能在特定的硬件和操作系統(tǒng)平臺(tái)上運(yùn)行。 因此 ,在計(jì)算機(jī)的發(fā)展過程中,人們也一直進(jìn)行 求同存異 。 各種國際化標(biāo)準(zhǔn)組織應(yīng)運(yùn)而生, 希望通過制定標(biāo)準(zhǔn)和 接口 規(guī)范 來統(tǒng)一應(yīng) 用程序的運(yùn)行環(huán)境 。在硬件領(lǐng)域,人們 一般通過制定 標(biāo)準(zhǔn)和規(guī)范來 統(tǒng)一各個(gè)廠商的不同產(chǎn)品和技術(shù),使得他們 給用戶提供一致的 功能或者 接口 ,例如: 準(zhǔn) 。在軟件領(lǐng)域, 也有類似的標(biāo)準(zhǔn),比如操作系統(tǒng)中的 口。除了 制定 這些標(biāo)準(zhǔn)外,我們還可以 通過操作系統(tǒng)的 模擬 ,或者生成 中間代碼的技術(shù), 使得應(yīng)用程序跨 硬件 平臺(tái) 或操作系統(tǒng)平臺(tái) 運(yùn)行。 作系統(tǒng)是上??铺┦兰o(jì)公司開發(fā)的智能手機(jī)操作系統(tǒng)。 作系統(tǒng)與其他操作系統(tǒng)相比的最大特色在于它完全基于構(gòu)件技術(shù) 。 作系統(tǒng)各個(gè)部分的服務(wù) 以 件 的形式 來提供 。應(yīng)用程序通過 接口 代理指針 的形 式訪問操作系統(tǒng)內(nèi)核 。 在操作系統(tǒng)層面上引入構(gòu)件的概念, 能夠?yàn)槟壳爸髁鞯木W(wǎng)絡(luò)編程和 供強(qiáng)大的平臺(tái)支持。 作系統(tǒng)上的應(yīng)用程序也都采用了 件編程模型, 作系統(tǒng)為 件提供了完整的運(yùn)行平臺(tái) 。 構(gòu)件技術(shù)是 軟件復(fù)用中的關(guān)鍵技術(shù)。構(gòu)件技術(shù)能夠?qū)崿F(xiàn)軟件的工廠化, 是提高軟件生產(chǎn)率的“銀彈”。 件技術(shù)不僅具備了構(gòu)件技術(shù)的所有優(yōu)點(diǎn),第 1 章 引言 2 而且還添加了許多新的 技術(shù) 特性。研究 件的跨平臺(tái)運(yùn)行將能進(jìn)一步提高軟件的復(fù)用 程度 。 本課題 主要研究 件 跨操作系統(tǒng)平臺(tái) 運(yùn)行 技術(shù)。課題的目的是 要 在 搭建一個(gè) 與 而 使得 件可以二進(jìn)制兼容地運(yùn)行于 作 系統(tǒng)之上。 任何在 作系統(tǒng)上運(yùn)行的應(yīng)用程序可以二進(jìn)制兼容地運(yùn)行于 者其它操作系統(tǒng)之上。 這對(duì)于 進(jìn)一步推廣 作系統(tǒng)和 同時(shí) 也為 應(yīng)用程序 跨平臺(tái) 運(yùn)行 技術(shù)的研究也起到 一個(gè)借鑒作用 。 國內(nèi)外的研究現(xiàn)狀 目前, 國內(nèi)外關(guān)于應(yīng)用程序 跨 平臺(tái) 運(yùn)行的技術(shù) 主要 有 容內(nèi)核” 。 用的都是生成中間語言的技術(shù)。 用的是模擬 操作系統(tǒng) 方式。 著名的 開源項(xiàng)目 能夠 跨 操作系統(tǒng) 平臺(tái)運(yùn)行 。他的設(shè)計(jì) 架構(gòu), 也 非常 值得我們學(xué)習(xí) 研究 。 另外, 仿真硬件指令集 可以實(shí)現(xiàn)應(yīng)用程序跨硬件平臺(tái)運(yùn)行 。微軟的 臺(tái)上仿真 了令集 ,使得原本只能在 發(fā)板上運(yùn)行的程序也可以運(yùn)行在 。 臺(tái)為應(yīng)用程序和網(wǎng)絡(luò)服務(wù)提供了很好的開發(fā)和運(yùn)行平臺(tái)。 臺(tái) 是一個(gè)多語言的開發(fā)環(huán)境,可以運(yùn)用 # + 進(jìn)行開發(fā)。 臺(tái)主要有包括公共 語言 運(yùn)行環(huán)境,統(tǒng)一類庫和 大部分。 公共語言 運(yùn)行 環(huán)境 ( 是 核心。 它是 用程序的運(yùn)行引擎 。它在 用 程序和 操作系統(tǒng)之間提供了 的 一個(gè)中間運(yùn)行 層。公共語言運(yùn)行環(huán)境類似于 擬機(jī) ,但 它 又 不是一個(gè)解釋器 。 言 的編譯器( # 及其它編譯器) 會(huì)把 程序生成托管代碼 , 托管代碼中包含了元數(shù)據(jù)和 微軟中間語言 ( 。 托管代碼與 間語言也與具體的處理器和操作系統(tǒng)無關(guān)。 正因?yàn)樗鼈兊?1 章 引言 3 使用了這種抽象形式進(jìn)行表示,所以使用不同語言編寫的 用都可以進(jìn)行緊密的互操作,不僅可以彼此調(diào)用函數(shù),而且還可以彼此進(jìn)行類繼承。 1 圖 序編譯運(yùn)行的流程圖。 圖 管 用程序的建立和執(zhí)行 1 圖 看出, 源代碼通過托管編譯器生成了托管模塊,其中包括元數(shù)據(jù)和中間語言代碼。這些托管代碼如果是在遠(yuǎn)程,則通過網(wǎng)絡(luò)下載到本地。在本地,托管代碼在公共語言運(yùn)行環(huán)境上執(zhí)行,加載程序讀入元數(shù)據(jù),為其生成內(nèi)部的數(shù)據(jù)結(jié)構(gòu)。 譯器則讀入 碼,結(jié)合所需的內(nèi)部數(shù)據(jù)結(jié)構(gòu),生成所在特定平臺(tái)的本地代碼。然后再執(zhí)行這些本地代碼。在 ,所有的代碼都先被生成了 與硬件平臺(tái)和具 體操作系統(tǒng)無關(guān)的托管模塊。 他們在不同的平臺(tái)上被編譯成不同的本地代碼,從而可以實(shí)現(xiàn)托管代碼的跨平臺(tái)運(yùn)行。 行平臺(tái)還可以驗(yàn)證類型安全,進(jìn)行異常處理,與 象,普通的 行互操作。 情況與 致相似,也是通過生成中間語言來實(shí)現(xiàn)跨平臺(tái)運(yùn)行。程序先要編譯成 件,這個(gè) 件就是 源 程序的字節(jié)碼表示。這里的字節(jié)碼就是中間代碼, 他們 與具體的硬件平臺(tái)和操作系統(tǒng)無關(guān)。 字節(jié)碼再由 釋器直接解釋執(zhí)行。 要靠 擬機(jī)( 實(shí)現(xiàn) 目標(biāo)代碼級(jí)的 平臺(tái)無關(guān)性。 一種抽象機(jī)器,它附在具體操作系統(tǒng)之上,本身具有源代碼 托管編譯器 托管模塊 碼 元數(shù)據(jù) 公共語言運(yùn)行環(huán)境 加載程序 譯器 執(zhí)行引擎 內(nèi)部數(shù)據(jù)結(jié)構(gòu) 本地代碼 托管模塊 元數(shù)據(jù) 碼 第 1 章 引言 4 一套虛機(jī)器指令,并有自己的棧,寄存器組等等。 2 節(jié)碼與具體的硬件平臺(tái)和操作系統(tǒng)無關(guān), 照虛擬機(jī)規(guī)范在不同的平臺(tái)上有不同的實(shí)現(xiàn)。 是虛擬機(jī)規(guī)范保證了 序的跨平臺(tái)運(yùn)行。 任 何一臺(tái)計(jì)算機(jī)只要安裝了 可以運(yùn)行 序。他們可以做到一次編寫,到處運(yùn)行( 實(shí)現(xiàn) 跨軟硬件的目標(biāo)代碼級(jí)兼容。 目 開源項(xiàng)目 s 跨平臺(tái) 運(yùn)行 上使用 的是截然不同的技術(shù)。 目的是 在 運(yùn)行 序。 它 在 完整地 模擬 出 作系統(tǒng)的 內(nèi)核以及程序運(yùn)行所必需的 口。 甚至能夠在其上面進(jìn)行 序的調(diào)試。 臺(tái) 分為 載器, 部分 。 序都是 式的可執(zhí)行文件, 作系統(tǒng)上所運(yùn)行的都是式的可執(zhí)行文件,無法識(shí)別 式的可執(zhí)行文件。 載器的作用就是 在運(yùn)行時(shí)把 式文件加載到內(nèi)存中。其實(shí)現(xiàn) 方式是,首先把 式文件以文 件映射的方式映射到進(jìn)程的地址空間中。然后,分析 件的各個(gè)節(jié)表,循環(huán)加載這個(gè)程序所依賴的其他 后,根據(jù)節(jié)表找出 件中的入口函數(shù)地址和 導(dǎo)出函數(shù)地址。 根據(jù)這些函數(shù)的地址來執(zhí)行相應(yīng)的程序。 件和 件在格式上會(huì)有所不同,但是其二進(jìn)制代碼在相同的處理器上都是相同的。 因此,無論是哪種格式的二進(jìn)制文件,只要能將其二進(jìn)制代碼載入到內(nèi)存,并且找到其入口地址,均可正常運(yùn)行。 接庫是 模擬出 有的系統(tǒng) 動(dòng)態(tài)鏈接庫,如 等。 序運(yùn)行時(shí) , 載器會(huì)自動(dòng)加載這些模擬的系統(tǒng)庫 。 序?qū)ο到y(tǒng)函數(shù)的調(diào)用轉(zhuǎn)調(diào)到了這些模擬的系統(tǒng)函數(shù)中。 這也是 序能夠在 二進(jìn)制兼容的 原因 之一 。 加鼓勵(lì) 源代碼兼容 方式的跨平臺(tái)運(yùn)行 ,即把 程序在重新編譯,鏈接 提供的系統(tǒng)庫函數(shù),這樣能夠提升程序的運(yùn)行速度。 是 模擬 了 作系統(tǒng)的內(nèi)核 ,他是一個(gè)單獨(dú)的進(jìn)程 。 這 個(gè) 模擬 的內(nèi)核 是為了彌補(bǔ) 核和 核之間的差異。 例如,第 1 章 引言 5 統(tǒng)中,都是以句柄 機(jī)制 訪問內(nèi)核對(duì)象, 沒有 句柄 的概念 ,一般是通過文件描述符,進(jìn)程號(hào)等訪問內(nèi)核對(duì)象 。 因此就需要一個(gè)全局的管理進(jìn)程在 模擬 句柄機(jī)制。 除此之外, 內(nèi)核對(duì)象語義也有非常大的差異。在 用一個(gè)單獨(dú)的進(jìn)程來 模擬 除了這主要的三部分以外, 提供了編譯工具,用于在 編譯 目和 序。 也提供了 常用的程序,例如:等。 目 為 序提供了非常完備的支持。 目的總體架構(gòu)大致如下圖所示: 圖 構(gòu)視圖 圖 載器是一個(gè)單獨(dú)的進(jìn)程, 加載 應(yīng)用程序。是一個(gè)單獨(dú)的進(jìn)程,充當(dāng) 核。 核心模塊 ,由 他同 行 與內(nèi)核相關(guān)的操作 。 系統(tǒng) 級(jí)動(dòng)態(tài)鏈接庫 。 序運(yùn)行時(shí),加載其所需的各個(gè) 目現(xiàn)在能夠正常運(yùn)行 許多 序,為跨操作系統(tǒng)運(yùn)行提供了一個(gè)很好的范例。 容內(nèi)核 目 中,應(yīng)用程序每次請(qǐng)求內(nèi)核都需要與 行交互,這樣的進(jìn)程間通信極大地降低了效率。因此, 還不能運(yùn)行一些非常大型的程序。 另外, 是對(duì)內(nèi)核對(duì)象進(jìn)行了模擬,無法 模擬宿主操作系統(tǒng) 上不存在的設(shè)備驅(qū)動(dòng)程序 。例如 一些硬件設(shè)備只有 設(shè)備驅(qū)動(dòng)程序,序 各種其他 1 章 引言 6 在 沒有相 應(yīng)的驅(qū)動(dòng)模塊, 那么 就無法在 模擬 出 相應(yīng)的驅(qū)動(dòng)程序。 那么用到這些硬件設(shè)備的 序就無法正常運(yùn)行。 由于 目上存在著這些問題。 毛德操先生提出了“兼容內(nèi)核”的 設(shè)想和技術(shù)線路。其目的是:將 內(nèi)核加以擴(kuò)充,使其既支持 身的應(yīng)用和設(shè)備驅(qū)動(dòng),又支持 應(yīng)用和設(shè)備驅(qū)動(dòng),從而成為一個(gè)“兼容內(nèi)核”。 3 他 實(shí)際上就是 要 把 核和 核合二 為一。 為實(shí)現(xiàn)這個(gè)“兼容內(nèi)核”, 在 核中 必須加入 : 統(tǒng)調(diào) 用界面,通過這個(gè)系統(tǒng)調(diào)用界面, 系統(tǒng)調(diào)用可以直接調(diào)用到這個(gè)“兼容內(nèi)核”中 的內(nèi)核函數(shù)。 符合 備驅(qū)動(dòng)程序 特征和要求的框架,即 備驅(qū)動(dòng)框架,多個(gè)設(shè)備驅(qū)動(dòng)模塊裝入到內(nèi)核后,他們之間的關(guān)系和運(yùn)行環(huán)境要像在核中一樣。 核導(dǎo)出函數(shù) ,對(duì)于設(shè)備驅(qū)動(dòng)程序而言,這些函數(shù)就相當(dāng)于由內(nèi)核提供的庫函數(shù) 。 3 核添加了這些內(nèi)容成為“兼容內(nèi)核”后, 序的所有系統(tǒng)調(diào)用就都可以轉(zhuǎn)接 到這個(gè)“兼容內(nèi)核”中, 設(shè)備驅(qū)動(dòng)程序都可以順利地調(diào)用這個(gè)“兼容內(nèi)核”。 由于知識(shí)產(chǎn)權(quán)的原因,不能直接使用 等。 毛德操先生提出了把“兼容內(nèi)核”與 目相結(jié)合的方法。 即把 目中原來調(diào)用 對(duì) 系統(tǒng)調(diào)用 改為直接調(diào)用“兼容內(nèi)核” 。 這樣可以復(fù)用 目的代碼,也克服了 目中 速度慢,無法使用 動(dòng)程序 的缺點(diǎn)。 毛德操 先生設(shè)想的這個(gè)“兼容內(nèi)核”, 能夠讓 序兼容地運(yùn)行在統(tǒng)上,而且沒有效率上的損失。 開源項(xiàng)目,更改他的內(nèi)核也具有 可行性。 作系統(tǒng)廣泛運(yùn)用于 大型 服務(wù)器和嵌入式系統(tǒng)中 ,其 卓越的性能,良好的 安全性 和開放性受到大家的追捧。 由于用戶習(xí)慣的原因, 桌面系統(tǒng)仍然被 壟斷。 “兼容內(nèi)核” 的設(shè)想 對(duì)推廣 面系統(tǒng)具有非常積極的作用, 也為 程序跨平臺(tái)運(yùn)行提供了新的啟發(fā)。 目 目中 的 瀏覽器中的佼佼者,在瀏覽器領(lǐng)域占有主要地位。 架構(gòu)設(shè)計(jì)非常 優(yōu)異,具有非常良好的可移植性和可擴(kuò)展性。 章 引言 7 也是一個(gè)跨平臺(tái)的項(xiàng)目,下圖是 分層視圖。 圖 層視圖 4 從 圖 看出, 跨平臺(tái)技術(shù),是在不同的操作系統(tǒng)上提供了一個(gè)統(tǒng)一的跨平臺(tái)運(yùn)行庫,這包括 和 實(shí)現(xiàn)了線程,事件,信號(hào)量和文件等與具體操作系統(tǒng)相關(guān)的 抽象,讓上層模塊不受具體操作系統(tǒng)的影響。 有基于 操作系統(tǒng)的實(shí)現(xiàn)。一套圖形處理程序,實(shí)現(xiàn)了畫線、多邊形、填充、顏色、字體等功能,讓上層模塊不受具體 影響。其下有基于 多種 一套窗口控件程序庫,實(shí)現(xiàn)了象窗口、事件、拖放、剪切板功能,讓上層模塊不受具體 影響。其下也有基于 實(shí)現(xiàn)。 4 過 一個(gè)中間層為上層的模塊提供統(tǒng)一的接口,使得上層模塊不會(huì)受底層操作系統(tǒng)的影響。另外, 目中還運(yùn)用了 術(shù),從而實(shí)現(xiàn)上層應(yīng)用跨平臺(tái)運(yùn)行。 指令集仿真 微軟的 在 臺(tái)上仿真 發(fā)板。其中最重要的部分就是要仿真 由于 也為仿真工作提供了方便。 宏指令來模擬 令集。每次從二進(jìn)制文件中讀入一段 進(jìn)制代碼, 找出代碼中的每個(gè)函數(shù)S 移植運(yùn)行庫) 它 T/ S 開發(fā)的應(yīng)用程序: 第 1 章 引言 8 入口, 把他們翻譯為相應(yīng)的宏操作。 并把翻譯好的 碼 以 紅黑樹節(jié)點(diǎn)的 方式 存儲(chǔ) 。 下次 再用到這部分代碼時(shí)就直接取用,提高 整體的運(yùn)行速度。 從原理上講, 可以模擬各種其他處理器。 指令仿真器的優(yōu)點(diǎn)是可以跨硬件平臺(tái)運(yùn)行, 節(jié)省硬件成本, 提高 軟件的開發(fā)效率。例如, 用程序一般都是在 臺(tái)上開發(fā),通過交叉編譯生成進(jìn)制 代碼。 通過 真器在 臺(tái)上運(yùn)行,可以起到驗(yàn)證程序的效果。 由于是對(duì)二進(jìn)制代碼做即時(shí)翻譯,程序的執(zhí)行 速度 較慢。 另外,指令仿真器只是仿真了硬件,應(yīng)用程序要在上面正常運(yùn)行,還必須 為這些仿真硬件移植板卡支持程序和驅(qū)動(dòng)程序。 除了以上所述項(xiàng)目 之外,還有一些硬件虛擬機(jī),它們是在原有硬件的基礎(chǔ)上,再 模擬 出相同的硬件平臺(tái)。例如 C。它們實(shí)際上并沒有提供 應(yīng)用 程序跨平臺(tái)運(yùn)行的機(jī)制,而是虛擬了一套或者多套 相同 的硬件。在這些多套的硬件上,用戶可以安裝不同的操作系統(tǒng),從而達(dá)到在一臺(tái)機(jī)器上運(yùn)行多個(gè)操作系統(tǒng)的目的。 硬件虛擬機(jī)能夠更好地利用資源,特別是對(duì) 提高 利用服務(wù)器資源有很大的意義。 本人所作的工作 本人參與了基于 件運(yùn)行平臺(tái)的開發(fā)。參與了和 擬 層的設(shè)計(jì)和開發(fā)。在前面 研究人員 的基礎(chǔ)上,擴(kuò)展了 現(xiàn)了構(gòu)件的 自動(dòng) 列集散集機(jī)制,命名服務(wù)機(jī)制。 使得構(gòu)件 模擬 運(yùn)行 平臺(tái) 能夠支持 件的跨 進(jìn)程 運(yùn)行。 同時(shí), 也探索 件統(tǒng)一運(yùn)行平臺(tái) 的新 架構(gòu), 分析 比較了 件運(yùn)行平臺(tái)的不同架構(gòu) ,為 構(gòu)件 跨平臺(tái)技術(shù)研究起到一定的參考作用。 論文的組織和結(jié)構(gòu) 本篇論文較為系統(tǒng)地描述了實(shí)現(xiàn) 件跨平臺(tái)運(yùn)行所需的系統(tǒng)接口 和構(gòu)件的各種 機(jī)制 的 模擬 實(shí)現(xiàn) 。 論文 共分為六 章。 第一章,“ 引言 ”。 主要介紹了當(dāng)前國內(nèi)外的主要跨平臺(tái)技術(shù),包括 容內(nèi)核 ,硬件仿真器 等。 第 1 章 引言 9 第二章,“ 相關(guān) 技術(shù) 與概念 ”。 主要分析 了 作系統(tǒng)對(duì) 件所提供的系統(tǒng)接口, 主要包括 等。 也介紹了 件 技術(shù), 作系統(tǒng)上 件的各種機(jī)制。 實(shí)現(xiàn) 件的跨平臺(tái)運(yùn)行,則必須在宿主操作系統(tǒng)上 模擬 出這些系統(tǒng)接口 和機(jī)制 。 第三 章 , “ 架構(gòu)設(shè)計(jì) ” 。 主要闡述了 種不同的 適配層的接口設(shè)計(jì)和實(shí)現(xiàn)。 兩種適配層的設(shè)計(jì) 也決定了 他們上層的 擬層。這一章還詳細(xì)分析了這兩種架構(gòu)上應(yīng)用程序運(yùn)行過程和運(yùn)行效率損失。 第四 章, “ 構(gòu)件運(yùn)行機(jī)制的設(shè)計(jì)”。 這一章闡述了在 臺(tái)上設(shè)計(jì)和實(shí)現(xiàn) 件的 進(jìn)程間 散集列集 機(jī)制 和 命名服務(wù)機(jī)制 。也對(duì) 構(gòu)件對(duì)象的生命周期作出了分析。 第五章,“ 件運(yùn)行機(jī)制的實(shí)現(xiàn) ” 。 這一章主要論述了在 現(xiàn) 件運(yùn)行機(jī)制 的數(shù)據(jù)結(jié)構(gòu)和程序框架 。 第六 章 , “ 總結(jié)和展望 ” 。 總結(jié)了設(shè)計(jì) 件運(yùn)行 平臺(tái)的要點(diǎn), 對(duì) 后發(fā)展 提出了一些建議 。 第 2 章 相關(guān)技術(shù)與概念 10 第 2章 相關(guān)技術(shù)與概念 作系統(tǒng)是一個(gè)完全 面向構(gòu)件技術(shù) 的操作系統(tǒng)。 理由是: 核基于構(gòu)件技術(shù), 所有內(nèi)核對(duì)象 都對(duì)外提供一個(gè)接口 。 應(yīng)用程序通過這些接口的用戶態(tài)代理指針調(diào)用系統(tǒng) 功能 。 系統(tǒng)為 件的運(yùn)行提供完整的機(jī)制 。 系統(tǒng)提供的庫函數(shù)和應(yīng)用程序的編程模型都是基于構(gòu)件技術(shù)。這一章主要分析 統(tǒng)的整體架構(gòu),內(nèi)核所提供的接口,以及系統(tǒng)對(duì)構(gòu)件機(jī)制的支持 。 只有深入理解 統(tǒng)上的構(gòu)件運(yùn)行平臺(tái)和 件編程 模型,才能夠在其他宿主操作系統(tǒng)上 模擬 出構(gòu)件運(yùn)行平臺(tái)。 體系架構(gòu) 作系 統(tǒng)是 32 位嵌入式操作系統(tǒng)。 從結(jié)構(gòu)上來 看,可以分為內(nèi)核,件運(yùn)行平臺(tái)層和系統(tǒng)庫函數(shù)。結(jié)構(gòu) 如圖 示。 圖 統(tǒng)架構(gòu)圖 操作系統(tǒng) 內(nèi)核設(shè)計(jì) 有 微內(nèi)核( 和單一 內(nèi)核( 種 模型。微內(nèi)核模型是指只把最基本的 操作系統(tǒng) 功能放在內(nèi)核之中。 比如 進(jìn)件運(yùn)行平臺(tái) 用程序 系統(tǒng) 件庫 第 2 章 相關(guān)技術(shù)與概念 11 程管理,線程調(diào)度,內(nèi)存管理,進(jìn)程間通信這些操作系統(tǒng)必備的功能。 其他的系統(tǒng)模塊,例如文件系統(tǒng),設(shè)備驅(qū)動(dòng)程序,圖形系統(tǒng) 等 都放在內(nèi)核之外,以服務(wù)的形式注冊到內(nèi)核之中。微內(nèi)核模型的優(yōu)點(diǎn) 是 內(nèi)核結(jié)構(gòu)模塊化, 安
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 城南殮殯管理暫行辦法
- 電動(dòng)機(jī)單機(jī)試運(yùn)行流程與實(shí)施策略研究
- 村級(jí)農(nóng)民夜校管理辦法
- 110kV變電站升級(jí)改造與啟動(dòng)方案研究
- 古代漢語教學(xué)中的語言轉(zhuǎn)化能力培養(yǎng)策略研究
- 鏡子:揭示被忽視的世界歷史
- 大軸徑磁流體密封技術(shù)的發(fā)展與進(jìn)展
- 《完整的PMC部作業(yè)流程體系》
- 工貿(mào)企業(yè)安全教育培訓(xùn)
- 林業(yè)文化遺產(chǎn)地感知價(jià)值與游客重游意愿關(guān)系研究
- 30萬噸年合成氨、52萬噸年尿素工程可行性研究報(bào)告
- 2020年12月9日湖北武漢黃陂區(qū)社區(qū)干事招聘筆試試題
- 解熱鎮(zhèn)痛抗炎藥非甾體抗炎藥專家講座
- DB44-T 2410-2023紅樹林生態(tài)修復(fù)工程評(píng)價(jià)技術(shù)規(guī)程
- YY/T 1830-2022電動(dòng)氣壓止血儀
- 臨床、口腔醫(yī)師申報(bào)衛(wèi)生高級(jí)職稱工作量登記表
- GB/T 10045-2018非合金鋼及細(xì)晶粒鋼藥芯焊絲
- GB 7099-2015食品安全國家標(biāo)準(zhǔn)糕點(diǎn)、面包
- 2023年納雍縣財(cái)政局系統(tǒng)事業(yè)單位招聘筆試題庫及答案解析
- 2023年廣東省普通高中學(xué)業(yè)水平考試及參考答案
- 建筑工程模板施工工藝技術(shù)要點(diǎn)講義豐富課件
評(píng)論
0/150
提交評(píng)論