天使2017年十大预测与去年相同!不信的话就看吧!
06-18
摘要:分区操作系统是综合航电领域的核心技术。
随着单核性能极限的到来,处理器结构正在向多核发展。
结合两者,在多核分区操作系统的基础上,研究分析多核处理器结构对分区操作系统的影响。
通过对实验数据的分析,得出多核处理器结构对分区操作系统的影响主要体现在两个方面:多核处理器中的共享Cache结构和内核中关键资源的并发访问。
关键词:多核;分割;操作系统 综合航电IMA(Integrated Modular Avionics)系统是第四代航电的发展方向。
综合航电致力于最大限度地利用计算机硬件资源,减轻飞机航电设备的负载,提高飞机的运载能力。
分区机构是综合航电的核心技术。
分区机制是指配置系统资源(内存、I/O等)来建立多个分区。
分区包含系统分配的资源,并且分区之间是相互隔离的。
分区包括时间分区和空间分区。
时间分区是指系统提供分区之间的时间维度隔离。
每个分区都有自己的处理器独立使用时间,该时间不受其他分区的影响;空间分区是指系统提供分区之间的空间维度隔离。
空间包括内存地址空间和I/O地址空间。
采用空间分区隔离技术的分区无法访问本分区之外的空间资源,外部分区也无法访问本分区内的空间资源。
不同的应用程序运行在不同的分区中。
由于分区之间的隔离,应用程序无法感知到其他分区中应用程序的存在,并认为自己拥有对整个硬件资源的独占访问权。
因此,通过分区机制,运行在不同硬件上的应用程序可以在同一硬件平台上运行而不会互相影响,从而实现集成的航电系统。
单核处理器已经达到性能瓶颈,无法通过提升频率和带宽来提升性能。
处理器架构正在向多核方向发展。
处理器的这种结构变化在很多方面影响操作系统的设计和实现,例如多核处理器系统中任务对关键资源的并发访问以及多核处理器结构中的Cache一致性。
多核处理器硬件层面的变化会影响操作系统和相关应用程序。
本文通过实验分析多核结构的影响。
1 多核分区操作系统 1.1 LESOS 操作系统 LESOS 是北航嵌入式实验室的多核分区操作系统。
该操作系统在硬件上支持现在常见的多核处理器SMP(对称多处理)结构,在软件上支持线程、进程、虚拟内存管理等功能。
系统中相应的参数如表1所示。
本文后续工作就是基于这个操作系统。
1.2 分区模型 在分区操作系统中,分区是资源的载体,任务是操作的载体。
系统分配分区所需的资源,如内存、I/O、处理器执行时间等;分区通过特定的任务完成相应的功能。
一个分区包含多个不同的任务,每个任务有不同的任务优先级;该分区内的所有任务共享该分区的内部资源。
系统中的每个任务都属于且只能属于一个分区,任务不能独立于分区而存在。
1.3 分区调度 双层调度模型 选择要执行的任务,首先需要在分区级别进行调度,选择对应的分区作为候选分区,然后在所有任务中选择对应的任务候选分区中的任务。
候选任务。
由于调度过程中需要在两个级别上进行两次选择,因此称为双级调度。
首先,在分区内的调度中,调度器的调度单位是任务。
该层调度采用基于优先级的抢占式调度算法,使分区内的重要任务能够得到及时处理。
调度器在要调度的分区内的所有任务中选择具有最高优先级的任务作为本次调度的结果。
其次,在分区之间的调度中,调度器的调度单位是分区。
该层调度采用静态时间片轮换调度算法。
目的是保证每个分区都能得到相应的运行时间,不会因为某些分区出现异常而导致其他分区无法运行。
调度器根据当前系统时间和静态调度表选择合适的分区作为本次调度的结果。
最后,为了支持多核处理器,调度器为每个处理器核心维护一个静态调度,使得每个处理器都可以按照自己的静态调度进行调度,避免相互影响。
当每个处理器需要获取要执行的任务时,首先通过处理器自身的静态表通过分区调度选择合适的分区,然后在选定的分区中进行分区内任务调度,选择合适的任务。
该任务是处理器要执行的下一个任务。
2 测试与数据 多核处理器和单核处理器之间的结构差异会影响操作系统和上层应用程序的行为和性能。
本文在前人工作的基础上,通过以下实验研究分析了多核处理器结构对分区操作系统的影响。
2.1 测试环境 本文的实现基于Freescale的HPCNet-D平台。
平台中的两个PowerPC E处理器以SMP模式运行。
该平台的基本参数如下:处理器频率1GHz、系统总线频率MHz、内存MB。
这两个处理器包含一个用于指令和数据的 32 KB 主缓存以及一个 1 MB 的共享二级缓存。

此外,该平台还具有双UART、千兆以太网卡等外围接口。
2.2 多核分区对Cache的影响 由于多核处理器结构从物理层面引入了共享Cache,因此本文设计以下实验来分析多核处理器结构对Cache的影响上层应用在Cache方面。
首先在单核分区操作系统上执行不同大小数据的读、写、复制任务,测试访问不同大小数据时相关操作的执行时间。
因为在多核处理器上,缓存分为两级,第一级是32 KB处理器本地缓存,以及共享的1 MB二级缓存,所以在设计实验时,将数据量分为两类,一类一类是一级缓存对缓存中不同数据量的访问测试,另一类是对大于一级缓存大小的数据量的访问测试。
其次,多核分区操作系统上不同处理器上的分区同时运行上述任务并收集相关测试数据。
最后,对相同性质的两个数据进行比较,结果如图1至图6所示。
版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
标签:
相关文章
06-17
06-17
06-21
06-18
最新文章
使用电子管有哪些注意事项?如何检查电子管之间是否短路?
博通支付1200万美元和解SEC财务欺诈指控
八名运营商高管确认加入虚拟运营商
内蒙古农牧区雷电灾害成因分析及防雷对策
北京联通将5G应用于世园会远程医疗急救
TD-SCDMA最后一轮冲刺测试启动,产业前景更加光明
专访阿里云总裁王健:云计算服务平台梦想成真
USB2.0控制器CY7C68013的接口设计与实现