完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
` Embedded software that is stored as object code within a ROM. This name is most common among the users of digital signal processors. 固件是作为目标代码存贮在ROM中的嵌入式软件,这个名字在数字信号处理器的用户中相当流行。 固件是指设备内部保存的设备“驱动程序”,通过固件,操作系统才能按照标准的设备驱动实现特定机器的运行动作,比如光驱、刻录机等都有内部固件。 固件随着技术进步也在不断发展 固件是担任着一个系统最基础最底层工作的软件。而在硬件设备中,固件就是硬件设备的灵魂,因为一些硬件设备除了固件以外没有其它软件组成,因此固件也就决定着硬件设备的功能及性能。 通常这些硬件内所保存的程序是无法被用户直接读出或修改的。在以前,一般情况下是没有必要对固件进行升级操作的,即使在固件内发现了严重的Bug也必须由专业人员带着写好程序的芯片把原来机器上的更换下来。早期固件芯片一般采用了ROM设计,它的Firmware代码是在生产过程中固化的,用任何手段都无法修改。随着技术的不断发展,修改固件以适应不断更新的硬件环境成了用户们的迫切要求,所以,可重复写入的可编程可擦除只读存储器EPROM(Erasable Programmable ROM),EEPROM和flash出现了。这些芯片是可以重复刷写的,让固件得以修改和升级。 固件和硬件有同等重要的地位 硬件设备的固件与它的硬件有着几乎相等的地位,而在某些程度上来说固件可能更重要一些。因为只有编写出出色的固件程序才可以更加充分、巧妙的发挥硬件的作用,而且优秀的固件还可以弥补一些硬件上的缺陷。 固件既然是软件,就有大小之分,大的可有几百兆,小的也许只有几K,甚至不足1K。 如空气般存在的固件,很重要却多数时候感觉不到 为什么很多设备都没听说过有固件的说法呢?因为有些设备,在硬件上会出问题,而在软件上(即固件)永远都不会出问题,而且这些固件对于普通用户是无法更新的(或者更新的技术难度比较大)。它距离我们太遥远,所以被我们忽略掉而已。 对于独立可操作的电子产品,固件一般指它的操作系统(“担任着一个数码产品最基础、最底层工作的软件才可以称之为固件”,这和操作系统的定义很一致)。比如PSP的固件,就是指PSP 的操作系统。同理,IPHONE的固件也是其操作系统,路由器的固件就是路由器的操作系统,MP4的固件就是MP4的操作系统等。 而对于非独立的电子产品,比如硬盘、鼠标、BIOS、光驱、U盘等设备,固件就是指其最底层的,让设备得以运行的程序代码。 虽然以“固件”为名,但不管怎么说,它还是应当被我们理解为软件,并且由于目前集成威廉希尔官方网站
的进步,升级固件也变得越来越简单,越来越没有危险,固件程序与我们通常所说的程序的区别已经越来越小。 虽然升级很简单,但是还是有些要点应该注意,因为毕竟升级固件是有一定风险性的,所以在升级前和升级中,要谨慎小心。
驱动和固件,我咋分不清? 驱动和固件(Firmware)都是代码,前者为软件服务,后者为硬件服务。操作系统概念还不明确的时代,二者是没有明显区别的。但是随着计算机体系结构的发展,硬件的种类开始变多,操作系统的种类也变多了。 这个时候,因为各种技术的、商业的原因,硬件厂商希望自己的硬件能被更多的软件厂商使用,所以就需要在硬件之上做一些封装,让自己的硬件操纵起来更容易,这个时候就要有Firmware这种东西了,它简化了软件与硬件的交互。 但是为什么不把Fimware做的很完美,做的不需要驱动支持呢?因为有不同的操作系统。不同的操作系统,对于操作硬件的方式完全不同,在Windows里应用态是无法直接写IO端口的,而在嵌入式系统里,一般都不限制直接操作IO端口。所以,硬件厂商一方面为了自己的硬件能被软件更简单的使用,就需要写Firmware,而另一方面为了兼容各种操作系统,又不能把Firmware写的太死,必须预留足够的余地让软件自由发挥——软件的自由发挥就是驱动。 不同操作系统的驱动是不能兼容的,原因就是驱动是为操作系统服务的,有的操作系统是单线程的,有些操作系统不允许动态申请内存,所以不同的操作系统要操作硬件,就要根据自身的特性编写对应的操作代码,这就是驱动存在的意义——适应系统需要。 假如世界上只有一种操作系统,并且版本永远不会改变,那么Firmware和驱动就可以融合在一起,但这只能一个不现实的梦想,要知道民用操作系统和工业控制操作系统差别是十分巨大的。 ` |
|
相关推荐
4 个讨论
|
|
刚刚给新买的路由器刷了华硕的固件。
|
|
|
|
|
|
|
|
|
|
|
|
你正在撰写讨论
如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。
AI模型部署边缘设备的奇妙之旅:边缘端设备的局域网视频流传输方案
1379 浏览 0 评论
1437 浏览 0 评论
AI模型部署边缘设备的奇妙之旅:如何在边缘端部署OpenCV
6496 浏览 0 评论
tms320280021 adc采样波形,为什么adc采样频率上来波形就不好了?
1837 浏览 0 评论
3028 浏览 0 评论
77279 浏览 21 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-14 07:46 , Processed in 0.510986 second(s), Total 40, Slave 33 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (威廉希尔官方网站 图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号