【畢業(yè)學(xué)位論文】(Word原稿)嵌入式Linux實(shí)時(shí)性研究與改進(jìn)-軟件工程_第1頁
【畢業(yè)學(xué)位論文】(Word原稿)嵌入式Linux實(shí)時(shí)性研究與改進(jìn)-軟件工程_第2頁
【畢業(yè)學(xué)位論文】(Word原稿)嵌入式Linux實(shí)時(shí)性研究與改進(jìn)-軟件工程_第3頁
【畢業(yè)學(xué)位論文】(Word原稿)嵌入式Linux實(shí)時(shí)性研究與改進(jìn)-軟件工程_第4頁
【畢業(yè)學(xué)位論文】(Word原稿)嵌入式Linux實(shí)時(shí)性研究與改進(jìn)-軟件工程_第5頁
已閱讀5頁,還剩58頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

中圖分類號: 學(xué)校代碼: 10055 密級: 碩 士 專 業(yè) 學(xué) 位 論 文 中文題目: 嵌入式 of 文作者 指導(dǎo)教師 副 )教授 申請學(xué)位 工程碩士 培養(yǎng)單位 軟件學(xué)院 學(xué)科專業(yè) 軟件工程 研究方向 答辯委員會主席 評 閱 人 南開大學(xué)研究生院 二一 三 年 五 月 南開大學(xué)學(xué)位論文使用授權(quán)書 根據(jù)南開大學(xué)關(guān)于研究生學(xué)位論文收藏和利用管理辦法,我校的博士、碩士學(xué)位獲得者均須向南開大學(xué)提交本人的學(xué)位論文紙質(zhì)本及相應(yīng)電子版。 本人完全了解南開大學(xué)有關(guān)研究生學(xué)位論文收藏和利用的管理規(guī)定。南開大學(xué)擁有在著作權(quán)法規(guī)定范圍內(nèi)的學(xué)位論文使用 權(quán),即: (1)學(xué)位獲得者必須按規(guī)定提交學(xué)位論文 (包括紙質(zhì)印刷本及電子版 ),學(xué)校可以采用影印、縮印或其他復(fù)制手段保存研究生學(xué)位論文,并編入南開大學(xué)博碩士學(xué)位論文全文數(shù)據(jù)庫; (2)為教學(xué)和科研目的,學(xué)??梢詫⒐_的學(xué)位論文作為資料在圖書館等場所提供校內(nèi)師生閱讀,在校園網(wǎng)上提供論文目錄檢索、文摘以及論文全文瀏覽、下載等免費(fèi)信息服務(wù); (3)根據(jù)教育部有關(guān)規(guī)定,南開大學(xué)向教育部指定單位提交公開的學(xué)位論文; (4)學(xué)位論文作者授權(quán)學(xué)校向中國科技信息研究所及其萬方數(shù)據(jù)電子出版社和中國學(xué)術(shù)期刊 (光盤 )電子出版社提交規(guī)定范 圍的學(xué)位論文及其電子版并收入相應(yīng)學(xué)位論文數(shù)據(jù)庫,通過其相關(guān)網(wǎng)站對外進(jìn)行信息服務(wù)。同時(shí)本人保留在其他媒體發(fā)表論文的權(quán)利。 非公開學(xué)位論文,保密期限內(nèi)不向外提交和提供服務(wù),解密后提交和服務(wù)同公開論文。 論文電子版提交至 校圖書館網(wǎng)站: 。 本人承諾:本人的學(xué)位論文是在南開大學(xué)學(xué)習(xí)期間創(chuàng)作完成的作品,并已通過論文答辯;提交的學(xué)位論文電子版與紙質(zhì)本論文的內(nèi)容一致,如因不同造成不良后果由本人自負(fù)。 本人同意遵守上述規(guī)定。本授權(quán)書簽署一式兩份,由研究生 院和圖書館留存。 作者暨授權(quán)人簽字: 20 年 月 日 南開大學(xué)研究生學(xué)位論文作者信息 論文題目 姓 名 學(xué)號 答辯日期 論文類別 博士 學(xué)歷碩士 碩士專業(yè)學(xué)位 高校教師 同等學(xué)力碩士 院 /系 /所 軟件學(xué)院 專業(yè) 軟件工程 聯(lián)系電話 通信地址 (郵編 ): 備注: 是否批準(zhǔn)為非公開論文 否 注:本授權(quán)書適用我校授予的所有博士、碩士的學(xué)位論文。由作者填寫 (一式兩份 )簽字后交校圖書館 ,非公開學(xué)位論文須附南開大學(xué)研究生申請非公開學(xué)位論文審批表。 南開大學(xué)學(xué)位論文原創(chuàng)性聲明 本人鄭重聲明:所呈交的學(xué)位論文,是本人在導(dǎo)師指導(dǎo)下進(jìn)行研究工作所取得的研究成果。除文中已經(jīng)注明引用的內(nèi)容外,本學(xué)位論文的研究成果不包含任何他人創(chuàng)作的、已公開發(fā)表或者沒有公開發(fā)表的作品的內(nèi)容。對本論文所涉及的研究工作做出貢獻(xiàn)的其他個(gè)人和集體,均已在文中以明確方式標(biāo)明。本學(xué)位論文原創(chuàng)性聲明的法律責(zé)任由本人承擔(dān)。 學(xué)位論文作者簽名: 年 月 日 非公開學(xué)位論文標(biāo)注說明 根據(jù)南開大學(xué)有關(guān)規(guī)定,非公開學(xué)位論文須經(jīng)指導(dǎo)教師同意、作者本人申請和相關(guān)部門批準(zhǔn)方能標(biāo)注。未經(jīng)批準(zhǔn)的均為公開學(xué)位論文,公開學(xué)位論文本說明為空白。 論文題目 申請密級 限制 ( 2年 ) 秘密 ( 10 年 ) 機(jī)密 ( 20 年 ) 保密期限 20 年 月 日至 20 年 月 日 審批表編號 批準(zhǔn)日期 20 年 月 日 南開大學(xué)學(xué)位評定委員會辦公室蓋章 (有效 ) 注: 限制 2年 (可少于 2年 );秘密 10年 (可少于 10 年 );機(jī)密 20年 (可少于 20年 ) 摘要 摘要 到目前,實(shí)時(shí)操作系統(tǒng)廣泛應(yīng)用于各個(gè)領(lǐng)域,越來越受到信息領(lǐng)域人們的重視。在實(shí)時(shí)操作系統(tǒng)中,基于 嵌入式實(shí)時(shí)操作系統(tǒng),由于源碼的開放性、高可擴(kuò)展、利于定制和管理,以及穩(wěn)定性的 統(tǒng),日益引起人們的歡迎和關(guān)注。但 統(tǒng)并不是真正的實(shí)時(shí)操作系統(tǒng),應(yīng)用到 嵌入式 實(shí)時(shí)性方面必須對其進(jìn)行實(shí)時(shí)化改造。而實(shí)時(shí)化改造 統(tǒng),組建一個(gè)基于 源的、通用的、廉價(jià)的以及效率高的實(shí)時(shí)操作系統(tǒng)是目前實(shí)時(shí)操作系統(tǒng)的趨勢之一,如何增強(qiáng) 嵌入式 實(shí)時(shí)性是當(dāng)前實(shí)時(shí)操作系統(tǒng)研究的重點(diǎn)課題之一,也是國內(nèi)外計(jì)算機(jī)行業(yè)研究的熱點(diǎn)之一。 本文的工作正是研究嵌入式 核的實(shí)時(shí)性能改進(jìn),在分析 核源代碼的基礎(chǔ)上,針對 核 在嵌入式 實(shí)時(shí)性 方面存在的 問題 進(jìn)行分析 ,從實(shí)時(shí)操作系統(tǒng)的 可搶占 性 、確定性、中斷延遲、上下文切換、調(diào)度延遲 5 個(gè)性能指標(biāo)出發(fā),主要分析了進(jìn)程調(diào)度機(jī)制和中斷技術(shù) ,進(jìn)程調(diào)度主要包含了上下文切換和調(diào)度延遲兩方面,中斷技術(shù)主要用來包括中斷延遲 。首先,本文將 法與嶄新的 程調(diào)度機(jī)制相結(jié)合,賦予 法調(diào)度,在保持了本身系統(tǒng)調(diào)度算法特征的同時(shí), 有效地改進(jìn)了 實(shí)時(shí)調(diào)度能力,其次,參考中斷線程化的思想,將非實(shí)時(shí)中斷線程化,使其延遲處理非實(shí)時(shí)中斷處理程序,迫使非實(shí)時(shí)任務(wù)的優(yōu)先級低于實(shí)時(shí)任務(wù),使系統(tǒng)優(yōu)先處理 時(shí)任務(wù),系統(tǒng)負(fù)載過重的情況下,也能使實(shí)時(shí)任務(wù)的實(shí)時(shí)性得到預(yù)測以及可確定性。最后,對本文的改進(jìn)方案進(jìn)行測試,通過對測試數(shù)據(jù)的分析比較,證明改造后的內(nèi)核在實(shí)時(shí)性能上比普通 加適用于目前嵌入式高實(shí) 時(shí)性應(yīng)用的開發(fā)。 關(guān)鍵詞: 嵌入式系統(tǒng) 時(shí)調(diào)度 實(shí)時(shí)性 中斷 p to in s In to of as as is a to of it be of of a is of of to of of of of at is of on of .6 to in to of is to of .6 DF DF at by to of to of DF of by of to in on .6 to DF 錄 錄 摘要 . I . 錄 . 1 章 緒論 . 1 課題研究背景 . 1 研究的現(xiàn)狀與意義 . 1 論文組織結(jié)構(gòu) . 2 第 2 章 . 3 . 3 . 4 進(jìn)程調(diào)度 . 5 內(nèi)存管理 . 5 文件系統(tǒng) . 6 進(jìn)程間通信 . 7 網(wǎng)絡(luò)接口 . 7 . 8 高精度計(jì)時(shí)系統(tǒng) . 8 軟實(shí)時(shí)系統(tǒng)和硬實(shí)時(shí)系統(tǒng) . 8 非搶占式內(nèi)核和搶占式內(nèi)核 . 8 多級中斷機(jī)制 . 8 實(shí)時(shí)調(diào)度機(jī)制 . 9 嵌入式 時(shí)系統(tǒng)的性能分析 . 9 目錄 V 第 3 章 嵌入式 時(shí)性現(xiàn)狀分析與改進(jìn) . 11 嵌入式 時(shí)性分析 . 11 常見 時(shí)性提升方案分析 . 13 . 13 . 14 . 16 嵌入式 時(shí)性改進(jìn)思路 . 17 第 4 章 進(jìn)程調(diào)度機(jī)制設(shè)計(jì)與改進(jìn) . 19 . 19 進(jìn)程調(diào)度 . 19 數(shù)據(jù)結(jié)構(gòu) . 20 調(diào)度策略 . 22 實(shí)時(shí)調(diào)度算法的研究 . 25 實(shí)時(shí)調(diào)度器設(shè)計(jì) . 26 主要數(shù)據(jù)結(jié)構(gòu) . 26 主要算法 . 27 第 5 章 中斷技術(shù)的研究與優(yōu)化 . 32 . 32 . 32 數(shù)據(jù)結(jié)構(gòu) . 33 . 35 . 35 . 36 . 37 中斷技術(shù)改進(jìn) . 39 . 39 改進(jìn)方案的設(shè)計(jì) . 40 目錄 小結(jié) . 42 第 6 章 系統(tǒng)測試與分析 . 43 測試對象 . 43 嵌入式 斷響應(yīng)測試 . 43 測試原理與方法 . 43 測試結(jié)果 . 45 嵌入式 程調(diào)度測試 . 45 測試原理與方法 . 45 測試結(jié)果 . 46 結(jié)論 . 48 研究工作總結(jié) . 48 未來工作展望 . 48 參考文獻(xiàn) . 49 致謝 . 53 個(gè)人簡歷 在學(xué)期間發(fā)表的學(xué)術(shù)論文與研究成果 . 54 第 1章 緒論 1 第 1 章 緒論 課題研究背景 從嵌入式系統(tǒng)的出現(xiàn),到現(xiàn)在已經(jīng)有了幾十年的發(fā)展歷史,嵌入式技術(shù)目前已進(jìn)入了一個(gè)相當(dāng)成熟的階段。嵌入式系統(tǒng)有一個(gè)顯著的特征 可預(yù)測性和實(shí)時(shí)性,該特征使其廣泛應(yīng)用到多個(gè)應(yīng)用領(lǐng)域,例如高速鐵路、航空等這些應(yīng)用。在一個(gè)優(yōu)秀嵌入式系統(tǒng)環(huán)境中,需要具備支持多任務(wù)、實(shí)時(shí)性的特征,因此廣泛應(yīng)用的嵌入式系統(tǒng)必須具有與外部環(huán)境實(shí)時(shí)交互的能力。 隨著 信息技術(shù)的飛速發(fā)展,由于需求迅速的變化,嵌入式實(shí)時(shí)系統(tǒng)越來越在各行各業(yè)中發(fā)揮著巨大的作用。因此,研究嵌入式系統(tǒng)有著相當(dāng)重要的實(shí)際意義,特別是實(shí)時(shí)性更是關(guān)鍵技術(shù)之一。 于自身的特點(diǎn)源碼開放性,成為實(shí)時(shí)系統(tǒng)和嵌入式系統(tǒng)方向上的一個(gè)研究熱點(diǎn)。由于 實(shí)時(shí)性方面的不足,以及現(xiàn)實(shí)應(yīng)用中的實(shí)際需求,需要對 作系統(tǒng)的實(shí)時(shí)性進(jìn)行改造。其中最重要的工作是分析 進(jìn)程調(diào)度機(jī)制和中斷技術(shù)以及搶占性,進(jìn)而來整改 核來增強(qiáng)系統(tǒng)實(shí)時(shí)性的方法,其最終滿足實(shí)時(shí)性的需求。 研究的現(xiàn)狀 與意義 因 一個(gè)自由的、開放源代碼的、免費(fèi)的操作系統(tǒng),它允許所有用戶根據(jù)自身的實(shí)際需求對它進(jìn)行編輯和修改。目前,行業(yè)內(nèi)已經(jīng)大量出現(xiàn)了基于實(shí)時(shí)系統(tǒng),如 ,這些實(shí)時(shí)性操作系統(tǒng)中的大多數(shù)已成功廣泛的應(yīng)用到各個(gè)領(lǐng)域,甚至有些已經(jīng)應(yīng)用在軍事和航天、鐵路等重要領(lǐng)域,取得了很大進(jìn)步。 在最近幾年內(nèi),由于通信行業(yè)技術(shù)的不斷進(jìn)步和市場需求的不斷增加,促進(jìn)了嵌入式設(shè)備的迅速發(fā)展,從而也推動了 身的發(fā)展。 身有很多的優(yōu)點(diǎn)和現(xiàn)已在市場上流行的實(shí) 時(shí)性 統(tǒng),引起了國內(nèi)外計(jì)算機(jī)行業(yè)越來越多的關(guān)注,實(shí)時(shí)系統(tǒng)研究已經(jīng)逐漸壯大發(fā)展起來。但是對 入式實(shí)時(shí)性的深入研究,目前國內(nèi)比國外較滯后。但總觀世界各國越來越對 關(guān)注,特別是韓國和德國在政策上對 統(tǒng)的大力支持,說明 統(tǒng)在生活中第 1章 緒論 2 起到了越來越重要的作用。 在現(xiàn)今的社會背景,特別是通信行業(yè)對實(shí)時(shí)性任務(wù)的需求越來越大,因此,加強(qiáng)對 統(tǒng)實(shí)時(shí)性技術(shù)的研究和改進(jìn)對當(dāng)今社會有很大的價(jià)值和現(xiàn)實(shí)意義的論題。 論文組織結(jié)構(gòu) 其源碼的開放性、功能非常完善 性,穩(wěn)定性又高、可靠性又好、資源又豐富的特點(diǎn),得到了業(yè)界一致好評,但要將其應(yīng)用于相應(yīng)的實(shí)時(shí)性領(lǐng)域,則需對 統(tǒng)進(jìn)行改造。論文主要對 嵌入式實(shí)時(shí)性技術(shù)進(jìn)行了系統(tǒng)性研究,主要內(nèi)容包括: 1基本概念的進(jìn)一步研究。通過閱讀大量相關(guān)書籍和期刊,對嵌入式實(shí)時(shí)系統(tǒng)的相關(guān)概念、基本特性和狀態(tài)等進(jìn)行了詳細(xì)述說,對 作系統(tǒng)的部分構(gòu)成和主要特色、性質(zhì)進(jìn)行分析。 2、通過對目前流行的嵌入式實(shí)時(shí)性操作的深入分析,找出 核中影響實(shí)時(shí)性能的關(guān)鍵因素,確定了本文對內(nèi)核改造的方向和具體的出發(fā)點(diǎn)。 3 詳細(xì)述說了 核進(jìn)程調(diào)度的基本觀念,在對目前廣泛傳播的實(shí)時(shí)調(diào)度算法進(jìn)行深入研究的基礎(chǔ)上,實(shí)時(shí)內(nèi)核的進(jìn)程中實(shí)現(xiàn)了 先算法,來提高在實(shí)時(shí)性方面進(jìn)程調(diào)度問題。 4通過闡述 斷技術(shù)的機(jī)制,來進(jìn)行改進(jìn)中斷技術(shù)來提高系統(tǒng)的實(shí)時(shí)性。 5對 核源代碼在原有系統(tǒng)的基礎(chǔ)上進(jìn)行改進(jìn)和編譯,并測試了編譯后系統(tǒng)的實(shí)時(shí)性。 論文的具體章節(jié)安排如下: 第 l 章緒論 第 2 章 時(shí)操作系統(tǒng) 第 3 章 嵌入式 時(shí)性現(xiàn)狀分析與改進(jìn) 第 4 章進(jìn)程調(diào)度機(jī)制 的設(shè)計(jì) 與改進(jìn) 第 5 章中斷技術(shù)的研究與優(yōu)化 第 6 章 系統(tǒng)測試與分析 第 2章 嵌入式 時(shí)操作系統(tǒng) 3 第 2 章 時(shí)操作系統(tǒng) 時(shí)操作系統(tǒng)簡介 需要對外部事件進(jìn)行及時(shí)響應(yīng)并處理的領(lǐng)域主要通過 實(shí)時(shí)系統(tǒng) 因此 , 我們研究的 實(shí)時(shí)系統(tǒng)最關(guān)鍵的因素 是 對時(shí)間的響應(yīng)。系統(tǒng) 在 輸入 時(shí)產(chǎn)生 的及時(shí)響應(yīng),對輸出 時(shí)會 按需提供,無延遲的處理 也就是實(shí)時(shí)系統(tǒng) 。 在 念 如下: 產(chǎn)生系統(tǒng)輸出的時(shí)間對系統(tǒng)是至關(guān)重要的系統(tǒng)就是實(shí)時(shí)系統(tǒng)。從輸入到輸出的延遲時(shí)間必須滿足小到一個(gè)可以接受的時(shí)限 (因此實(shí)時(shí)邏輯的正確性不僅依賴 于輸出結(jié)果的時(shí)間,還取決于正確的計(jì)算結(jié)果。 實(shí)時(shí)操作系統(tǒng)是指對特定的功能或者對外部的異步事件在特定的時(shí)間范圍內(nèi)完成并做出響應(yīng)的實(shí)時(shí)操作系統(tǒng)。實(shí)時(shí)操作系統(tǒng)應(yīng)當(dāng)在限定的時(shí)間內(nèi)完成 ,還 需要邏輯結(jié)果的準(zhǔn)確性。 實(shí)時(shí)操作系統(tǒng)具有以下特征: 每個(gè)任務(wù),就是一個(gè)進(jìn)程,每個(gè)進(jìn)程都被賦予一定的領(lǐng)先級,擁有獨(dú)自的作系統(tǒng)允許同步多個(gè)進(jìn)程并發(fā)共享一個(gè) 為多任務(wù)運(yùn)行。 而事實(shí)上, 同一時(shí)刻只能激活一個(gè)進(jìn)程,而這種進(jìn)程間的切換在所有進(jìn)程完成前一直進(jìn)行。 上下文切換是多任務(wù)調(diào)度的核心內(nèi)容, 基礎(chǔ) 。 上下文切換 (一個(gè) 過程包括保存一個(gè)被掛起進(jìn)程的上下文而且進(jìn)程再次獲取 夠恢復(fù)其上下文的運(yùn)行環(huán)境。 上下文切換包括以下幾個(gè)環(huán)節(jié): (1) 確認(rèn)能否做上下文切換且能否允許做上下文切換。 (2) 保存當(dāng)前進(jìn)程的運(yùn)行環(huán)境。 (3) 使用任務(wù)調(diào)度器,從就緒隊(duì)列中選擇合適的進(jìn)程。 第 2章 嵌入式 時(shí)操作系統(tǒng) 4 (4) 恢復(fù)并設(shè)置所需進(jìn)程的運(yùn)行環(huán)境,合理使用 3. 分發(fā)器 調(diào)度器的 一個(gè) 重要 環(huán)節(jié) 是分發(fā)器,它負(fù)責(zé)執(zhí)行上下文切換 并且 改變執(zhí)行的順序 。在實(shí)時(shí)操作的系統(tǒng)中,任 一 時(shí)間執(zhí)行的進(jìn)程在一個(gè)應(yīng)用任務(wù)、一個(gè)中斷處理兩個(gè)區(qū)域的其中一個(gè)。當(dāng)中斷離開時(shí),分發(fā)器負(fù)責(zé) 把 控制信息傳 至 用戶應(yīng)用任務(wù)中的一個(gè)。 4. 調(diào)度算法 當(dāng)系統(tǒng)執(zhí)行進(jìn)程間切換時(shí),調(diào)度器 依 當(dāng)期所選的調(diào)度算法從 適合 的進(jìn)程隊(duì)列中選擇進(jìn)程, 通常, 實(shí)時(shí)操作系統(tǒng)的調(diào)度算法與其它操作系統(tǒng) 存在偏差 ,通用系統(tǒng)的調(diào)度算法一般 遵守 先進(jìn)先出的公平策略,實(shí)時(shí)調(diào)度器則遵循實(shí)時(shí)進(jìn)程的需要來決定選擇進(jìn)程,從而決定哪個(gè)進(jìn)程優(yōu)先處理。 體系結(jié)構(gòu) 核 主要由 5個(gè)模塊構(gòu)成,它們分別是:進(jìn)程調(diào)度模塊、內(nèi)存動態(tài)分配與釋放模塊、文件操作系統(tǒng)模塊、進(jìn)程間通信模塊和網(wǎng)絡(luò)接口模塊。進(jìn)程調(diào)度模塊的使用過程用于控制 源,使其各個(gè)進(jìn)程能夠公平和合理使用 時(shí)保證內(nèi)核的正常運(yùn)轉(zhuǎn)以及 時(shí)執(zhí)行硬件操作。內(nèi)存動態(tài)分配與釋放模塊用于確保所有進(jìn)程能夠穩(wěn)定地使用共享內(nèi)存區(qū),對內(nèi)存使用虛擬化 管理,使其 程在使用過程中得到更大的擴(kuò)張容量,并可以把外部存儲設(shè)備通過虛擬化管理使其存儲文件系統(tǒng)暫時(shí)不使用的文件,在內(nèi)存和外部存儲設(shè)備間進(jìn)行 切換。 對外部設(shè)備驅(qū)動程序和存儲的支持由文件系統(tǒng)模塊完成。虛擬文件系統(tǒng)模塊借助向外部存儲設(shè)備提供一個(gè)通用的虛擬操作接口,進(jìn)而提內(nèi) 存 管 理進(jìn) 程 調(diào) 度文 件 系 統(tǒng) 進(jìn) 程 間 通 信網(wǎng) 絡(luò) 接 口圖 核模塊結(jié)構(gòu)關(guān)系圖 第 2章 嵌入式 時(shí)操作系統(tǒng) 5 供、支持與其它操作系統(tǒng)兼容的多種文件系統(tǒng)格式。進(jìn)程之間通信模塊子系統(tǒng)用來支持多種進(jìn)程間的信息交換。網(wǎng)絡(luò)接口模塊提供對多種網(wǎng)絡(luò)通信標(biāo)準(zhǔn)的訪問,尤其是協(xié)議棧的支持極為優(yōu)秀。 所有模塊均與進(jìn)程調(diào)度模塊存互相配合、相互補(bǔ)充的關(guān)系。因它們都依賴進(jìn)程調(diào)度來掛起(暫停)或重新運(yùn)行其進(jìn)程。平常,某個(gè)模塊會在等待系統(tǒng)資源時(shí)被掛起,而在操作完成后方可繼續(xù)運(yùn)行。 進(jìn)程調(diào)度 進(jìn)程調(diào)度程序是決定所 有進(jìn)程中進(jìn)度的執(zhí)行順序,選擇下一個(gè)需運(yùn)行的進(jìn)程,是 作系統(tǒng)的核心。進(jìn)程調(diào)度程序可認(rèn)為是在有限的資源下怎樣合理使用系統(tǒng)資源進(jìn)而運(yùn)行進(jìn)程的內(nèi)核子系統(tǒng)。進(jìn)程調(diào)度時(shí)機(jī): (1) 進(jìn)程狀態(tài)轉(zhuǎn)換時(shí):如進(jìn)程終止、睡眠等。 (2) 可運(yùn)行隊(duì)列中增加新的進(jìn)程時(shí)。 (3) 當(dāng)前進(jìn)程的時(shí)間片耗盡時(shí)。 (4) 進(jìn)程從系統(tǒng)調(diào)用返回到用戶態(tài)時(shí)。 (5) 內(nèi)核處理完終端后,進(jìn)程返回到用戶態(tài)。 我們所使用的通用調(diào)度算法都是基于優(yōu)先級的調(diào)度算法,每一輪的進(jìn)程調(diào)度都是在進(jìn)程就緒隊(duì)列中由進(jìn)程調(diào)度函數(shù)通過調(diào)度算法決定哪個(gè)進(jìn)程該存放在進(jìn)程 運(yùn)行隊(duì)列中。通用 核提供 3 種調(diào)度算法: 進(jìn)先出的任務(wù)調(diào)度算法。系統(tǒng)采用該調(diào)度算法時(shí),進(jìn)程進(jìn)入就緒隊(duì)列那一刻時(shí),就決定了該進(jìn)程的優(yōu)先級,一旦進(jìn)程掌控了 源只要改進(jìn)程完成或者自動退出才會釋放 源。 R:時(shí)間片輪轉(zhuǎn)的任務(wù)調(diào)度算法。該調(diào)度算法的策略是當(dāng)進(jìn)程的時(shí)間片用完,系統(tǒng)將重新分配時(shí)間片,并把該進(jìn)程的描述符置于就緒隊(duì)列隊(duì)尾,放在隊(duì)尾保證了所有具有相同優(yōu)先級的 務(wù)的公平調(diào)度。 通分時(shí)進(jìn)程的調(diào)度策略 內(nèi)存管理 內(nèi)存 管理子系統(tǒng)主要包括以下功能: 第 2章 嵌入式 時(shí)操作系統(tǒng) 6 (1)地址映射 核使用頁式內(nèi)存管理,應(yīng)用程序給出虛擬 內(nèi)存 地址,它需經(jīng)過若干級頁表 逐級 的變換,才變成真正的物理地址 。 (2)虛擬地址管理 每個(gè)進(jìn)程 與每 個(gè) 構(gòu) 相 對應(yīng),它指向一個(gè) 構(gòu), 此即 該進(jìn)程的內(nèi)存管理器 , 用戶程序?qū)?nèi)存的操作(分配、回收、映射)都是對 操作,具體是對 的虛擬內(nèi)存空間的操作。這些 表著進(jìn)程空間的各區(qū)域,如堆、棧、代碼區(qū)、數(shù)據(jù)區(qū)、各種映射區(qū)等 。 (3)物理內(nèi)存管理 確保 內(nèi)存管理程序全部 進(jìn)程都能均衡地訪問計(jì)算機(jī)的內(nèi)存資源, 如此 即可 保證系統(tǒng)性能的 完美 。 (4)共享內(nèi)存 內(nèi)存管理程序允許進(jìn)程進(jìn)行內(nèi)存共享。 文件系統(tǒng) 文件系統(tǒng) 就是 文件存在的物理空間 。 設(shè)計(jì) 伊始 就 考慮 到支持大量不同的物理設(shè)備。 文件系統(tǒng)體系結(jié)構(gòu)是一個(gè)對復(fù)雜系統(tǒng)進(jìn)行 非具象化 的 結(jié)構(gòu) 。 它包含 了一個(gè)文件的 屬性信息(如 長度、創(chuàng)建 和 修改時(shí)間、權(quán)限、 隸屬 關(guān)系、磁盤中的位置等 ) 。 通過使用一組通用的 數(shù), 以在許多種存儲設(shè)備上支持多種文件系統(tǒng) 。 在 統(tǒng)中 。事實(shí)上 每一 分區(qū) 均指代 一個(gè)文件系統(tǒng), 并且 都有 其單獨(dú) 的目錄層次結(jié)構(gòu)。 把 這些分 別隸 屬不同分區(qū)的、 獨(dú)立 的文件系統(tǒng) 依據(jù)限 定方式 ,組成 一個(gè)總的系統(tǒng)目錄層次結(jié)構(gòu)。 每個(gè) 操作系統(tǒng)的運(yùn)行 都要靠 文件的 具體 操作 來完成 , 所以自身 文件系統(tǒng) 一定 要 持有 并維護(hù)。 在 統(tǒng)中, 文件系統(tǒng) 的功能是 用來記錄文件信息 的 ,就稱謂 索引節(jié)點(diǎn) 。就像 作系統(tǒng)中的 文件分配表 一樣,索引節(jié)點(diǎn)的功能與 作系統(tǒng)中的 文件分配表 一樣 。 事實(shí)上, 一 個(gè)文件系統(tǒng) 來 維護(hù)一個(gè)索引節(jié)點(diǎn)的數(shù)組,索引節(jié)點(diǎn)數(shù)組中的唯一一個(gè)元素都與每 一 個(gè)文件或目錄 相互 對應(yīng)。每個(gè)索引節(jié)點(diǎn)系統(tǒng) 都被 分配了一個(gè)號碼, 這就是該 節(jié)點(diǎn)在數(shù)組中的索引號, 稱 謂 索引節(jié)點(diǎn)號。 在 件系統(tǒng) 中, 在系統(tǒng)的目錄中同樣保存有 文件索引節(jié)點(diǎn)號和文件名。所以 ,目錄 就 也就是 將文件名稱 以及其 索引節(jié)點(diǎn)號 結(jié)合然后 在一起 形成 的一張表, 目錄中的一個(gè)連接是由 一對文件名稱 與其 索引節(jié)點(diǎn)號 結(jié)合 組成 。 系統(tǒng)中的每 個(gè)文件 都與 唯一的索引節(jié)點(diǎn)號 是 相互 對應(yīng) 的 , 同時(shí),每 個(gè)索引節(jié)點(diǎn)號 不是只第 2章 嵌入式 時(shí)操作系統(tǒng) 7 對一個(gè)文件名,它 可以與 不同的 文件名 相互 對應(yīng)。 故而 , 可以 在磁盤上 通過不相同的路徑去訪問、查看、更改 同 一個(gè) 文件??梢杂?令 把一個(gè)已經(jīng)存在的文件再次建立另外一個(gè)新的連接 , 然而并 不 用 復(fù)制文件的 具體 內(nèi)容。連接 分為軟連接 與 硬連接 ,軟連接 也 稱謂 符號連接。 進(jìn)程間通信 進(jìn)程間各種各樣的通信機(jī)制由進(jìn)程通信支持。 常見的進(jìn)程通信機(jī)制有:網(wǎng)絡(luò) 制、管道 (有名管道 ( 管道:普通管道通常是半雙工的單向傳輸只在父子或兄弟進(jìn)程間使用,命名管道是雙向傳輸?shù)耐ㄐ欧绞?,可在任意進(jìn)程之間傳輸。 消息隊(duì)列:消息隊(duì)列是另一種常用的進(jìn)程間通信。在擁有足夠權(quán)限的前提下進(jìn)程可以對消息隊(duì)列進(jìn)行相互的傳遞信息。 共享內(nèi)存:共享內(nèi)存是最快的進(jìn)程間傳輸方式。這個(gè)機(jī)制允許進(jìn)程共享它們內(nèi)存的一個(gè)區(qū)域。 信號量 (主要是供給進(jìn)程間和同一進(jìn)程不同線程之間的同步方法。 套接口 (是普遍的線程間通信機(jī)制,可用于不同機(jī)器之間的數(shù)據(jù)交換。 網(wǎng)絡(luò)接口 統(tǒng)提供了非常豐富的網(wǎng)絡(luò)功能,基本都支持現(xiàn)有互聯(lián)網(wǎng)的網(wǎng)絡(luò)協(xié)議,其中非常完善的支持了 P 協(xié)議。 P 協(xié)議也是當(dāng)今互聯(lián)網(wǎng)最流行的協(xié)議之一,也是網(wǎng)絡(luò)間終端與終端互聯(lián)的基礎(chǔ)。 絡(luò)系統(tǒng)通過 口向其它子系統(tǒng)提供服務(wù), 建立和管理是通過系統(tǒng)調(diào)用完成的。 第 2章 嵌入式 時(shí)操作系統(tǒng) 8 時(shí)系統(tǒng)特 點(diǎn) 高精度計(jì)時(shí)系統(tǒng) 計(jì)時(shí)精度是影響實(shí)時(shí)性的重要因素,在實(shí)時(shí)性系統(tǒng)中,往往需要準(zhǔn)確滴確定一個(gè)進(jìn)程或任務(wù)的實(shí)時(shí)操作, 這些不僅取決于一些硬件時(shí)鐘精度,而且還依賴于高精度 計(jì) 時(shí)功能在實(shí)時(shí)操作系統(tǒng)的實(shí)現(xiàn)。 軟實(shí)時(shí)系統(tǒng)和硬實(shí)時(shí)系統(tǒng) 實(shí)時(shí)系統(tǒng)共分為兩種類型:軟實(shí)時(shí)系統(tǒng)、硬實(shí)時(shí)系統(tǒng)。在軟實(shí)時(shí)系統(tǒng)中,系統(tǒng)的意圖是使各個(gè)任務(wù)運(yùn)行得越快越好,并不要求控制某一任務(wù)必須在一定長時(shí)間段內(nèi)完成,此類系統(tǒng)并沒有真正實(shí)時(shí)操作的要求,其對操作系統(tǒng)的實(shí)時(shí)性要求比較低,一般的實(shí)時(shí)操作系統(tǒng)均能滿足此要求。在硬實(shí)時(shí)系統(tǒng)中,每 個(gè)任務(wù)不但要執(zhí)行無誤并且要做到準(zhǔn)時(shí)無誤,其對操作系統(tǒng)的實(shí)時(shí)性要求較相當(dāng)嚴(yán)格,在系統(tǒng)設(shè)計(jì)時(shí)候要非常注意實(shí)時(shí)性的性能滿足問題,對實(shí)時(shí)操作系統(tǒng)的偽實(shí)時(shí)的特征應(yīng)進(jìn)行仔細(xì)分析研究。很多實(shí)際應(yīng)用的實(shí)時(shí)系統(tǒng)是以上二者的合理結(jié)合。 非搶占式內(nèi)核和搶占式內(nèi)核 實(shí)時(shí)內(nèi)核不同于普通內(nèi)核,普通內(nèi)核一般是不能搶占,實(shí)時(shí)操作系統(tǒng)需要實(shí)現(xiàn)當(dāng)優(yōu)先級更高的就緒進(jìn)程就必須調(diào)度該進(jìn)程,需將內(nèi)核分為非搶占式內(nèi)核和完全搶占式內(nèi)核。當(dāng)進(jìn)程處于核心態(tài)或者中斷調(diào)用后,那么搶占性內(nèi)核必須能夠把當(dāng)前優(yōu)先級最高的就緒進(jìn)程進(jìn)行調(diào)度,而非搶占性內(nèi)核由 于自身不存在該能力,從而導(dǎo)致進(jìn)程調(diào)度的不確定。 多級中斷機(jī)制 一個(gè)實(shí)時(shí)的應(yīng)用系統(tǒng)通常需要處理的各種外部信息或事件,但 根據(jù)進(jìn)程 的緊迫性處理的優(yōu)先順序。一些 進(jìn)程必須 立即 做出 反應(yīng),而另一些 進(jìn)程 可能在處第 2章 嵌入式 時(shí)操作系統(tǒng) 9 理延遲。因此,需要建立一個(gè)多層次嵌套中斷機(jī)制,以確保實(shí)時(shí)事件對較高的及時(shí)響應(yīng)和處理的緊迫性 。 實(shí)時(shí)調(diào)度機(jī)制 實(shí)時(shí)操作系統(tǒng)不僅響應(yīng)實(shí)時(shí)事件中斷,而且及時(shí)運(yùn)行實(shí)時(shí)任務(wù)調(diào)度。然而,處理器調(diào)度不可任意切換,因?yàn)樯婕暗絻蓚€(gè)過程以確保只有在 “時(shí)間 切換 ”點(diǎn) 進(jìn)行切換。 實(shí)時(shí)調(diào)度機(jī)制包括兩個(gè)方面,一是保證優(yōu) 先級調(diào)度策略和算法的實(shí)時(shí)任務(wù)調(diào)度;二是更多的 “切換 ”的時(shí)間點(diǎn)建立實(shí)時(shí)任務(wù)的調(diào)度,確保及時(shí) 處理實(shí)時(shí)進(jìn)程。 嵌入式 時(shí)系統(tǒng)的性能分析 實(shí)時(shí)操作系統(tǒng)由于受制于事件響應(yīng)的特定需求,判斷一個(gè)實(shí)時(shí)操作系統(tǒng)的好壞,其標(biāo)準(zhǔn)有其特殊之處,主要是對外部實(shí)時(shí)事件實(shí)時(shí)響應(yīng)特性和操作系統(tǒng)本身行為的可預(yù)測性。 任務(wù)調(diào)度機(jī)制、調(diào)度算法、中斷處理方式和內(nèi)存管理機(jī)制等幾個(gè)主要影響實(shí)時(shí)性能的方面可對系統(tǒng)的實(shí)時(shí)性能產(chǎn)生影響。總體上,搶占式調(diào)度要比非搶占式調(diào)度占優(yōu)勢,調(diào)度一定是要基于任務(wù)優(yōu)先級的,任務(wù)調(diào)度算法也須是實(shí)時(shí)調(diào)度算法 , 最直接的評價(jià)方法就是通過測試環(huán)境和測試程序?qū)?shí)時(shí)操作系統(tǒng)進(jìn)行系統(tǒng)響應(yīng)延遲時(shí)間的測量。 評判操作系統(tǒng)是否實(shí)時(shí)操作系統(tǒng), 應(yīng)著重 考慮以下指標(biāo): 1可搶占 (實(shí)時(shí)操作系統(tǒng) 有明顯的可搶占的特點(diǎn), 必須 具備 可搶占的 主要 功能。搶占的意思就是指 當(dāng)系統(tǒng)處于 在 內(nèi)核 態(tài)運(yùn)行的時(shí)候 , 準(zhǔn)許任務(wù)的再一次 調(diào)度。搶占有利于 提高應(yīng)用對異步事件的響應(yīng)性能力。操作系統(tǒng)內(nèi)核可搶占并不 是 表示任務(wù)調(diào)度 可以在任何一個(gè)時(shí)間段 都會發(fā)生。 2確定性 (實(shí)時(shí)操作系統(tǒng) 在某一個(gè)既 定條件下,系統(tǒng) 調(diào)用的運(yùn)行時(shí)間 必須可以 精確劃定。 然而 所有系統(tǒng)調(diào)用 并不表示 都 會 一直執(zhí)行 某個(gè) 固定時(shí)間,而是指 不管 系統(tǒng)環(huán)境怎樣,系統(tǒng)調(diào)用的最大執(zhí)行時(shí)間 都可以被 確定。 第 2章 嵌入式 時(shí)操作系統(tǒng) 10 3中斷延遲 (中斷延遲 的含義在于 從硬件中斷 從 發(fā)生 到 開始,執(zhí)行中斷處理程序 第一條指令之間的時(shí)間 周期 。系統(tǒng)關(guān)中斷的時(shí)間就是 對 中斷延遲 產(chǎn)生影響 的最大因素。 4上下文切換時(shí)間 ( 在一個(gè)多 任務(wù)系統(tǒng) 運(yùn)行的環(huán)境下 ,上下文切換 就是 指 通過運(yùn)行 一個(gè) 任務(wù) 轉(zhuǎn)移 至 另一 個(gè)就緒 任務(wù)的事件發(fā)生 時(shí) , 調(diào)整 對 控制 權(quán) ,當(dāng) 前運(yùn)行的 進(jìn)程 就緒 、 掛起 或刪除,另一個(gè) 被選定的就 緒 任務(wù) 選擇成為當(dāng)前 進(jìn)程 。上下文切換包括當(dāng)前任務(wù) 的 保存。 5調(diào)度延遲 (調(diào)度延遲 是指當(dāng)運(yùn)行低優(yōu)先級任務(wù)的進(jìn)程中出現(xiàn)了 比原來 更高的優(yōu)先級進(jìn)程的時(shí)刻 , 到該進(jìn)程被調(diào)度后開始運(yùn)行之間的時(shí)間來 測算 。 它 主要取決于當(dāng)前進(jìn)程的優(yōu)先級以及系統(tǒng)采用的調(diào)度算法。 第 3 章 時(shí)性現(xiàn)狀分析與改進(jìn) 11 第 3 章 嵌入式 時(shí)性現(xiàn)狀分析與改進(jìn) 嵌入式 時(shí)性分析 標(biāo)準(zhǔn) 1內(nèi)核不可搶占 在經(jīng)過眾多 發(fā) 人員的努力改進(jìn), 在 本 中, 內(nèi)核已經(jīng)可以被 允許搶占, 而且 實(shí)時(shí)性 也 得到了 進(jìn)一步增強(qiáng) 。但內(nèi)核中仍有大量的不可搶占區(qū)域和一些使用 效搶占的臨界區(qū)。譬如, 程都 處于 內(nèi)核態(tài)運(yùn)行 狀態(tài) , 當(dāng) 刻, 程被中斷,在中斷處理程序結(jié)束前的某一 個(gè) 時(shí)間點(diǎn),優(yōu)先級更高的 程變?yōu)榱丝蓤?zhí)行狀態(tài),由于內(nèi)核是不可搶占的, 所以 在中斷返回后 程 續(xù)運(yùn)行,直至進(jìn)程 束,調(diào)度程序被調(diào)用,切換至進(jìn)程 程 著開始 運(yùn)行。 這一情況 下,優(yōu)先級 更 高的進(jìn)程 執(zhí)行被延遲了,實(shí)時(shí)系統(tǒng)的性能 受到了 嚴(yán)重 的干擾 。如 圖 示: 2中斷關(guān)閉 斷 指令 在一些同步操作 中 使用 時(shí) ,內(nèi)核進(jìn)程 反復(fù) 中斷禁用 是 為 了 盡快 完成任務(wù) 。 如 若 低優(yōu)先級進(jìn)程關(guān)閉中斷,中斷發(fā)生時(shí)系統(tǒng), 即便 有一個(gè)高優(yōu)先級的實(shí)時(shí)過程將不響應(yīng) , 中斷關(guān)閉將增加中斷延遲, 降低系統(tǒng)的 實(shí)時(shí) 性 。 3自旋鎖 (進(jìn) 程 P 2 進(jìn) 程 P 1 中 斷 進(jìn) 程 P 1進(jìn) 程 P 2進(jìn) 程 優(yōu) 先 級時(shí) 間T 1 T 2T 3圖 核態(tài)運(yùn)行的進(jìn)程 第 3 章 時(shí)性現(xiàn)狀分析與改進(jìn) 12 自旋鎖 主要應(yīng)用于在內(nèi)核態(tài)對共享資源的合理控制,當(dāng)多個(gè)進(jìn)程需要使用相同資源時(shí)通過自旋鎖可以是解決惡性競爭以及資源的浪費(fèi)。當(dāng)兩個(gè)進(jìn)程需要同時(shí)訪問某一資源時(shí),獲取到資源的進(jìn)行將進(jìn)行加鎖過程防止資源被另一進(jìn) 程搶占,也就是說在加鎖期間搶占會失效,知道該進(jìn)程釋放資源,另一進(jìn)程才能使用該資源。在通用系統(tǒng)中 , 自旋鎖是非常普遍的 ,有的甚至 對 數(shù)組或 鏈表 的中 使用自旋鎖。因此,搶占延遲 是 非常不確定的。 4大內(nèi)核鎖 由于通用 期設(shè)計(jì)的需要使用了大內(nèi)核鎖,出于種種原因發(fā)展至今還保持了幾個(gè)大內(nèi)核鎖,但由于大內(nèi)核鎖是應(yīng)用于整個(gè)內(nèi)核的,因而造成完成進(jìn)程的延遲以及不確定性,也是實(shí)時(shí)性內(nèi)核需要解決的。 5中斷總是最高優(yōu)先級的 在 ,中斷(包括軟中斷)是最高優(yōu)先級的任務(wù),無論在任何 地方任何時(shí)刻 , 一旦發(fā)送中斷,系統(tǒng)會立 即暫停當(dāng)前進(jìn)程執(zhí)行中斷所需要的中斷函數(shù)以及后續(xù)處理。在通用 統(tǒng)中實(shí)時(shí)性任務(wù)不能得到合理的保證,比如當(dāng)系統(tǒng)一直存在中斷或者系統(tǒng)負(fù)載過重,那么 源一直處于中斷事件中,那么系統(tǒng)會在一直停留在中斷狀態(tài),而沒有事件處理實(shí)時(shí)性任務(wù),因而不能保證實(shí)時(shí)性任務(wù)的正常運(yùn)行。 因此, 中斷 機(jī)制 得不到改進(jìn) ,將永遠(yuǎn)無法實(shí)現(xiàn)實(shí)時(shí) 圖 示,當(dāng)任務(wù) 1 運(yùn)行到 ,一直存

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論