论文部分内容阅读
在现代工业生产中,实时系统得到广泛的应用,例如电力监控与管理,航空航天器飞行控制,机器人控制以及军事领域。工业生产的复杂性也决定了实时系统是一个复杂的系统,所以在设计时要对实时系统所控制的对象进行仔细的分析,否则很难设计一个成功的实时系统。在本实时系统中,它的实现就设计到转炉复杂的工艺,不同系统间通信,数据库和网络等。 实时系统有强实时系统和弱实时系统两种。强实时系统对时间要求极其严格,它不允许有响应延迟,若有则会造成不可估量的后果,它一般通过实时操作系统来实现。而弱实时系统仅要求系统尽量不出现响应延迟,它不会造成不良的后果,它一般通过通用的操作系统来实现,像Windows,Unix和Open VMS等操作系统。 本文实现的实时系统是一个基于Windows NT的弱实时系统,它通过在NT上采用多任务抢占机制来实现。在实现实时系统前首先要对Windows NT的实时性进行研究,验证NT实现实时系统的可能性。我们发现NT不是一个强实时操作系统,而是一个弱实时操作系统,所以就本文的弱实时系统的实现是完全可行的,并且在许多的工程中都得到验证。然后再对网络的实时性进行研究,虽然以太网不是一个实时的通信网,但现在的实时通信网协议层比较少,这会带来通信的可靠性问题,所以为了保证通信的可靠性和实时性我们通过加大硬件投资和减少访问周期来达到实时性,这样就不必要通过改变以太网的协议层就可以实现实时性的要求。由于NT和Sq1Server 2000能很好的兼容,能保证数据库的稳定性。在具体实现实时系统前,要对数据库进行设计和优化,因为数据库的设计和优化的好坏对实时系统的实现影响很大。在本文中重点讲了数据库的逻辑设计和物理设计。最后对实时系统的对象和功能进行分析,对它们进行分析通过时间内聚和功能内聚来划分任务,因为任务划分的好坏对实现实时性的性能有很大的影响。时间分析是调度算法实现的前提,时间分析不准确就会造成任务没有得到及时的响应,就可能丢失数据,严重的就会造成重大的事故。在做好时间和功能分析的基础上,提出了基于多处理器全局调度抢占式的实时系统调度算法,并实现了该动态和静态相结合的调度算法。