楊弋 仝敏 衛(wèi)一芃
【摘要】? ? 為了滿足嵌入式操作系統(tǒng)對(duì)空間保護(hù)、隔離故障、防止故障蔓延、空間和資源之間的分離保護(hù)機(jī)制等能力,本文在嵌入式操作系統(tǒng)中提出了實(shí)時(shí)進(jìn)程的概念。通過(guò)研究實(shí)時(shí)進(jìn)程的功能架構(gòu)、實(shí)時(shí)進(jìn)程的資源管理、空間管理劃分及映射、實(shí)時(shí)進(jìn)程的通信、運(yùn)行方式等功能,剖析了實(shí)時(shí)進(jìn)程在嵌入式操作系統(tǒng)與UNIX/Linux等傳統(tǒng)桌面系統(tǒng)的功能差異,以及不同于傳統(tǒng)進(jìn)程模型的功能特點(diǎn)。隨著嵌入式實(shí)時(shí)操作系統(tǒng)在各個(gè)領(lǐng)域應(yīng)用越來(lái)越廣泛,越來(lái)越多的新技術(shù)的應(yīng)用都需要高可靠實(shí)時(shí)性強(qiáng)高安全的系統(tǒng)作為技術(shù)支撐,實(shí)時(shí)進(jìn)程機(jī)制將在嵌入式實(shí)時(shí)操作系統(tǒng)中發(fā)揮關(guān)鍵作用。
【關(guān)鍵詞】? ? 嵌入式實(shí)時(shí)操作系統(tǒng)? ? 實(shí)時(shí)進(jìn)程
引言:
嵌入式操作系統(tǒng)產(chǎn)品出現(xiàn)于20世紀(jì)80年代初,從最初的只有一個(gè)微內(nèi)核到發(fā)展到現(xiàn)在成了一個(gè)具有龐大生態(tài)的復(fù)雜系統(tǒng)。早期的嵌入式操作系統(tǒng)的應(yīng)用場(chǎng)景單一,功能簡(jiǎn)單,嵌入式硬件的結(jié)構(gòu)和功能也相對(duì)單一,應(yīng)用的開(kāi)發(fā)人員甚至不需要使用操作系統(tǒng)就可以完成一個(gè)產(chǎn)品的研發(fā);早期的嵌入式操作系統(tǒng)與應(yīng)用之間并沒(méi)有空間和資源之間的分離保護(hù)機(jī)制,這種特性具有更好的靈活性與性能,但隨著嵌入式操作系統(tǒng)的發(fā)展,以及應(yīng)用場(chǎng)景逐漸復(fù)雜,原有的操作系統(tǒng)架構(gòu)已經(jīng)不能夠很好的支撐當(dāng)下的應(yīng)用場(chǎng)景。在面向航空、航天、核電、軌道交通等強(qiáng)實(shí)時(shí)性高安全領(lǐng)域,系統(tǒng)集成復(fù)雜度的提升,帶來(lái)的就是應(yīng)用與系統(tǒng)的確定性和穩(wěn)定性的下降。隨著空間保護(hù)、隔離故障防止故障蔓延的概念的提出,近年來(lái)一些新型的嵌入式實(shí)時(shí)操作操作系統(tǒng)提出了實(shí)時(shí)進(jìn)程(Real Time Process)的機(jī)制,該機(jī)制實(shí)現(xiàn)了應(yīng)用與應(yīng)用、應(yīng)用與操作系統(tǒng)空間隔離的能力。實(shí)時(shí)進(jìn)程能力不僅可以保證應(yīng)用程序的故障不會(huì)蔓延到其他應(yīng)用程序及核心,同時(shí)可以滿足應(yīng)用程序?qū)τ趯?shí)時(shí)性的要求。本文主要介紹在嵌入式實(shí)時(shí)操作系統(tǒng)中的實(shí)時(shí)進(jìn)程的主要能力及特點(diǎn)。
一、實(shí)時(shí)進(jìn)程的功能組成
(一)實(shí)時(shí)進(jìn)程的結(jié)構(gòu)
操作系統(tǒng)管理和分配資源的基本單位為進(jìn)程,[1]進(jìn)程運(yùn)行在用戶態(tài),每個(gè)進(jìn)程都包含獨(dú)立的地址空間,其中存放了應(yīng)用程序所需的代碼段、數(shù)據(jù)段、堆棧以及進(jìn)程的相關(guān)資源(線程、信號(hào)量、消息隊(duì)列等),進(jìn)程內(nèi)可以創(chuàng)建若干線程。對(duì)于傳統(tǒng)的桌面系統(tǒng),例如Linux/Unix,進(jìn)程除了管理用戶程序的空間和對(duì)象資源外,其本身也參與調(diào)度,而根據(jù)進(jìn)程的調(diào)度屬性,又可將進(jìn)程分為實(shí)時(shí)進(jìn)程與普通進(jìn)程,其中普通進(jìn)程的調(diào)度策略為CFS策略,[2]即公平調(diào)度原則策略;實(shí)時(shí)進(jìn)程的調(diào)度策略為基于優(yōu)先級(jí)搶占的先來(lái)先服務(wù)調(diào)度策略。本文探討的嵌入式實(shí)時(shí)操作系統(tǒng)中的實(shí)時(shí)進(jìn)程框架與上文描述的進(jìn)程框架略有不同,首先,實(shí)時(shí)進(jìn)程主要提供的是空間隔離保護(hù)的功能,其本身并不參與調(diào)度;其次,實(shí)時(shí)進(jìn)程內(nèi)運(yùn)行的為任務(wù),為了保證實(shí)時(shí)性,任務(wù)的調(diào)度策略為基于優(yōu)先級(jí)搶占的先來(lái)先服務(wù)調(diào)度策略。實(shí)時(shí)進(jìn)程的結(jié)構(gòu)如圖1所示:
(二)實(shí)時(shí)進(jìn)程的運(yùn)行單元
實(shí)時(shí)進(jìn)程內(nèi)包含有多個(gè)運(yùn)行在用戶態(tài)的任務(wù),實(shí)時(shí)進(jìn)程與任務(wù)之間是一對(duì)多的關(guān)系。用戶可以創(chuàng)建多個(gè)實(shí)時(shí)進(jìn)程,每一個(gè)實(shí)時(shí)進(jìn)程又可以創(chuàng)建多個(gè)任務(wù)。實(shí)時(shí)進(jìn)程提供任務(wù)之間的空間隔離和操作系統(tǒng)之間的空間隔離;實(shí)時(shí)進(jìn)程內(nèi)的所有任務(wù)共享實(shí)時(shí)進(jìn)程內(nèi)的資源,包括對(duì)象、堆空間、設(shè)備等。實(shí)時(shí)進(jìn)程內(nèi)的任務(wù)調(diào)度策略包括基于優(yōu)先級(jí)搶占的先來(lái)先服務(wù)策略及同優(yōu)先級(jí)時(shí)間片輪轉(zhuǎn)策略。實(shí)時(shí)進(jìn)程內(nèi)的任務(wù)在操作系統(tǒng)核心內(nèi)均可見(jiàn),系統(tǒng)內(nèi)的所有實(shí)時(shí)進(jìn)程的任務(wù)拉平調(diào)度,競(jìng)爭(zhēng)的對(duì)象還是任務(wù),與實(shí)時(shí)進(jìn)程沒(méi)有關(guān)系。
二、實(shí)時(shí)進(jìn)程的空間管理
實(shí)時(shí)進(jìn)程運(yùn)行在邏輯空間內(nèi),通過(guò)操作系統(tǒng)提供的存儲(chǔ)管理功能,由系統(tǒng)給應(yīng)用分配獨(dú)立的物理空間。不同的實(shí)時(shí)進(jìn)程邏輯空間可以重疊,在應(yīng)用程序訪問(wèn)內(nèi)存時(shí),通過(guò)處理器的MMU單元將實(shí)時(shí)進(jìn)程的邏輯地址轉(zhuǎn)換為實(shí)際的物理地址。
(一)實(shí)時(shí)進(jìn)程的物理空間劃分
操作系統(tǒng)的物理空間劃分如圖2所示,從低到高依次為:操作系統(tǒng)空間、IO空間,操作系統(tǒng)的物理空間訪問(wèn)范圍為0x00000000-0xFFFFFFFF(此處僅描述32位系統(tǒng)的情況);對(duì)于實(shí)時(shí)進(jìn)程而言,實(shí)時(shí)進(jìn)程的空間,包括用于實(shí)時(shí)進(jìn)程間通信的共享存儲(chǔ)區(qū)空間均在操作系統(tǒng)運(yùn)行時(shí)從操作系統(tǒng)堆中動(dòng)態(tài)申請(qǐng)獲得。
(二)實(shí)時(shí)進(jìn)程的邏輯空間劃分
每個(gè)實(shí)時(shí)進(jìn)程應(yīng)用都有自己的邏輯空間,且每個(gè)實(shí)時(shí)進(jìn)程的邏輯空間訪問(wèn)范圍均為0x00000000-0xFFFFFFFF(此處僅描述32位系統(tǒng)的情況)。實(shí)時(shí)進(jìn)程可運(yùn)行在用戶態(tài),也可以通過(guò)系統(tǒng)調(diào)用進(jìn)入到核心態(tài);運(yùn)行在用戶態(tài)時(shí),可以直接訪問(wèn)實(shí)時(shí)進(jìn)程的空間,當(dāng)應(yīng)用通過(guò)系統(tǒng)調(diào)用進(jìn)入核心態(tài)時(shí),由于實(shí)時(shí)進(jìn)程保存了一份核心的頁(yè)表拷貝,所以可以直接訪問(wèn)核心的空間。當(dāng)實(shí)時(shí)進(jìn)程發(fā)生切換時(shí),需要進(jìn)行MMU的切換。邏輯空間劃分如圖3所示:
(三)實(shí)時(shí)進(jìn)程的空間映射
實(shí)時(shí)進(jìn)程空間隔離能力基于處理器所支持的存儲(chǔ)管理能力來(lái)實(shí)現(xiàn),通過(guò)MMU機(jī)制,一方面可以實(shí)現(xiàn)虛擬地址空間到物理地址空間的映射,另一方面,可以為這種映射關(guān)系附加相應(yīng)的讀寫屬性,操作系統(tǒng)根據(jù)每個(gè)實(shí)時(shí)進(jìn)程的不同的空間需求,將空間映射表作為實(shí)時(shí)進(jìn)程管理的私有數(shù)據(jù)記錄,每個(gè)實(shí)時(shí)進(jìn)程都有相互獨(dú)立且不重疊的物理空間。
實(shí)時(shí)進(jìn)程的邏輯空間可以根據(jù)用戶的需求進(jìn)行設(shè)定,不同實(shí)時(shí)進(jìn)程的邏輯地址可以相同或者不同。
三、實(shí)時(shí)進(jìn)程的啟動(dòng)與資源管理
(一)實(shí)時(shí)進(jìn)程的啟動(dòng)過(guò)程
實(shí)時(shí)進(jìn)程的啟動(dòng)過(guò)程主要分為以下步驟:1.加載實(shí)時(shí)進(jìn)程映像,讀取映像信息;2.根據(jù)映像信息創(chuàng)建資源并跳轉(zhuǎn)到映像的起始地址開(kāi)始執(zhí)行。實(shí)時(shí)進(jìn)程的映像為一個(gè)標(biāo)準(zhǔn)的elf格式的可執(zhí)行文件,在操作系統(tǒng)運(yùn)行時(shí)動(dòng)態(tài)的被加載到內(nèi)存空間中并開(kāi)始運(yùn)行。通過(guò)操作系統(tǒng)的elf文件加載模塊,對(duì)可執(zhí)行文件映像進(jìn)行解析,步驟如下:讀取映像的elf文件頭;計(jì)算文件頭部信息中代碼段、數(shù)據(jù)段、bss段的總大小,以及用戶需要的實(shí)時(shí)進(jìn)程堆空間大小,并針對(duì)以上空間大小申請(qǐng)物理空間;根據(jù)映像中段信息中的邏輯地址,建立邏輯空間到物理空間的映射;將映像中的代碼段和數(shù)據(jù)段加載到內(nèi)存中,并對(duì)bss段清零;刷新并無(wú)效數(shù)據(jù)cache和指令cache;讀取映像頭部中的映像的入口地址作為實(shí)時(shí)進(jìn)程初始任務(wù)的跳轉(zhuǎn)地址。在加載完畢實(shí)時(shí)進(jìn)程映像后,還需要初始化一些基本的實(shí)時(shí)進(jìn)程數(shù)據(jù),主要包括:包括進(jìn)程控制塊,MMU空間等。在初始化完畢后,創(chuàng)建一個(gè)實(shí)時(shí)進(jìn)程的初始任務(wù),初始任務(wù)的啟動(dòng)入口為實(shí)時(shí)進(jìn)程初始任務(wù)的跳轉(zhuǎn)地址,初始任務(wù)開(kāi)始執(zhí)行則代表實(shí)時(shí)進(jìn)程程序開(kāi)始執(zhí)行。
(二)實(shí)時(shí)進(jìn)程的資源管理
實(shí)時(shí)進(jìn)程在執(zhí)行過(guò)程中,需要管理一些與實(shí)時(shí)進(jìn)程相關(guān)的資源,主要包括:代碼段、數(shù)據(jù)段和bss段空間、用戶堆??臻g,以上空間均從核心操作系統(tǒng)堆空間中分配;其他的用戶應(yīng)用所需的資源空間,包括用戶申請(qǐng)的物理空間、對(duì)象空間、任務(wù)棧等,均從用戶堆??臻g中分配。
四、實(shí)時(shí)進(jìn)程間通信
實(shí)時(shí)進(jìn)程間空間互相隔離,實(shí)時(shí)進(jìn)程不能夠通過(guò)訪問(wèn)其他實(shí)時(shí)進(jìn)程內(nèi)的空間。實(shí)時(shí)進(jìn)程間通信主要采用公共對(duì)象或者共享存儲(chǔ)區(qū)的方式。
(一)實(shí)時(shí)進(jìn)程的公共/私有對(duì)象
實(shí)時(shí)進(jìn)程內(nèi)的消息隊(duì)列或者信號(hào)量等可用于通信的對(duì)象具有私有/公共的屬性,具有私有屬性的對(duì)象僅能夠在當(dāng)前實(shí)時(shí)進(jìn)程內(nèi)使用,其他實(shí)時(shí)進(jìn)程無(wú)法訪問(wèn);如果實(shí)時(shí)進(jìn)程內(nèi)的任務(wù)需要與其他實(shí)時(shí)進(jìn)程內(nèi)的任務(wù)進(jìn)行通信,則需要使用具有公共屬性的消息隊(duì)列或信號(hào)量等對(duì)象。對(duì)于一個(gè)公共對(duì)象,創(chuàng)建時(shí)其名稱格式為“/***”,對(duì)于私有對(duì)象,名稱前不允許加“/”,系統(tǒng)通過(guò)“/”來(lái)區(qū)分公共和私有。
公共消息隊(duì)列緩沖空間為內(nèi)核空間,由于每個(gè)實(shí)時(shí)進(jìn)程間空間隔離,消息的發(fā)送與接收需要使用操作系統(tǒng)內(nèi)核的一塊緩沖空間進(jìn)行數(shù)據(jù)過(guò)渡。當(dāng)用戶任務(wù)通過(guò)公共消息隊(duì)列發(fā)送消息給另一個(gè)實(shí)時(shí)進(jìn)程的任務(wù)時(shí),首先通過(guò)系統(tǒng)調(diào)用訪問(wèn)進(jìn)入核心態(tài),之后將用戶的消息緩沖空間的內(nèi)容拷貝至操作系統(tǒng)內(nèi)核的消息緩沖空間中;當(dāng)用戶任務(wù)通過(guò)公共消息隊(duì)列接收另一個(gè)實(shí)時(shí)進(jìn)程的任務(wù)發(fā)送的消息時(shí),首先通過(guò)系統(tǒng)調(diào)用訪問(wèn)進(jìn)入核心態(tài),之后將操作系統(tǒng)內(nèi)核的消息緩沖空間的內(nèi)容拷貝至用戶的消息緩沖空間中。
(二)共享存儲(chǔ)區(qū)
共享存儲(chǔ)區(qū)是一個(gè)或多個(gè)實(shí)時(shí)進(jìn)程都可以訪問(wèn)的一塊內(nèi)存區(qū)域。共享存儲(chǔ)區(qū)分為兩種:共享數(shù)據(jù)區(qū)和共享IO區(qū)。一塊共享數(shù)據(jù)區(qū)必須與一塊物理內(nèi)存區(qū)域進(jìn)行關(guān)聯(lián)。共享數(shù)據(jù)區(qū)對(duì)應(yīng)于內(nèi)核中的一塊可用的內(nèi)存區(qū),用戶可以自行指定一段已經(jīng)映射但沒(méi)有使用的物理空間或者由操作系統(tǒng)動(dòng)態(tài)分配一段物理空間,作為映射的物理空間;用戶可以自行指定一段已經(jīng)映射但沒(méi)有使用的邏輯空間或者由操作系統(tǒng)動(dòng)態(tài)分配一段邏輯空間,作為映射的邏輯空間;最后建立邏輯空間到物理空間之間的映射。物理空間和邏輯空間必須按照MMU頁(yè)面對(duì)齊。一塊共享IO區(qū)必須與一塊IO空間進(jìn)行關(guān)聯(lián)。共享IO區(qū)對(duì)應(yīng)于系統(tǒng)中的某個(gè)IO設(shè)備,物理地址需要用戶根據(jù)設(shè)備情況指定。用戶可以自行指定一段已經(jīng)映射但沒(méi)有使用的邏輯空間或者由操作系統(tǒng)動(dòng)態(tài)分配一段邏輯空間,作為映射的邏輯空間;最后建立邏輯空間到IO空間之間的映射。IO空間和邏輯空間必須按照MMU頁(yè)面對(duì)齊。
共享存儲(chǔ)區(qū)空間操作系統(tǒng)內(nèi)核以及實(shí)時(shí)進(jìn)程均可訪問(wèn),根據(jù)共享存儲(chǔ)區(qū)屬性對(duì)共享存儲(chǔ)區(qū)進(jìn)行組織管理。共享存儲(chǔ)區(qū)的屬性主要包含:只讀、只寫、讀寫、不允許訪問(wèn)。完成共享存儲(chǔ)區(qū)的建立后,共享存儲(chǔ)區(qū)空間的訪問(wèn)屬性已經(jīng)確定,不能通過(guò)程序進(jìn)行更改。
共享存儲(chǔ)區(qū)由發(fā)起的實(shí)時(shí)進(jìn)程通過(guò)接口進(jìn)行創(chuàng)建,其他的實(shí)時(shí)進(jìn)程要操作這段共享存儲(chǔ)區(qū)時(shí),通過(guò)接口對(duì)這塊共享存儲(chǔ)區(qū)打開(kāi)后操作。
五、實(shí)時(shí)進(jìn)程的中斷異常
當(dāng)中斷/異常產(chǎn)生時(shí),處理器進(jìn)入核心操作系統(tǒng)的中斷異常入口,對(duì)現(xiàn)場(chǎng)上下文進(jìn)行保護(hù),之后轉(zhuǎn)入核心操作系統(tǒng)安裝的中斷異常處理程序,處理完成后,如果不需要通知實(shí)時(shí)進(jìn)程,則執(zhí)行上下文現(xiàn)場(chǎng)恢復(fù),最后中斷異常返回;如果需要通知實(shí)時(shí)進(jìn)程,則通過(guò)信號(hào)的方式通知實(shí)時(shí)進(jìn)程的任務(wù)。
當(dāng)系統(tǒng)從核心返回用戶任務(wù)時(shí),如果此時(shí)系統(tǒng)產(chǎn)生了信號(hào),系統(tǒng)會(huì)發(fā)送信號(hào)給用戶任務(wù),之后返回到用戶任務(wù),并執(zhí)行信號(hào)處理。如果需要通過(guò)信號(hào)的方式在核心產(chǎn)生中斷/異常時(shí)通知實(shí)時(shí)進(jìn)程,則需要通過(guò)信號(hào)相關(guān)的服務(wù)掛接相應(yīng)的信號(hào)處理服務(wù)。
六、實(shí)時(shí)進(jìn)程的設(shè)備管理
實(shí)時(shí)進(jìn)程使用設(shè)備管理的方式有以下兩種:1.在核心操作系統(tǒng)中通過(guò)設(shè)備管理注冊(cè)設(shè)備驅(qū)動(dòng),之后通過(guò)系統(tǒng)調(diào)用方式直接對(duì)核心設(shè)備管理進(jìn)行調(diào)用使用,在實(shí)時(shí)進(jìn)程應(yīng)用中即可直接通過(guò)標(biāo)準(zhǔn)的IO接口來(lái)訪問(wèn)核心的設(shè)備。2.通過(guò)共享IO區(qū)將設(shè)備地址映射到實(shí)時(shí)進(jìn)程中,通過(guò)直接訪問(wèn)IO空間的方式來(lái)訪問(wèn)設(shè)備。
七、實(shí)時(shí)進(jìn)程的故障處理
實(shí)時(shí)進(jìn)程中的應(yīng)用在發(fā)生故障后,通過(guò)操作系統(tǒng)通過(guò)的故障檢測(cè)報(bào)告機(jī)制來(lái)接管。應(yīng)用程序使用故障檢測(cè)報(bào)告接口注入的故障和操作系統(tǒng)內(nèi)核通過(guò)通用故障注入接口注入的故障均交由故障檢測(cè)報(bào)告處理。在故障發(fā)生后,可以通過(guò)故障檢測(cè)報(bào)告機(jī)制對(duì)故障信息進(jìn)行獲取、記錄和展現(xiàn)。故障相關(guān)信息包括故障位置、類型、操作系統(tǒng)狀態(tài)、寄存器、堆棧信息等。在發(fā)生故障后可通過(guò)接口輸出相關(guān)的故障信息。
實(shí)時(shí)進(jìn)程故障注入包括以下來(lái)源:1.用戶應(yīng)用程序注入故障。用戶應(yīng)用程序自行判斷運(yùn)行邏輯錯(cuò)誤,使用操作系統(tǒng)提供的用戶故障注入用戶接口注入故障,調(diào)用操作系統(tǒng)的故障處理功能,試圖恢復(fù)應(yīng)用程序的錯(cuò)誤狀態(tài)以及防止應(yīng)用程序錯(cuò)誤對(duì)操作系統(tǒng)和其他實(shí)時(shí)進(jìn)程造成影響。2.實(shí)時(shí)進(jìn)程運(yùn)行狀態(tài)檢查。實(shí)時(shí)進(jìn)程運(yùn)行過(guò)程中在各關(guān)鍵環(huán)節(jié)檢查數(shù)據(jù)、狀態(tài)的正確性,如用戶輸入、請(qǐng)求資源等時(shí)機(jī),當(dāng)檢測(cè)到故障時(shí)即調(diào)用故障處理功能。
故障檢測(cè)報(bào)告的主要功能包括:1、記錄應(yīng)用程序和操作系統(tǒng)的故障信息,故障記錄不會(huì)因重啟而丟失。2.根據(jù)參數(shù)選擇記錄的故障信息內(nèi)容,包括:時(shí)間、故障點(diǎn)文件位置、故障任務(wù)、內(nèi)存信息、異常信息、寄存器信息、CoreDump、棧追蹤信息等。3.提供記錄故障前和記錄故障后調(diào)用用戶定義的故障處理動(dòng)作的功能。4.提供管理故障日志記錄的功能,如顯示故障記錄、清空故障記錄等。5.可根據(jù)參數(shù)選擇特定的故障日志顯示方式,如僅顯示致命故障、僅顯示警告信息等。
八、結(jié)束語(yǔ)
本文研究了嵌入式實(shí)時(shí)操作系統(tǒng)中的實(shí)時(shí)進(jìn)程機(jī)制,通過(guò)實(shí)時(shí)進(jìn)程的功能架構(gòu)、空間管理和劃分及映射、實(shí)時(shí)進(jìn)程的資源管理、實(shí)時(shí)進(jìn)程的加載運(yùn)行方式、實(shí)時(shí)進(jìn)程間通信、實(shí)時(shí)進(jìn)程對(duì)于中斷異常,設(shè)備管理的處理以及實(shí)時(shí)進(jìn)程錯(cuò)誤處理方面,簡(jiǎn)要闡述了在嵌入式實(shí)時(shí)操作系統(tǒng)中的實(shí)時(shí)進(jìn)程特性。隨著嵌入式實(shí)時(shí)操作系統(tǒng)的發(fā)展,以及應(yīng)用場(chǎng)景的逐漸復(fù)雜,安全性、數(shù)據(jù)保護(hù)以及空間隔離變得越來(lái)越重要。隨著嵌入式實(shí)時(shí)操作系統(tǒng)在各個(gè)領(lǐng)域應(yīng)用越來(lái)越廣泛,越來(lái)越多的新技術(shù)的應(yīng)用,如容器技術(shù)、深度學(xué)習(xí)等新興技術(shù)都需要高可靠實(shí)時(shí)性強(qiáng)高安全的系統(tǒng)作為技術(shù)支撐,實(shí)時(shí)進(jìn)程機(jī)制將在嵌入式實(shí)時(shí)操作系統(tǒng)中發(fā)揮關(guān)鍵作用。
作者單位:楊弋? ? 仝敏? ? 衛(wèi)一芃? ? 中國(guó)航空工業(yè)集團(tuán)公司西安航空計(jì)算技術(shù)研究所
參? 考? 文? 獻(xiàn)
[1] 仇陽(yáng). Linux內(nèi)核進(jìn)程調(diào)度算法發(fā)展.電子世界,2017,(07).
[2] 蘇淑霞. Linux進(jìn)程調(diào)度算法的研究及改進(jìn).數(shù)字技術(shù)與應(yīng)用,2014,(09).