hardware,firmware,software
来源:互联网 发布:网络支付审理风险 编辑:程序博客网 时间:2024/06/01 07:54
Book给我发了一封email,说他是台湾的一名firmware engineer,也在研究S3C2410。由此我想,firmware是什么,firmware engineer与software engineer的工作有什么不同。。。当然,核心的问题就在于firmware这个概念。以前听过但是没有留意。下面要解决的问题就是理顺hardware/firmware/software这几个概念,由此为出发点加深对嵌入式系统的认识。 在搜索资料,逐步形成认识的过程中,找到了一本书,《Embedded Systems Firmware Demystified》,在Preface中,不仅基本解决了firmware是什么,而且对嵌入式系统的特点还有独到的见解。英文很简洁,不难理解。引用如下:
可见,firmware是适应技术发展而出现的一种手段,既不是硬件,也不是软件。它形态上是硬件,但是功能上是软件。有几个特点: 首先,firmware的形态为非易失性存储介质,比如ROM,EPROM,EEPROM,Flash等。也就是系统断电后,存储信息不会丢失。发展历程上,经历了不可升级到可升级两个阶段。 其次,firmware必须固化。举个例子来说,在嵌入式系统中,kernel映象和bootloader都存储于flash上,但它们都是firmware吗?并非如此,实际上,kernel映象可以不存储于flash上,可以通过nfs等网络手段下载到内存中。而bootloader必须固化于flash上。所以,boot loader是firmware,而OS不是firmware,而是系统软件。 也就是说,firmware的非易失性载体和固化特性是最为主要的部分。很多时候,我们感受不到firmware的存在,比如USB器件,内部是有firmware的。 这样说其实还有些抽象。Book的解释则非常直观,整理email如下:
由此可以建立一个模型。 ---------------------------------- applications ----------------------------------middleware OS(driver/kernel/utility) ----------------------------------firmware Hardware ---------------------------------- 刚看过计算机体系结构,经典计算机体系结构概念的实质是计算机系统中软硬件界面的确定,界面之上是软件的功能,界面之下是硬件/固件的功能。嵌入式系统是嵌入式计算机系统,具备计算机系统的一般特性,又具有自己独特的地方。在嵌入式系统中要想清晰的区分这些概念,确实会比较困难。从应用的角度来说,没有必要费时间来区分这些概念,关注如何实现才是应用的重点;从学习的角度来说,这倒是必要的。把所学知识理顺,不局限于表层,才能走的更远。 其实通用计算机系统和嵌入式计算机系统实际上形成了两个不同的分支,有着各自的独立发展历史。通用计算机系统在技术上往往要超前于嵌入式计算机系统,在深入学习嵌入式系统的时候,一是注意对比借鉴,二是了解发展历史。很多的术语是与发展历史紧密结合在一起的,如果不放到当时环境中去理解,是很难想象的。 |
- hardware,firmware,software
- Hardware/Firmware/Software
- Hardware/Firmware/Software的区别
- Software&Hardware
- Hardware Versus Software Firewalls
- UE4 Hardware & Software Specifications
- usb hid firmware& PC software
- UE4.9 Hardware & Software Specifications
- 凹凸电子-Firmware Software Engineer-笔试题目
- Hardware+Software+Life-ware - 百略蓝海三段论
- open source software and hardware smartphone project.
- ARM Hardware Breakpoint vs Software Breakpoint
- SharePoint 2010 - Hardware and Software Requirements
- Install SharePoint2016 RTM - Hardware and Software Requirements
- 笔记:nios2中如何结合firmware和software?
- firmware
- firmware
- Firmware
- sql编程中求两个日期之间相差天数准确写法
- 控制PHP的输出:缓存并压缩动态页面
- 在 SQL Server 中使用 Transact-SQL如何遍历一个结果集
- WebSphere MQ字符集问题
- 字符串匹配算法(一)简介
- hardware,firmware,software
- jxl用即用java处理excel之读excel
- 漫话苍鹰
- 解决android中googlemap无法显示问题
- c# .net实体类序列化
- C# 中的高性能计时器
- 简单生活
- 设置DbgridEh选择多行,并操作选中行
- 责任,承诺,信任