嵌入式多核虚拟化设计的硬件辅助可靠性增强

Tsung-Han Lin, Y. Kinebuchi, Alexandre Courbot, H. Shimada, Takushi Morita, Hitoshi Mitake, Chen-Yi Lee, T. Nakajima
{"title":"嵌入式多核虚拟化设计的硬件辅助可靠性增强","authors":"Tsung-Han Lin, Y. Kinebuchi, Alexandre Courbot, H. Shimada, Takushi Morita, Hitoshi Mitake, Chen-Yi Lee, T. Nakajima","doi":"10.1109/ISORC.2011.37","DOIUrl":null,"url":null,"abstract":"In this paper, we propose a virtualization architecture for the multi-core embedded system to provide more system reliability and security while maintaining the same performance without introducing additional special hardware supports or having to implement complex protection mechanism in the virtualization layer. Virtualization has been widely used in embedded systems, especially in consumer electronics, albeit itself is not a new technique, because there are various needs for both GPOS (General Purpose Operating System) and RTOS (Real Time Operating System). The surge of the multi-core platform in the embedded system also helps the consolidation of the virtualization system for its better performance and lower power consumption. Embedded virtualization design usually uses two kinds of approaches. The first one is to use the traditional VMM, but it is too complicated for use in the embedded environment if there is no additional special hardware support. The other is the use of the micro kernel which imposes a modular design. The guest systems, however, would suffer from considerable amount of modifications because the micro kernel lets the guest systems to run in user space. For some RTOSes and theirs applications originally running in kernel space, it makes this approach more difficult to work because a lot of privileged instructions are used in those codes. To achieve better reliability and keep the virtualization layer design light weighted, a common hardware component adopted in the multi-core embedded processors is used in this work. In the most embedded platforms, vendors provide additional on-chip local memory for each physical core and these local memory areas are private only to their cores. By taking this memory architecture's advantage, we can mitigate above-mentioned problems at once. We choose to re-map the virtualization layer's program called SPUMONE, which it runs all its guest systems in kernel space, on the local memory. By doing so, it can provide additional reliability and security for the entire system because the SPUMONE's design in a multi-core platform has each instance being installed on a separated processor core which is different from the traditional virtualization layer design and the content of each SPUMONE is inaccessible to each others. We also achieve this goal without bringing any overhead to the overall performance.","PeriodicalId":431231,"journal":{"name":"2011 14th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","volume":"33 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2011-03-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"18","resultStr":"{\"title\":\"Hardware-Assisted Reliability Enhancement for Embedded Multi-core Virtualization Design\",\"authors\":\"Tsung-Han Lin, Y. Kinebuchi, Alexandre Courbot, H. Shimada, Takushi Morita, Hitoshi Mitake, Chen-Yi Lee, T. Nakajima\",\"doi\":\"10.1109/ISORC.2011.37\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"In this paper, we propose a virtualization architecture for the multi-core embedded system to provide more system reliability and security while maintaining the same performance without introducing additional special hardware supports or having to implement complex protection mechanism in the virtualization layer. Virtualization has been widely used in embedded systems, especially in consumer electronics, albeit itself is not a new technique, because there are various needs for both GPOS (General Purpose Operating System) and RTOS (Real Time Operating System). The surge of the multi-core platform in the embedded system also helps the consolidation of the virtualization system for its better performance and lower power consumption. Embedded virtualization design usually uses two kinds of approaches. The first one is to use the traditional VMM, but it is too complicated for use in the embedded environment if there is no additional special hardware support. The other is the use of the micro kernel which imposes a modular design. The guest systems, however, would suffer from considerable amount of modifications because the micro kernel lets the guest systems to run in user space. For some RTOSes and theirs applications originally running in kernel space, it makes this approach more difficult to work because a lot of privileged instructions are used in those codes. To achieve better reliability and keep the virtualization layer design light weighted, a common hardware component adopted in the multi-core embedded processors is used in this work. In the most embedded platforms, vendors provide additional on-chip local memory for each physical core and these local memory areas are private only to their cores. By taking this memory architecture's advantage, we can mitigate above-mentioned problems at once. We choose to re-map the virtualization layer's program called SPUMONE, which it runs all its guest systems in kernel space, on the local memory. By doing so, it can provide additional reliability and security for the entire system because the SPUMONE's design in a multi-core platform has each instance being installed on a separated processor core which is different from the traditional virtualization layer design and the content of each SPUMONE is inaccessible to each others. We also achieve this goal without bringing any overhead to the overall performance.\",\"PeriodicalId\":431231,\"journal\":{\"name\":\"2011 14th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing\",\"volume\":\"33 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2011-03-28\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"18\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2011 14th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ISORC.2011.37\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2011 14th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISORC.2011.37","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 18

摘要

在本文中,我们提出了一种多核嵌入式系统的虚拟化架构,在保持相同性能的同时提供更高的系统可靠性和安全性,而无需在虚拟化层引入额外的特殊硬件支持或实现复杂的保护机制。尽管虚拟化本身并不是一项新技术,但它已经广泛应用于嵌入式系统,特别是消费类电子产品,因为对GPOS(通用操作系统)和RTOS(实时操作系统)都有各种各样的需求。嵌入式系统中多核平台的兴起也有助于虚拟化系统的整合,因为它具有更好的性能和更低的功耗。嵌入式虚拟化设计通常使用两种方法。第一种方法是使用传统的VMM,但是如果没有额外的特殊硬件支持,那么在嵌入式环境中使用它太复杂了。另一种是使用微内核,采用模块化设计。但是,客户机系统将遭受大量修改,因为微内核允许客户机系统在用户空间中运行。对于最初在内核空间中运行的一些rtos及其应用程序,由于在这些代码中使用了大量特权指令,使得这种方法更加难以工作。为了获得更好的可靠性和保持虚拟化层设计的轻量化,本工作中使用了多核嵌入式处理器中常用的硬件组件。在大多数嵌入式平台中,供应商为每个物理核心提供额外的片上本地内存,并且这些本地内存区域仅为其核心私有。通过利用这种内存架构的优势,我们可以立即缓解上述问题。我们选择在本地内存上重新映射虚拟化层的SPUMONE程序,它在内核空间中运行所有客户机系统。通过这样做,它可以为整个系统提供额外的可靠性和安全性,因为SPUMONE在多核平台中的设计使每个实例安装在一个独立的处理器核心上,这与传统的虚拟化层设计不同,并且每个SPUMONE的内容彼此是不可访问的。我们还在不给整体性能带来任何开销的情况下实现了这一目标。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Hardware-Assisted Reliability Enhancement for Embedded Multi-core Virtualization Design
In this paper, we propose a virtualization architecture for the multi-core embedded system to provide more system reliability and security while maintaining the same performance without introducing additional special hardware supports or having to implement complex protection mechanism in the virtualization layer. Virtualization has been widely used in embedded systems, especially in consumer electronics, albeit itself is not a new technique, because there are various needs for both GPOS (General Purpose Operating System) and RTOS (Real Time Operating System). The surge of the multi-core platform in the embedded system also helps the consolidation of the virtualization system for its better performance and lower power consumption. Embedded virtualization design usually uses two kinds of approaches. The first one is to use the traditional VMM, but it is too complicated for use in the embedded environment if there is no additional special hardware support. The other is the use of the micro kernel which imposes a modular design. The guest systems, however, would suffer from considerable amount of modifications because the micro kernel lets the guest systems to run in user space. For some RTOSes and theirs applications originally running in kernel space, it makes this approach more difficult to work because a lot of privileged instructions are used in those codes. To achieve better reliability and keep the virtualization layer design light weighted, a common hardware component adopted in the multi-core embedded processors is used in this work. In the most embedded platforms, vendors provide additional on-chip local memory for each physical core and these local memory areas are private only to their cores. By taking this memory architecture's advantage, we can mitigate above-mentioned problems at once. We choose to re-map the virtualization layer's program called SPUMONE, which it runs all its guest systems in kernel space, on the local memory. By doing so, it can provide additional reliability and security for the entire system because the SPUMONE's design in a multi-core platform has each instance being installed on a separated processor core which is different from the traditional virtualization layer design and the content of each SPUMONE is inaccessible to each others. We also achieve this goal without bringing any overhead to the overall performance.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信