嵌入式系统的开发,如果对实时性要求不高,就可以使用Linux自身的实时补丁实现软实时性。
但是在需要硬实时的情况下,通常是双系统来做,一个硬实时的RTOS加上一个Linux,
实时任务都在RTOS上跑,其他的任务在Linux上,好处是能保证系统的实时性,坏处是系统间的通讯需要额外的设计,如使用共享内存的方式,同时实时OS需要独占一部分资源,同时开发及调试的难度比较高。
与之相比,Xenomai相比的好处就是都是在Linux的平台上实现,无论是内核态下还是用户态下都可以实现硬实时性(进程上下文切换最坏时间能控制在100us左右,在某开发板上实测的的结果),并可以最大限度的复用已有的Linux资源,同时编程的风格以及调试的手法都比双OS的方式来的简便。坏处就是Footprint比较高,在IoT对系统资源有严格控制的情况下,如数百KB的RAM使用量等是不适用的。
目前Xenomai的应用还比较少,但是这个平台还是有比较大的优势的,期待以后有更多的发展。
标签:实时性,RTOS,浅见,实时,嵌入式,Linux,Xenomai,OS From: https://blog.51cto.com/u_16097040/6245777