完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
raw-os如何配合linux用来打造实时linux的方案已经考虑过2年,考虑过几种方案,但是都不通用。这段时间考虑了一种可行的方案如下:
raw-os既然能在vc上模拟,为什么不能在 linux内核级别也去模拟呢?如果采用linux内核级别的api模拟只采用到一个核心调度函数,而且不使用到linux内核相关的其他一切内核函数,那么可以最大化的避免linux内核产生的实时性的问题。具体的做法可以如下: 假设在一个4核的cpu上跑linux。 1 单独指定一个cpu跑raw-os的linux内核模拟。其过程高度类似于vc下的raw-os仿真。 2 raw-os的linux内核仿真支层只能调用raw-os的内核函数,linux层的api一律不能调用。 3 通过cpu间的相互中断来同步和传递raw-os以及linux层间的消息和数据。 4 linux 用户态创建线程和进程的时候只能在另外的3个不相干的cpu上,这一点可能需要改一下内核调度这块。 5 中断分发的时候只分发相关的中断到raw-os模拟的那个cpu上,无关的中断走其它3个cpu. 多核smp架构之间的实时性是一个非常复杂的问题,时间可能会不稳定,所以利用一个单核跑rtos,分开来做实时性的理念是可行的。 以上的过程具体的好处是,可以实现相当高的实时性,内核最大关中断时间为linux的调度函数,这个值是确定的一个常数时间,内核最大关抢占的时间转化为raw-os的内核最大关抢占的时间。而且移植非常方便,避开了对底层cpu细节的移植等等,唯一需要移植的就是cpu核间中断,这种是非常简单的。砖头已经抛出,希望能引到玉。 |
|
相关推荐 |
|
你正在撰写讨论
如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。
飞凌嵌入式ElfBoard ELF 1板卡-i2c与从设备通讯编程示例之开发板测试
79 浏览 0 评论
ubuntu ping 开发板存在严重的丢包情况,请问该怎么解决?
850 浏览 0 评论
12G-SDI高清视频开发案例,让4K视频采集更便捷!基于Xilinx MPSoC高性能平台
1536 浏览 0 评论
全志T507-H国产平台Ubuntu系统正式发布,让您的应用开发更便捷!
1089 浏览 0 评论
全志T507-H国产平台Ubuntu系统正式发布,让您的应用开发更便捷!
29 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-3 04:10 , Processed in 0.556358 second(s), Total 37, Slave 30 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号