为什么说linux不是实时操作系统
看了一下实时操作系统的特点
1)多任务;
2)有线程优先级
3)多种中断级别
Linux都支持啊,而且2.6内核好像也支持抢占的,那么为什么说Linux就不是一个实时操作系统呢?希望高手能帮忙讲解一下。
------解决方案--------------------这是现代操作系统的特点,而实时操作系统(Real-time operating system, RTOS)最大的特点是:对响应时间有严格的要求。
例如USA的宇宙飞船常用VxWorks,这才是闻名于世的RTOS。
------解决方案--------------------linux的线程优先级是动态的,也就是即使高优先级线程还没有完成,底优先级的线程还是会得到一定的时间片。
linux有个RT Patch,严格限制了线程的优先级,可以提高实时性
https://rt.wiki.kernel.org/index.php/Main_Page
------解决方案--------------------通用操作系统和实时操作系统的调度算法是不一样的,linux也针对这两种情况做了划分,但只能做到软实时(响应时间要求比较低)。
硬实时不光对操作系统有要求,对硬件都有要求,比如必须支持硬件高精度计时,否则“实时”就是空中楼阁。
Linux是通用操作系统,他的许多运行平台硬件非常差,从硬件层面就不可能实时
楼主找的资料可能有问题,你说的任何那些现代化操作系统都有,windows有、linux有、unix也有
------解决方案--------------------2.6内核的抢占根本就不是为实时性而做的,而是为了桌面性能
2.4内核的内核模式不能抢占,当执行耗时的系统调用时,交互界面体验可能很差
------解决方案--------------------