论文部分内容阅读
伴随着智能化、网络化趋势的发展,计算机技术进入了一个新的充满机遇的阶段——后PC时代,在这一阶段,嵌入式系统代替PC成为时代的主流。然而传统的单处理器结构已经不能完全满足应用需求,越来越多的嵌入式系统采用了一种在物理上松耦合、逻辑上紧耦合的全分布式系统。这种体系结构要求具有较高的可靠性和实时性,所以需要有一种针对该结构的操作系统来管理所有软硬件资源。Linux系统由于其自身的特点受到广泛的关注,而将它应用到嵌入式分布式环境也成为研究的热点,其相关理论和实现技术也是本文的研究方向。本文首先从系统特点、发展历史和应用现状几个方面系统地阐述了嵌入式系统的概念,并在此基础上简单介绍了嵌入式操作系统的定义及特点。随后分析了将Linux系统作为嵌入式操作系统的优劣。其次,对多处理器系统的理论和结构进行了深入地研究,并从系统的启动和初始化、互斥策略、进程调度及高速缓存的一致性几个方面详细描述了Linux系统对SMP多处理器结构的设计。然而Linux系统本来是为桌面系统设计的,不能完全符合嵌入式多处理器系统的要求,需要对其进行嵌入式化和分布式化改造。对Linux的嵌入式化改造主要针对系统的可裁剪性和可配置性两方面,而分布式化改造则主要针对多处理器环境中的互斥策略。在最终实现时,由于ARM9核处理器不支持SMP多处理器结构,因此系统采用了一种双总线结构:一条原来意义上的系统总线,一条CAN总线。前者实现各CPU对共享存储器的访问,后者实现各节点间的消息传递。此外,在为CAN总线上的消息分配标识符时,采用了一种基于指数的改进MTS算法,以提高系统实时性。最后,针对嵌入式多处理器应用的特殊需求,将设计实现的嵌入式操作系统与通用的桌面Linux操作系统进行比较。最终的数字结果表明该系统相对于桌面Linux系统在可裁剪性、可配置性及实时性等方面都有了很大提高,更适合于嵌入式分布式系统的实际要求。总之,本文所设计的面向多处理器结构的嵌入式Linux系统充分考虑了多处理器系统的特点,从整体上达到了对系统性能提高的目的。