定义角度不同。固件指的是被固化在非易失性存储介质上的代码,这是从代码“固化”角度考虑下的定义。软件是软件开发人员开发的能在硬件上运行的代码,这是从代码“运行”角度考虑下的定义。单从最终代码角度考虑,也就是从广义角度考虑,固件和软件是完全相同的;从实际开发角度考虑,也就是从狭义角度考虑,固件和软件则是不同的。总之,固件和软件指的都是代码,只不过固件更偏向于机器,而软件更偏向于人。
广义的情形。手机、数码相机、MP3等嵌入式设备的IMAGE文件都可以叫做固件,它包括所有的软件代码。
狭义的情形。PC中的BIOS中的代码叫做固件,其它部分代码则称为软件。部分PCI设备有自己的EEPROM,其中的代码也叫做固件。
固件工程师绝不能等同于驱动工程师。固件工程师中的“固件”是狭义的固件,往往比驱动工程师更倾向硬件。驱动工程师则要完成和设备相关的大量软件工作,往往比固件工程师更倾向于软件。
文章评论(0条评论)
登录后参与讨论