《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于ARMv7-A架構的虛擬存儲系統技術研究
基于ARMv7-A架構的虛擬存儲系統技術研究
2018年電子技術應用第6期
曹朋朋1,2,陳 佳1,2,張少鋒1,2
1.中航工業西安航空計算技術研究所,陜西 西安710068; 2.集成電路與微系統設計航空科技重點實驗室,陜西 西安710068
摘要: 在機彈載設備綜合化、智能化、低功耗的發展趨勢下,嵌入式系統設計中近幾年也廣泛采用了ARM系列處理器。其中ARMv7的VMSA(虛擬存儲系統架構)支持虛擬化擴展、安全擴展以及大物理地址擴展,使得多虛擬機的運行或分區操作系統實現有了硬件系統的支持,復雜嵌入式設備可采用新一代嵌入式處理器完成系統綜合化與小型化。主要針對ARMv7-A體系結構中擴展后的VMSA內存管理的應用結構變化進行了研究,并就其在機載設備上的應用方式進行分析,為ARM處理器在機載設備的應用提供了技術支撐。
中圖分類號: TN495
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.180612
中文引用格式: 曹朋朋,陳佳,張少鋒. 基于ARMv7-A架構的虛擬存儲系統技術研究[J].電子技術應用,2018,44(6):11-14,18.
英文引用格式: Cao Pengpeng,Chen Jia,Zhang Shaofeng. Research on virtual memory system based on ARMv7-A architecture[J]. Application of Electronic Technique,2018,44(6):11-14,18.
Research on virtual memory system based on ARMv7-A architecture
Cao Pengpeng1,2,Chen Jia1,2,Zhang Shaofeng1,2
1.AVIC Computing Technique Research Institute,Xi′an 710068,China; 2.Aviation Key Laboratory of Science on Integrated Circuit and Micro-System Design,Xi′an 710068,China
Abstract: As the development trend of integrated, intelligent and low power application in embedded systems, ARM series processors have been widely used in recent years. Virtualization extensions, security extensions, and large physical address extensions supported in ARMv7′s Virtual Memory System Architecture(VMSA),This allows for hardware system support for the operation of multiple virtual machines or the implementation of partitioned operating systems.Complex embedded devices can use the new generation of embedded processors to complete system integration and miniaturization.This article focuses on the changes in the application structure of the memory management of extened VMSA in the ARMv7-A architecture.And also analyzed the application on airborne equipment.This will provides technical support for ARM processor used in airborne equipment applications.
Key words : ARMv7;VMSA;virtualization extensions;security extensions

0 引言

    隨著微電子技術和計算機技術的發展,嵌入式設備的性能越來越高,功能越來越復雜,機載電子設備的復雜程度也越來越高,需要有更多的傳感器,集成更多的信號處理模塊和其他各種應用模塊。電子設備綜合化將多個功能單元集成到一塊電路板上,以減少設備的尺寸、重量,實現低功耗、體積小、低成本、高集成度等目標[1]

    新型嵌入式設備采用高性能通用處理器,綜合化的機載設備則支持不同安全關鍵級別的應用軟件共享同一套硬件資源,并提供一種安全性機制保證應用程序之間互相隔離,這就要求系統不僅應具備高性能計算能力和擴展能力,還有具備安全、可靠、低成本和低功耗的特點。通常,在航空航天領域的嵌入式設備較多采用PowerPC系列處理器或DSP等微處理器,但隨著ARM處理器架構的升級,除性能越來越強悍外, 在內核中實現了一些額外增加的擴展,其中安全擴展虛擬化擴展技術以滿足嵌入式設備對安全性和可靠性的技術要求,并以其強大的計算能力和高度集成的硬件設計為航電電子產品的研制帶來更多可能性。

    本文以ARMV7A中的虛擬存儲系統架構(VMSA)為研究對象,對引入安全擴展、虛擬化擴展、大物理地址擴展(LPAE)后VMSA架構的MMU技術實現進行了解析,并對基于該處理器的虛擬化應用進行研究與展望。

1 VMSA簡介

