回复一下个人从SW RD角度的定义,不确定是否合乎学术上的定义:
※ 引述《x246libra (宸火)》之铭言:
: 标题: Fw: [请益] 韧体 跟 嵌入式 的关系
: 时间: Mon Dec 18 11:54:35 2017
:
: ※ [本文转录自 Soft_Job 看板 #1QDpfuki ]
:
: 作者: x246libra (宸火) 看板: Soft_Job
: 标题: [请益] 韧体 跟 嵌入式 的关系
: 时间: Mon Dec 18 11:48:06 2017
:
: 抱歉短期间发问多次
:
: 这次想问的是 韧体跟嵌入式系统 是否指的是同一种东西
:
系统=硬件+软件
韧体属于软件的一种分类,故韧体是嵌入式的一部分。
但现在很少人自己分开买MCU、内存、IO套件来自行组装硬件,大多是用现成的套件。
所以对SW RD来说,开发嵌入式系统、从事嵌入式系统相关工作,都是“开发嵌入式系统上的韧体”的简称。
[引言恕删]
:
: 想请问是否板上所讲的嵌入式embedded 或是 韧体firmware
: 是否指同样的工作内容?
对我来说是一样的,除非有特别指名要EE背景。
: 想找爬文嵌入式相关资讯 不太确定要用哪个关键字好
: 还想顺便一问 现在的物联网是否也算嵌入式系统
是的
: 我是有再看 计算机概论的开放式线上课程
: 还是说 嵌入式多了 os
: 而韧体不用考虑os吗?
OS只是帮忙管理硬件(CPU、memory、IO)的大型程式,
你不想有人插手也可以不用OS直接控制IO pins来完成你要的工作。
有些嵌入式系统不用OS的原因是想省成本,毕竟OS要占用大量的memory与CPU power。
可能你的控制程式使用的memory只有64KB,但加上OS就要1MB,这样就有点不合成本了。
但目前半导体业这么发达,HW的成本越来越低,反而SW的维护成本越来越高,
所以不上OS的情况应该不多吧?
: → yamakazi: MCU韧体也有简单的os阿 比如while(1){}这种 12/18 12:47
: → yamakazi: 大部份非硬件中断都只能塞在while(1)里工作 12/18 12:49
说真的,只用while(1){}这种情况通常是没上OS的系统。
: → JerryLian: 这种名词会随时代不同而变化... 12/18 13:20
非常认同这一句话。
对于原Po在Soft_Job上提到的另一个问题: 软件韧体的差别
个人认为他们的差别在于载体的不同。
在古老的时代,软件是从磁带、磁盘、软碟上加载系统的,亦即软件的载体相对低廉的。
而韧体是放在Mask ROM上,其更换成本是相当昂贵的。
所以韧体的容错度非常低,要求要bug free,和开发软件的要求不同。
但随着PROM、EPROM、EEPROM、Flash memory逐渐开发出来,
原本换版的成本降低后,FW RD可以开始不那么严谨地来开发韧体后,
我是认为两者的差异已经不见了。:-P
以开发Android手机为例,一般我们会称其中的Linux Kernel/BSP部分为韧体,APP为软件。
然后Android framework有些公司归于BSP team负责,有些归于APP team负责。
但其实不管BSP team或APP team,他们的成果都放在Flash memory上。
我觉得韧体这一名词随着时间演进已经跟原本的意思差很多了。