嵌入式软件的分类与组成
嵌入式系统的发展非常快,而嵌入式软件的发展更快。嵌入式软件的发展就象生物的发展一样,由单细胞生物到多细胞,一直到智能生物人类,在这个过程中,嵌入式软件的结构越来越复杂,但是复杂系统还在不断发展的同时,简单系统仍然不可缺少。按照软件结构划分,嵌入式软件的分类如图1所示。
对单线程程序而言,没有主控程序,结构如图2所示,一种是循环轮询系统,一种是有限状态机。比如一个采用循环轮询结构的产品包装系统,系统采用光感应来判断是否有产品需要包装,一旦发现传输带上有物体,程序主体就控制执行包装动作。单线程程序的优点是程序简单、执行效率高,缺点是一旦出现故障,系统无法自动进行控制与恢复,安全性较差。如《猫和老鼠》中传输带上不是要包装的产品,而是一只猫,系统也会进行包装,这时如果猫使包装设备出故障,程序仍然一如继往地查是否有产品,有则执行包装指令。
中断驱动系统可以解决这种安全性问题。在中断驱动系统中,有一循环轮询的主程序控制中断响应程序的执行,程序结构如图3所示。对于多个中断请求同时发生,要考虑中断请求优先级,以及响应出现错误等情况发生时,主程序就须处理更复杂的任务管理,这时主程序已成为一个简单的嵌入式操作系统。如果上面的包装系统采用中断驱动系统,一旦发生错误,就会有一个错误中断请求执行错误响应程序,错误响应程序会处理错误,使系统恢复正常。
考虑更多的任务、多个中断处理过程的多任务系统的情况,比如要考虑存储的分配与管理、I/O的控制与管理、多个任务或中断请求同时发生等,中断驱动系统就无法应付了,这时嵌入式操作系统的支持是必不可少的,它要完成任务的切换、调度、通信、同步、互斥、中断管理、时钟管理等。而在一些系统中还需要嵌入式数据库的支持,如PDA上的一个微型客户管理系统(CRM)。如图4所示,虽然我们用简单的框图描述单机多任务嵌入式软件的层次结构,但是我们知道其程序结构远比前面所描述的几种复杂。
嵌入式系统的需求已越来越复杂,PC机上的应用几乎都有移到嵌入式系统的需要,如通过手机、PDA等移动设备进行的网络游戏、网上购物、网上银行交易等,这使嵌入式软件变得更加复杂,不仅需要嵌入式操作系统、嵌入式数据库,还需要网络通讯协议、应用支撑平台等,在此基础上的应用软件的架构也变得复杂起来。如图5所示,分布式嵌入式软件系统可能是Peer-to-Peer结构,也可能是B/S结构等。
一分钟了解嵌入式软件
1. 以C和C++方式编程.
2. 嵌入式软件:
EVC=Embedded Visual C++,是Windows CE下软件开发工具之一
QT3 M3 for Linux、arm-linux-gcc-3.4.1.tgz, 是Linux下软件开发工具
嵌入式软件就是利用成型软件的结构,在其软件启动时给与辅助或主导该软件的各项功能上有一定的加强或增强作用的软件。一般都不难操作,比如最最明显的就是杀毒软件,其工作原理就是嵌入式工作原理,还有比如游戏的外挂等,呵呵,不知这些对你有帮助没
学这个软件必须得懂得注册表的结构才行