1.1 VMSA存儲管理簡介

    ARM處理器進行存儲訪問時的地址轉換為映射一個地址到另外一個地址的過程,如映射VA到IPA,或映射VA到PA。在ARMv7體系結構中,共定義了兩種存儲管理體系架構,其中對于ARMv7-A架構系列,使用VMSA存儲架構,而對于ARMv7-R系列,則使用PMSA(Protected Memory System Architecture)[2]

    ARMv7通過轉換表定義地址轉換的機制,轉換表基地址寄存器表示了轉換表的開始位置[3]。使用系統控制協處理器進行存儲管理,實現虛擬存儲空間到物理存儲空間的映射、及存儲空間訪問權限、緩沖特性的分配,其實現方式主要是通過內存中的頁表描述符,在系統控制協處理器中保存該頁表的基地址,當MMU使能時,處理器發起的所有訪問操作均需通過MMU,地址轉換過程如圖1所示。

wdz2-t1.gif

    在VMSAv7中,包括安全擴展、多處理器擴展、大物理地址擴展、以及虛擬化擴展等擴展。在引入這些擴展的VMSA中,將處理器模式劃分為兩部分:安全態(Secure State)和非安全態(Non-Secure State),處理器內核可在普通區域和安全區域中執行代碼,并在安全模式下增加了一種處理器狀態:監控模式(Monitor Mode),可在監控模式進行安全態或非安全態的切換。在包含虛擬化擴展的實現中,處理器的特權被分為3個級別,分別為PL0、PL1以及PL2,如圖2所示。在復雜系統中要求安全性、穩定性和高度可配置性的電子系統都需要這種嵌入式虛擬機技術,航空電子也需要利用虛擬機監控程序來隔離程度,提高可靠性。

wdz2-t2.gif

1.2 擴展VMSA的地址轉換機制

    在擴展的VMSAv7中,包含虛擬化擴展必包括大物理地址擴展(LPAE)以支持40位物理地址,此時支持兩個階段地址轉換。在安全狀態或非安全的PL2只支持一階段的地址轉換;在非安全狀態,程序執行在PL1 或PL0時,可達到兩個階段的地址轉換, 如圖3所示為不同狀態下地址轉換機制及完成轉換使用的寄存器。客戶操作系統使用虛擬地址,通過操作系統提供的頁表將虛擬地址轉換為中間物理地址(IPA)完成第一階段的轉換,再將IPA地址使用第二階段頁表才能轉換為真正的物理地址,第二階段地址轉換過程及頁表對客戶操作系統是不可見的,由虛擬機管理器控制。

wdz2-t3.gif

2 VMSA擴展功能研究

2.1 大物理地址擴展的地址轉換

    在包含大物理地址擴展的ARMv7 VMSA實現中,存在兩種格式的描述符,即32位的短描述符表格式和64位的長描述符表格式,如表1所示。

wdz2-b1.gif

