嵌入式之驱动开发简述
一、嵌入式驱动程序的身世之谜
在嵌入式产品的设计、开发过程中,首先需要硬件的支持,绝大多数的嵌入式硬件都需某种类型的软件来初始化和管理,该类软件直接与硬件相接口并控制着硬件,以便很好的与硬件相协同,完成相关功能。
总而言之,驱动程序是初始化硬件的软件库,管理来自上层软件对硬件的访问。是硬件和操作系统、中间件和应用层之间的连接关键。在嵌入软件开发中有着不可替代的地位。
二、开发嵌入式驱动程序所面临的挑战
首先一点,驱动程序是由程序设计人员设计开发,由于存在多方面的问题,驱动程序的开发面临许多挑战。具体挑战如下:
(1)市面上硬件类型很多,不同类型的硬件有着不同的设备驱动需求。使得驱动程序开发需求较多,加上驱动程序开发的繁琐、复杂性,给开发人员增加了开发难度。
(2)设备驱动程序通常被认为是面向特定体系结构,要不它就是通用的。在这一点上,开发的驱动代码不可能完全相同,针对不同的体系结构,不同的板载硬件,都需要进行相关的配置或者增减部分代码,才能使驱动程序适用于具体环境。加上硬件的多样性,使得驱动开发人员需要编写设计更多的代码来进行功能完善,才能在特定的环境下使用驱动程序。