freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

嵌入式系統(tǒng)軟件及操作系統(tǒng)基礎(chǔ)(更新版)

2025-07-03 07:27上一頁面

下一頁面
  

【正文】 fork/exec和 spawn兩種模型。在多道程序的嵌入式操作系統(tǒng)中,同時存在著多個任務(wù),嵌入式內(nèi)核啟動時,只有一個任務(wù)存在,然后由該任務(wù)派生出其他所有任務(wù),這些任務(wù)采用層狀結(jié)構(gòu),存在著父子關(guān)系。任務(wù)到底是進程還是線程,在研究一個具體的嵌入式操作系統(tǒng)的時候,要注意加以區(qū)分。從程序運行的角度來看,進程就是一個正在運行的程序,在圖 一條帶有箭頭的線段來表示。 ? 總而言之,進程包含了正在運行的一個程序的所有狀態(tài)信息。進程和程序之間并不是一一對應(yīng)的。 ? 從圖 ,由于 CPU和 I/O設(shè)備的使用是并行進行的,在總的執(zhí)行時間上要明顯少于單道程序系統(tǒng)。如圖 ,從 t0到 t1,甲在使用 I/O設(shè)備,乙處于等待狀態(tài)。 ? 例如:有兩個程序甲和乙,它們在運行過程中都要用到 CPU和 I/O設(shè)備。 μC/OSII內(nèi)核本身并不支持文件系統(tǒng),但它具有良好的擴展性能,可以根據(jù)需要自行加入。 ? Windows CE操作系統(tǒng)集成了大量的 Windows XP Professional的特性,能提供與 PC機類似的桌面、任務(wù)欄、窗口、圖標、控件等圖形界面和各種應(yīng)用程序。 Windows CE不是一個硬實時系統(tǒng)。 ? ● 具有完善的網(wǎng)絡(luò)通信和文件管理機制,支持所有標準的Inter網(wǎng)絡(luò)協(xié)議,支持 ext2, ? fat16, fat32, romfs等文件系統(tǒng)。與 ANSI C兼容的 I/O系統(tǒng)包括 UNIX標準的緩沖 I/O和 POSIX標準的異步 I/O。 圖 微內(nèi)核結(jié)構(gòu) 吳貴芳 qq:6974784 Henan Uni versity of Sci . amp。典型代表有 MSDOS,其結(jié)構(gòu)就是一個有代表性的、組織良好的分層結(jié)構(gòu)。 ? ( 1)單體結(jié)構(gòu) ? 單體結(jié)構(gòu)是一種常見的組織結(jié)構(gòu),嵌入式 Linux操作系統(tǒng)、 Jbed RTOS、 181。 Tech. 電子信息工程學(xué)院 23 ? 2.按響應(yīng)時間分類 ? 按照系統(tǒng)對響應(yīng)時間的敏感程度, EOS可以分為 RTOS( Real Time Operating Systems ,實時操作系統(tǒng))和非實時操作系統(tǒng)兩大類:。 吳貴芳 qq:6974784 Henan Uni versity of Sci . amp。軟件開發(fā)在這個編程接口的上進行,而不直接與機器硬件層打交道。近年來,中間件技術(shù)也被引入到嵌入式系統(tǒng)的設(shè)計中,并與實時多任務(wù)操作系統(tǒng)緊密結(jié)合。 ? 設(shè)備驅(qū)動程序通??梢酝瓿梢恍┨囟ǖ墓δ?,這些功能一般采用函數(shù)的形式來實現(xiàn),這些函數(shù)有分層結(jié)構(gòu)和混合結(jié)構(gòu)兩種組織結(jié)構(gòu)形式。 ? ( 2)板級初始化 ? 板級初始化是一個同時包含有 軟件和硬件在內(nèi)的初始化過程 ,通過正確地設(shè)置各種寄存器的內(nèi)容來完成微處理器以外的其他硬件設(shè)備的初始化。通過這段程序,初始化硬件設(shè)備、建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境設(shè)置到一個合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核做好準備。 吳貴芳 qq:6974784 Henan Uni versity of Sci . amp。 吳貴芳 qq:6974784 Henan Uni versity of Sci . amp。利用商業(yè)軟件提供的多任務(wù)調(diào)試環(huán)境,可大大提高系統(tǒng)軟件的開發(fā)效率,降低開發(fā)成本,縮短開發(fā)周期。 吳貴芳 qq:6974784 Henan Uni versity of Sci . amp。缺乏硬件上的 時間控制機制 ,無法實現(xiàn)定時功能。 ? 無操作系統(tǒng)的嵌入式軟件主要采用循環(huán)輪轉(zhuǎn)和中斷(前后臺)兩種實現(xiàn)方式。 吳貴芳 qq:6974784 Henan Uni versity of Sci . amp。 Tech. 電子信息工程學(xué)院 3 ? ( 2)開發(fā)難度大 ? 嵌入式系統(tǒng)由于硬件資源的有限,使得嵌入式軟件在時間和空間上都受到嚴格的限制,需要開發(fā)人員對編程語言、編譯器和操作系統(tǒng)有深刻的了解,才有可能開發(fā)出運行速度快、存儲空間少、維護成本低的軟件。 吳貴芳 qq:6974784 Henan Uni versity of Sci . amp。 ? ( 4)軟件固化存儲 ? 為了提高系統(tǒng)的啟動速度、執(zhí)行速度和可靠性,嵌入式系統(tǒng)中的軟件一般都固化在存儲器芯片或微處理器中。 Tech. 電子信息工程學(xué)院 6 嵌入式軟件的體系結(jié)構(gòu) ? 1.無操作系統(tǒng)的嵌入式軟件 ? 早期在嵌入式系統(tǒng)的應(yīng)用范圍主要集中在控制領(lǐng)域,硬件的配置比較低,嵌入式軟件的設(shè)計主要是以應(yīng)用為核心,應(yīng)用軟件直接建立在硬件上,沒有專門的操作系統(tǒng),軟件的規(guī)模也很小。 ? 循環(huán)輪轉(zhuǎn)方式的 缺點是程序必須按順序執(zhí)行 ,無法處理異步事件,缺乏并行處理的能力。而一些對實時性有要求的操作通常由中斷服務(wù)程序來完成, 大多數(shù)的中斷服務(wù)程序只做一些最基本的操作 ,如標記中斷事件的發(fā)生等,其余的事情會延遲到后臺程序去完成。 Tech. 電子信息工程學(xué)院 10 ? 在嵌入式操作系統(tǒng)環(huán)境下,開發(fā)一個復(fù)雜的應(yīng)用程序,通??梢园凑哲浖こ痰乃枷?,將整個程序分解為多個任務(wù)模塊,每個任務(wù)模塊的調(diào)試、修改幾乎不影響其他模塊。最上層是網(wǎng)絡(luò)瀏覽器、MP3播放器、文本編輯器、電子郵件客戶端、電子游戲等各種應(yīng)用軟件,實現(xiàn)嵌入式系統(tǒng)的功能。 BSP把嵌入式操作系統(tǒng)與具體的硬件平臺隔離開來。 Tech. 電子信息工程學(xué)院 15 ? 2. BootLoader ? BootLoader(引導(dǎo)加載程序)是在操作系統(tǒng)內(nèi)核運行之前運行的一小段程序。片級初始化主要完成設(shè)置微處理器的核心寄存器和控制寄存器、微處理器的核心工作模式及其局部總線模式等初始化。但大多數(shù)的設(shè)備驅(qū)動程序都具有硬件啟動(初始化)、硬件關(guān)閉(關(guān)機)、硬件停用(暫停)、硬件啟用(重新啟用)、讀操作(讀取數(shù)據(jù))、寫操作(寫入數(shù)據(jù))等基本功能。 Tech. 電子信息工程學(xué)院 19 嵌入式中間件 ? 中間件是一種軟件平臺技術(shù) ,在銀行、證券、電信等行業(yè)的大型計算機應(yīng)用系統(tǒng)中廣泛應(yīng)用。 Tech. 電子信息工程學(xué)院 20 ? ? 在嵌入式系統(tǒng)中工作的操作系統(tǒng)稱為 EOS( Embedded Operating System,嵌入式操作系統(tǒng)), EOS的基本功能主要體現(xiàn)在以下兩個方面: ? 1. 構(gòu)成一個易于編程的虛擬機平臺 ? EOS構(gòu)成一個虛擬機平臺, EOS把底層的硬件細節(jié)封裝起來,為運行在它上面的軟件(如中間件軟件和各種應(yīng)用軟件)提供了一個抽象的編程接口。 ? 注意:不同的嵌入式系統(tǒng)的 EOS所包含的組件可能各不相同,內(nèi)核設(shè)計也可能各不相同的,完全取決于系統(tǒng)的設(shè)計以及實際的應(yīng)用需求 。 吳貴芳 qq:6974784 Henan Uni versity of Sci . amp。 Tech. 電子信息工程學(xué)院 24 ? 3.按軟件結(jié)構(gòu)分類 ? 按照軟件的體系結(jié)構(gòu), EOS可以分為單體結(jié)構(gòu)、分層結(jié)構(gòu)和微內(nèi)核結(jié)構(gòu)三大類,如 ~ 。分層結(jié)構(gòu)要求在每個層次上都要提供一組 API接口函數(shù),增加了系統(tǒng)的額外開銷,但系統(tǒng)的開發(fā)和維護較為簡單。 Tech. 電子信息工程學(xué)院 27 ? OS C Executive、 VxWorks, CMXRTX、 Nucleus Plus和 QNX等 EOS采用的都是微內(nèi)核結(jié)構(gòu)。其中: ? 實時微內(nèi)核 Wind包括 基于優(yōu)先級的任務(wù)調(diào)度、任務(wù)間的通信、同步和互斥、中斷處理、定時器和內(nèi)存管理機制等功能 。常見的嵌入式 Linux有 μClinux、 RTLinux、 Embedix和 Hard Hat Linux等,具有如下特點: ? ● 具有高性能、可裁剪的內(nèi)核,其獨特的模塊機制使用戶可以根據(jù)自己的需要,實時地將某些模塊插入到內(nèi)核或從內(nèi)核中移走,很適合于嵌入式系統(tǒng)的小型化的需要。 ? 3. Windows CE ? Windows CE是一個基于優(yōu)先級的多任務(wù)嵌入式操作系統(tǒng),提供了256個優(yōu)先級別,基本內(nèi)核需要至少 200KB的 ROM,支持Win32API子集、支持多種用戶界面硬件、支持多種串行和網(wǎng)絡(luò)通信技術(shù)。通信模塊允許同其他的設(shè)備進行信息交換。 μC/OSII內(nèi)核提供最基本的系統(tǒng)服務(wù),例如信號量、郵箱、消息隊列、內(nèi)存管理、中斷管理等。 ? 1.單道程序設(shè)計類型 ? 采用單道程序設(shè)計的操作系統(tǒng)在任何時候只能有一個程序在運行。 ? 在多道程序設(shè)計的環(huán)境下,允許多個程序同時運行,當(dāng)一個程序在訪問 I/O設(shè)備時,會主動把 CPU交出來,讓另一個程序去運行,從而提高系統(tǒng)資源的使用效率。這樣一直進行下去,在 t7時刻,甲執(zhí)行完畢,在 t8時刻,乙也執(zhí)行完畢。程序是靜態(tài)的,而進程是一個動態(tài)的,變化的。 ? 一組系統(tǒng)資源:包括操作系統(tǒng)用來管理進程的數(shù)據(jù)結(jié)構(gòu)、進程的內(nèi)存地址空間、進程正在使用的文件等。 ? 從資源組合的角度來看,進程把一組相關(guān)的資源組合起來,構(gòu)成了一個資源平臺(資源環(huán)境),其中包括運行上下文、內(nèi)存地址空間、打開的文件等,在圖 。 Tech. 電子信息工程學(xué)院 41 ? 3.任務(wù) ? 在一些嵌入式系統(tǒng)中,把能夠獨立運行的實體稱為 “ 任務(wù) ”( task),并沒有使用 “ 進程 ” 或 “ 線程 ” 這兩個概念。 Tech. 電子信息工程學(xué)院 42 ? 1.任務(wù)的層次結(jié)構(gòu) ? 任務(wù)的層次結(jié)構(gòu)如圖 。 ? 創(chuàng)建任務(wù)的基本方法是在一個已經(jīng)存在的任務(wù)當(dāng)中,通過調(diào)用相應(yīng)的系統(tǒng)函數(shù)來創(chuàng)建一個新的任務(wù)。而 spawn模型在創(chuàng)建新任務(wù)的時,直接為它分配一個全新的地址空間,然后將新任務(wù)的代碼裝入并運行。一般來說,任務(wù)具有運行( running)、就緒( ready)和阻塞( blocked)三種基本狀態(tài)。 ? 如圖 ,在一定條件下,任務(wù)會在不同的狀態(tài)之間來回轉(zhuǎn)換,存在運行 → 阻塞、運行 → 就緒、就緒 → 運行、阻塞 → 就緒四種轉(zhuǎn)換關(guān)系。 TCB主要包括任務(wù)的管理信息、 CPU上下文信息、資源管理信息等內(nèi)容。 ? 任務(wù)切換通常包含有以下幾個基本步驟: ? ( 1)將處理器的運行上下文保存在當(dāng)前任務(wù)的 TCB中; ? ( 2)更新當(dāng)前任務(wù)的狀態(tài),從運行狀態(tài)變?yōu)榫途w狀態(tài)或阻塞狀態(tài)。例如,處于運行狀態(tài)的所有任務(wù)構(gòu)成了運行隊列,處于就緒狀態(tài)的所有任務(wù)構(gòu)成了就緒隊列,而對于處于阻塞狀態(tài)的任務(wù),則要根據(jù)它們阻塞的原因,分別構(gòu)成相應(yīng)的阻塞隊列。 ? 一般來說,在一個新的任務(wù)被創(chuàng)建時、在一個任務(wù)運行結(jié)束時、在一個任務(wù)由于 I/O操作、信號量或其他原因被阻塞時、在一個I/O中斷發(fā)生時、在一個時鐘中斷發(fā)生時這五種調(diào)度時機都可能會發(fā)生任務(wù)的調(diào)度。而對于發(fā)生的各種中斷,并不會去調(diào)用調(diào)度程序,而是在中斷處理完成后,又會回到剛才被打斷的任務(wù)中繼續(xù)執(zhí)行。另外,要防止饑餓( starvation)情況出現(xiàn),即某一個任務(wù)始終得不到處理器去運行。 ? FCFS的最大優(yōu)點就是簡單,易于理解也易于實現(xiàn)。這種方法也稱為 SRTF( Shortest Remaining Time First,最短剩余時間優(yōu)先算法) 吳貴芳 qq:6974784 Henan Uni versity of Sci . amp。 ? 采用 RR算法時,時間片 q既不能太大,也不能太小。在可搶占方式中,當(dāng)一個任務(wù)正在運行的時候,如果這時來了一個新的任務(wù),其優(yōu)先級更高,則立即搶占 CPU去運行這個新任務(wù)。 Tech. 電子信息工程學(xué)院 61 實時系統(tǒng)調(diào)度 ? 許多嵌入式操作系統(tǒng)都是實時操作系統(tǒng)( RTOS),實時系統(tǒng)的調(diào)度追求的是實時性, RTOS調(diào)度器要讓每個任務(wù)都在其最終時間期限( deadline)之前完成,而各任務(wù)之間的公平性并不是最重要的指標。 吳貴芳 qq:6974784 Henan Uni versity of Sci . amp。另外,在一個實際的系統(tǒng)中,任務(wù)之間通常都需要進行通信和同步。 吳貴芳 qq:6974784 Henan Uni versity of Sci . amp。采用內(nèi)存保護機制的每個應(yīng)用程序都有自己獨立的地址空間,當(dāng)一個應(yīng)用程序要訪問某個內(nèi)存單元時,由硬件檢查該地址是否在限定的地址空間內(nèi),如果不是的話就要進行地址越界處理;二是防對于允許多個應(yīng)用程序共享的某塊存儲區(qū)域,每個應(yīng)用程序都有自己的訪問權(quán)限,如果違反了權(quán)限規(guī)定,則要進行操作越權(quán)處理。其中: .text:(代碼段)用來存放操作系統(tǒng)和應(yīng)用程序的 所有代碼 。 ? 2.保護模式存儲管理 ? 在保護模式存儲管理方式中, 微處理器必須具有 MMU硬件 并啟用它。為了滿足不同程序的存儲需要,各個分區(qū)的大小可以是相等的,也可以是不相等的。 ? 與固定分區(qū)相比,可變分區(qū)存儲管理的分區(qū)的個數(shù)、位置和大小都是隨著任務(wù)的進出而動態(tài)變化的,非常靈活。 Tech. 電子信息工程學(xué)院 71 ? 在內(nèi)存管理的數(shù)據(jù)結(jié)構(gòu)上,系統(tǒng)會維護一個分區(qū)鏈表,來跟蹤記錄每一個內(nèi)存分區(qū)的情況,包括該分區(qū)的狀態(tài)(已分配或空閑)、起始地址、長度等信息。 Tech. 電子信息工程學(xué)院 72 ? 1.物理地址和邏輯地址 ? 地址映射涉及到物理地址和邏輯地址兩個基本概念。用戶的程序經(jīng)過匯編或編譯后形成目標代碼,而這些目標代碼通常采用的就是相對地址的形式,其首地址為 0,其余指令中的地址都是相對于這個首地址來編址
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1