2.2 虛擬化擴展后的地址轉換

    虛擬化技術是嵌入式系統的最新發展方向之一,通過虛擬化技術可以使得同一處理器執行多個虛擬機(Virtual Machine,VM), 允許多個操作系統存于同一硬件平臺,并具有系統安全防護的特性[4]。ARM 處理器的ARMv7和ARMv8架構引入了硬件虛擬化擴展,硬件輔助的全虛擬化解決方案使得 ARM 平臺上的虛擬機性能得到了顯著的提高,可通過虛擬機管理程序(hypervisor)提供的有限接口實現隔離,控制系統的行為,并設置安全策略對關鍵數據對象和內核執行流程進行保護,其權限高于客戶操作系統的權限,可有效發現防御客戶操作系統內核中的惡意行為。

    在ARMv7A體系結構中,增加了虛擬化模式(hyp mode),該模式擁有比操作系統的管理模式(svc mode)更高的權限。因此,在管理模式中執行的全部特權指令會被自動捕獲,并且控制權被轉移到虛擬化模式中的虛擬機監視器中。同時,管理模式中寄存器的狀態會被保存,以便在返回的時候讀取。

    在ARMv7-A不再使用快速上下文切換機制(FCSE),該機制不適合多核處理器的存儲管理。VMSA 在ASID的基礎上,地址轉換表增加了虛擬機ID(VMID),以保證在進行虛擬機切換時或線程切換時,Cache的一致性問題,因此每次上下文切換處理器只需保存某些模式特定的寄存器,可在保證性能的基礎上也會更加靈活。

    為了更好地支持虛擬化的應用,在包含虛擬化擴展的MMU實現中,提供兩個階段的地址轉換機制。第一階段的轉換由虛擬機操作系統實現,虛擬機操作系統定義其虛擬地址到內部物理地址(IPA)的轉換,第二階段的地址轉換由虛擬機管理器實現,將虛擬機的內部物理地址轉換為物理地址,也可以通過配置第2階段轉換頁表項中的屬性控制位來實現客戶操作系統對內存的訪問控制。通過該機制,虛擬機管理器可以重映射虛擬機的地址映射,將客戶物理地址映射為機器物理地址,第二階段的轉換對虛擬機操作系統不可見。在包含虛擬化擴展的VMSA中,存儲管理主要有如下特性:

    (1)為減少TLB維護操作,VMSA區分全局頁和線程相關頁,ASID表示與特定線程相關的頁,在線程切換時不需要TLB維護操作;

    (2)VMID與特定虛擬機關聯,TLB入口包含了VMID信息,即更改虛擬機不需要刷新TLB,對于階段2的轉換,所有轉換均與VMID相關,而無全局頁的概念。

2.3 安全模式擴展的地址轉換

    綜合化的機載嵌入式設備只需部分應用處理一些關鍵數據,需考慮設備的安全問題,ARM公司提出了相應的解決方案,即 TrustZone 技術,可抵御許多的特定攻擊,提升系統的安全可靠性[5]。在包含安全擴展的實現中,將地址空間分為安全或非安全的地址空間,處理器運行模式也相應劃分為即安全環境(Secure world)和普通環境(Normal)。航空電子設備在關鍵任務系統中使用可信計算技術,使得安全環境中的關鍵任務不能被普通環境的組件所訪問。

    在處理器中引入安全擴展后,VMSA的安全擴展則提供了兩個物理地址空間:安全物理地址空間和非安全物理地址空間。對PL1&0階段1的地址轉換,轉換表基地址寄存器TTBR0、TTBR1及TTBCR在安全和非安全狀態是分組的。處理器在安全狀態時,存儲訪問選擇對應狀態的寄存器,使用獨立的安全和非安全轉換表的版本,轉換表查找在對安全狀態對應的轉換表地址空間進行。

3 擴展VMSA應用研究

    隨著ARM處理器硬件體系結構的升級,擴展的VMSA提供虛擬化擴展、安全擴展、大物理地址擴展,為基于硬件的虛擬化提供了不同的應用,主要可展開如下的應用。

3.1 多虛擬機的標準通用處理模塊

    基于ARM虛擬化擴展及安全擴展的支持下,將硬件虛擬化技術和系統安全問題結合起來,通過虛擬機管理程序可以對多個虛擬操作系統進行有效的管理,在標準處理硬件模塊,實現多個虛擬操作系統對標準底層硬件的共享訪問,有利于多種不同設備的功能整合、減少整機功耗,提供系統的可靠性。

    虛擬化可實現以下幾種應用:

    (1)在通用的處理器平臺管理多個虛擬機,同時運行多個操作系統,實現多個模塊的快速整合[6]

    (2)把多種負荷較小的系統,通過虛擬化移植到其他統一的硬件平臺;

    (3)基于安全性考慮,把容易受到安全攻擊的服務和內核隔離,提供保護;

    (4)把不同功能的操作系統運行在一起,由不同的操作系統提供不同的服務。

3.2 基于標準通用處理模塊分區操作系統

    隨著綜合模塊化航空電子體系結構的應用與發展,其軟件結構采用了分區的軟件架構概念,符合ARINC 653標準,該標準要求操作系統的各個分區在空間上保證相互隔離,當一個分區出現問題時,不會影響其他分區。

    在擴展VMSA架構的標準通用模塊上,將虛擬化和分區操作系統相結合,利用統一的硬件平臺,實現分區操作系統,充分利用VMSA提供的虛擬化機制,將ARINC 653分區對應于一個基于虛擬化處理器模塊中運行的虛擬機, 并可以保證分區切換時的性能以及Cache一致性,降低應用軟件的耦合度[7]

