一、实时系统基本概念

  什么是实时系统,POSIX作了这样的定义:指能够在限定的响应时间内提供所需水平服务的系统。另个一被Donald Gillies提出定义为:一个实时系统是指计算的正确性不仅取决于程序的逻辑正确性,也取决于结果产生的时间,如果系统的时间约束条件得不到满足,将会发生系统出错。实时系统对响应时间有严格要求。

  实时操作系统(RTOS,RealTime Operation System)是指能够在给定的截止时间前对内部或者外部的异常事件做出正确响应的操作系统。在实时操作系统中,进程的执行结果的正确与否不仅与逻辑运算或数学计算结果的正确性相关,还与进程运行结束得出结果的时间有关,也是说,如果一个进程的运算结果是正确的,但是由于它完成时间已经超出了系统给定的后期限,在实时系统中,这个结果是毫无意义的。

  根据系统对响应时间约束条件的强弱可将实时操作系统分为两大类:硬实时系统(HRT,HardReal-Time System)和软实时系统(SRT,SoftReal-Time System)。

  ● 软实时操作系统:软实时操作系统对时间的限制不是十分苛刻,响应的时间可以相对延迟,即未超过后规定时间太多的范围内,其结果都是可以接受的,不会产生严重的后果。

  ● 硬实时操作系统:对于硬实时操作系统而言,不仅要求各个任务能够运行得到正确的结果,同时还必须在限定的时间内完成,这个时间是由系统本身确定的,这比软实时操作系统的时间约束条件严格了许多。例如,在航天领域的嵌入式实时操作系统中,如果在规定的时间内未能得出所希望的运算结果,其产生的后果将是十分严重的。

  二、Linux操作系统实时性

  1、Linux系统框架

  宏观上,Linux的框架如图1:

图1 Linux框架图

  为了更加直观,更加便于理解,Linux框架图1,可以抽象成下图2。

图2