5209|6

420

帖子

0

TA的资源

纯净的硅(初级)

楼主
 

改造实时linux计划 [复制链接]

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核间中断,这种是非常简单的。砖头已经抛出,希望能引到玉。



最新回复

@jorya_txj   请问一下,有没有在新唐M0 NUC1XX或者NUC2XX芯片上进行移植的考虑?  详情 回复 发表于 2014-12-29 16:05
点赞 关注

回复
举报

7815

帖子

57

TA的资源

裸片初长成(中级)

沙发
 
具体细节先不深究。
想了解的情形是

如果 单独跑 raw-os那一个核不可以调用任何linux层的其他三个核。
那么,raw-os是否能使用 类似于 利用linux驱动中的usb wifi等外设?

因为,我很奇怪的是,为什么会想到把 raw-os和linux联想到一块?

点评

raw-os运行的cpu可以通过cpu之间的中断和其他三个cpu同步通讯,传递数据等等。这样能保证raw-os运行的时候不调用linux任何的api。linux是非实时的,举个例子500MHz 的cpu 运行linux, 500us 一个中断的频率也会丢失中  详情 回复 发表于 2014-11-20 22:38
 
个人签名

强者为尊,弱者,死无葬身之地

 

回复

420

帖子

0

TA的资源

纯净的硅(初级)

板凳
 
辛昕 发表于 2014-11-20 10:36
具体细节先不深究。
想了解的情形是


raw-os运行的cpu可以通过cpu之间的中断和其他三个cpu同步通讯,传递数据等等。这样能保证raw-os运行的时候不调用linux任何的api。linux是非实时的,举个例子500MHz 的cpu 运行linux, 500us 一个中断的频率也会丢失中断,但是raw-os能做到1us以下的中断也能保证不丢失。两者互补优势很大。

 
 
 

回复

23

帖子

0

TA的资源

一粒金砂(中级)

4
 
txj,有进展了没?

点评

等到lpc4357 的开发板告一个段落后,我会再开一个项目针对linux的服务。  详情 回复 发表于 2014-12-12 20:31
 
 
 

回复

420

帖子

0

TA的资源

纯净的硅(初级)

5
 
wxfzy 发表于 2014-12-12 14:14
txj,有进展了没?
等到lpc4357 的开发板告一个段落后,我会再开一个项目针对linux的服务。
 
 
 

回复

10

帖子

0

TA的资源

一粒金砂(初级)

6
 
@jorya_txj   请问一下,有没有在新唐M0 NUC1XX或者NUC2XX芯片上进行移植的考虑?
 
 
 

回复

10

帖子

0

TA的资源

一粒金砂(初级)

7
 
@jorya_txj   请问一下,有没有在新唐M0 NUC1XX或者NUC2XX芯片上进行移植的考虑?
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表