4 結束語

    嵌入式設備綜合化發展的需求,需要利用ARMv7-A 架構MMU中增加的擴展功能,以實現設備的綜合化和安全隔離。本文首先對VMSA的地址轉換機制進行研究,在此基礎上對包含安全擴展、虛擬化擴展及大物理地址擴展后的地址轉換機制進行分析,最后對利用VMSA的特征在設備綜合化應用進行了分析。對后續基于ARM平臺的嵌入式設備的設計研發具有一定的應用價值。

參考文獻

[1] 左宗玉,王強.一種基于ARM的通用飛行器控制系統設計[J].航空科學技術,2016,27(4):64-68.

[2] ARM Architecture Reference Manual[EB/OL],ARM ltd,2011.

[3] 杜春雷.ARM體系結構與編程[M].北京:清華大學出版社,2003.

[4] 顧峰.在ARM虛擬化環境中實現ARINC653分區的研究[D].武漢:華中科技大學,2015.

[5] 李舟軍,沈東,蘇曉菁,等.基于ARM虛擬化擴展的安全防護技術[J].軟件學報,2017,28(9):2229-2247.

[6] 汪卓.基于ARM TrustZone的嵌入式虛擬機研究和應用[D].武漢:華中科技大學,2013.

[7] 郝繼鋒.嵌入式虛擬機管理器內存虛擬化方法研究[J].航空計算技術,2017,49(2):125-130.



作者信息:

曹朋朋1,2,陳  佳1,2,張少鋒1,2

(1.中航工業西安航空計算技術研究所,陜西 西安710068;

2.集成電路與微系統設計航空科技重點實驗室,陜西 西安710068)

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产亚洲欧美另类一区二区三区| 亚洲黄色影院| 日韩一区二区精品视频| 亚洲乱码久久| 欧美日韩三区| 在线观看欧美日本| 日韩一级在线观看| 国产一区二区三区久久 | 亚洲乱码国产乱码精品精| 国产精品乱码一区二区三区| 伊人久久大香线蕉综合热线 | a4yy欧美一区二区三区| 欧美日韩国产综合久久| 99re成人精品视频| 亚洲综合日韩中文字幕v在线| 欧美另类一区| 亚洲视频在线观看网站| 久久综合给合久久狠狠色| 在线欧美视频| 销魂美女一区二区三区视频在线| 亚洲欧美在线一区二区| 一区二区在线看| 一本色道综合亚洲| 国产精品影视天天线| 久久国产精品黑丝| 欧美日韩在线亚洲一区蜜芽| 欧美一区二区在线看| 欧美日韩一区二区在线| 亚洲福利视频网站| 国产啪精品视频| 一区二区三区精品视频在线观看| 国产区日韩欧美| 亚洲深爱激情| 亚洲精品一区二| 欧美激情精品久久久久久黑人 | 亚洲自拍高清| 亚洲二区精品| 久久精品欧美日韩| 欧美在线视频a| 欧美日韩中文字幕| 亚洲欧洲在线看| 韩国一区二区在线观看| 翔田千里一区二区| 亚洲婷婷免费| 欧美视频你懂的| 中文亚洲免费| 亚洲精品日韩久久| 欧美高清视频一区二区| 亚洲国产精品一区制服丝袜| 国产日韩在线播放| 久久成人精品视频| 亚洲午夜在线观看视频在线| 欧美另类videos死尸| 亚洲免费成人| 亚洲欧洲免费视频| 欧美精品电影| 99精品欧美一区二区三区综合在线| 国产精品视频1区| 久久综合色8888| 亚洲欧美激情视频| 国产精品久久久久久久9999| 亚洲高清免费视频| 韩国精品主播一区二区在线观看| 久久精品国产综合| 久久黄色级2电影| 国产日产精品一区二区三区四区的观看方式 | 欧美午夜免费| 久久裸体视频| 久久国产精品久久久| 国产一区二区三区久久| 午夜视频久久久| 欧美在线视频免费观看| 一区免费观看| 另类图片国产| 亚洲一区二区三| 性色一区二区| 在线观看欧美精品| 欧美日韩国产999| 亚洲午夜久久久| 欧美一二三区精品| 激情丁香综合| 国产欧美精品一区二区色综合 | 亚洲美女精品久久| 国产精品自拍在线| 欧美日韩一区二区三区| 西西裸体人体做爰大胆久久久| 亚洲国产视频a| 久久国产成人| 欧美伊人久久久久久午夜久久久久| 亚洲小说区图片区| 亚洲最新视频在线| 99国内精品| 中文av一区二区| 亚洲欧美日韩综合| 亚洲精品久久| 激情文学综合丁香| 久热爱精品视频线路一| 久久亚洲精品网站| 中文网丁香综合网| 亚洲第一伊人| 久久av在线| 亚洲美女黄网| 中文无字幕一区二区三区| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 在线精品视频免费观看| 黑丝一区二区| 在线观看精品一区| 亚洲日本成人| 一区二区免费看| 亚洲午夜电影| 欧美伊人久久| 亚洲精品一区久久久久久| 一区二区欧美亚洲| 亚洲免费影视第一页| 欧美在线综合| 久久午夜激情| 免费日本视频一区| 欧美日本久久| 欧美日韩中文字幕在线视频| 欧美色中文字幕| 欧美日韩视频一区二区三区| 国产精品亚洲综合一区在线观看| 亚洲第一精品在线| 亚洲午夜一区二区三区| 亚洲三级免费观看| 日韩一级在线| 性色av一区二区三区| 欧美精品久久久久久久久老牛影院| 国产精品男女猛烈高潮激情| 国产真实乱子伦精品视频| 亚洲国产激情| 亚洲综合色网站| 亚洲高清视频在线| 亚洲综合首页| 欧美亚男人的天堂| 日韩一级网站| 亚洲在线成人| 午夜一区不卡| 毛片av中文字幕一区二区| 欧美日韩亚洲一区| 亚洲精品视频在线观看免费| 在线午夜精品自拍| 亚洲免费视频一区二区| 欧美精品在线网站| 亚洲最快最全在线视频| 亚洲视频在线观看| 午夜日韩在线观看| 欧美精品国产| 在线观看精品视频| 久久精品国产一区二区电影| 夜夜精品视频| 久久伊人亚洲| 国产精品亚洲аv天堂网| 一本色道久久综合狠狠躁的推荐| 亚洲激情在线观看视频免费| 亚洲综合日本| 欧美日韩国产黄| 亚洲经典在线看| 亚洲裸体视频| 蜜桃av噜噜一区| 狠狠色噜噜狠狠狠狠色吗综合| 亚洲社区在线观看| 久久国产精品电影| 久久一本综合频道| 国产午夜精品麻豆| 欧美一区二区三区免费大片| 亚洲综合成人婷婷小说| 欧美日韩国产欧| 日韩视频在线永久播放| 亚洲性视频网址| 欧美日韩免费看| 亚洲人成网站在线观看播放| 在线视频欧美日韩精品| 欧美人与禽猛交乱配| 中文欧美字幕免费| 欧美一区二区日韩| 国产视频丨精品|在线观看| 亚洲成人在线网| 欧美激情一区二区三区成人 | 亚洲精品久久久久久久久| 久久爱www久久做| 亚洲国产日韩欧美| 亚洲伊人色欲综合网| 国产精品你懂的在线| 久久精品二区| 国产精品xvideos88| 欧美综合国产精品久久丁香| 欧美顶级少妇做爰| 99re热这里只有精品视频| 一区二区日韩免费看| 欧美午夜电影在线| 久久国产婷婷国产香蕉| 欧美三级视频在线播放| 午夜精品久久久久久99热软件| 久久免费视频这里只有精品| 国产一区二区精品丝袜| 日韩视频免费| 国产欧美日韩专区发布| 亚洲在线视频| 亚洲免费av片|