【发布时间】:2010-12-03 00:22:01
【问题描述】:
ASIDE:是的,这可以被认为是一个主观问题,但我希望从回答的统计数据中得出结论。
计算设备种类繁多。它们在物理尺寸、计算能力和电力方面有所不同。我想知道嵌入式开发人员认为什么是使系统“嵌入式”的决定因素。我有自己的决心,我会保留一周,以免影响回复。
【问题讨论】:
标签: embedded
ASIDE:是的,这可以被认为是一个主观问题,但我希望从回答的统计数据中得出结论。
计算设备种类繁多。它们在物理尺寸、计算能力和电力方面有所不同。我想知道嵌入式开发人员认为什么是使系统“嵌入式”的决定因素。我有自己的决心,我会保留一周,以免影响回复。
【问题讨论】:
标签: embedded
我会说“嵌入式”是最终用户通常不会安装他们选择的自定义软件的任何设备。因此,PC、笔记本电脑和智能手机已被淘汰,而 XM 收音机、机器人控制器、闹钟、起搏器、助听器、发动机中调节燃油喷射的小玩意等都在流行。
【讨论】:
dwhall。当我写这个答案时,我实际上期待着一连串的反对票,所以有时事情的结果很有趣。我认为这个定义是有效的,因为嵌入式设备很难访问和更新,所以嵌入式程序员有更大的动力来确保他们的代码第一次就正确工作。
你可以从维基百科开始定义
http://en.wikipedia.org/wiki/Embedded_system
“嵌入式系统是一种计算机系统,旨在执行一个或几个专用功能,通常具有实时计算限制。它嵌入作为完整设备的一部分,通常包括硬件和机械部分。”
【讨论】:
为嵌入式系统提出一套具体的规则在很大程度上是没有意义的。这个词对不同的人有不同的含义——甚至可能对同一个人在不同的时间有不同的含义。
有些东西几乎从未被视为嵌入式系统,例如 Windows 桌面计算机。然而,有些公司将他们的软件放在 Windows 机器上——甚至是标准 PC(可能是笔记本电脑)——进行设置,以便他们的应用程序自动加载并隐藏桌面。他们将其作为一种单一用途的机器出售,许多人将其称为嵌入式系统(但许多人不会)。微软甚至销售了一套名为 Embedded Windows 的工具来帮助启用这些类型的应用程序,尽管它更多地针对 OEM,他们将至少在一定程度上定制系统,而不是仅仅将其放在标准 PC 上。嵌入式 Windows 用于 ATM 机和许多其他设备。我认为大多数人会认为 ATM 是一种嵌入式系统。
但是进入一个 7-11 的 ATM,它有一个键盘(老实说,我不知道键盘是干什么用的),按右 shift 键 5 次,你会得到一个漂亮的 Windows“StickyKeys”消息框(我想知道那里是否存在漏洞——我当然希望没有)。所以那里有一个 Windows 系统,只是隐藏起来,并且删除了一些功能 - 可能没有制造商想要的那么多。如果你能说服它以某种方式打开 notepad.exe,ATM 会不会突然不再是嵌入式系统?
很多很多人认为 iPhone 或 iTouch 之类的东西是嵌入式系统,但它们在很多方面都具有几乎与桌面系统一样多的功能。
我认为大多数人对嵌入式系统的定义可能类似于 Potter Stewart 法官对硬核色情的定义:
我今天不会尝试进一步定义我理解的包含在该速记描述中的材料种类;也许我永远也无法理解地做到这一点。 但我一看到就知道了...
【讨论】:
我认为嵌入式系统很少直接在目标系统上开发软件。该定义包括复杂的嵌入式系统,如 iPhone,不包括原始的桌面系统,如 Commodore 64。目标上没有开发工具意味着您必须将“重新编程设备”添加到编辑-编译-运行周期。调试也变得更加复杂。这包含了大部分嵌入的“感觉”。
【讨论】:
在不打算用作通用计算设备的设备中实现的软件是“嵌入式系统”。
通常,系统仅用于单一用途,软件是静态的。
系统通常与非人类环境输入(传感器)和机械执行器交互,或与其他非人类系统通信。
这不是我的想法。其他观点可以阅读this embedded.com article
【讨论】:
主要因素:
安装在某处的固定位置(您不能随身携带设备本身,只能携带它内置的东西)
运行时间很长(通常是几年),几乎没有维护
他们不经常打补丁
它们体积小,耗电少
小或无显示
【讨论】:
+1 提出一个很好的问题。
就像许多事情一样,有一个光谱。
在“完全嵌入式”端,您拥有专为单一目的而设计的设备。闹钟、收音机、照相机。您无法加载新软件并使其执行其他操作。不支持更换硬件,
在“完全非嵌入式”端,您拥有可以替换硬件和软件的所有东西的经典 PC。
在这些极端之间还有很多。例如,笔记本电脑和上网本的硬件可扩展性极低,通常只能升级内存和硬盘。但是,SW 可以随心所欲。
【讨论】:
我的教育背景是计算机工程师,所以我对嵌入式的定义是面向硬件的。我在 MMU(内存管理单元)上画了一条线。如果芯片具有 MMU,它通常具有片外 RAM 并运行操作系统。如果芯片没有 MMU,它通常具有板载 RAM 并运行 RTOS、微内核或自定义执行程序。
这意味着我通常会忽略任何运行 linux 的东西,这是短视的。我承认我的回答偏向于我倾向于工作的地方:微控制器固件。所以我很高兴我提出了这个问题并得到了全方位的答复。
【讨论】:
引用我之前写过的一段话:
我们的嵌入式系统是 具有特定功能的计算机系统 和确定性的 功能\引用{LamieReal}。 通常,嵌入式处理器 系统包含诸如 板载 RAM,专用 处理元件,如数字 信号处理器,模数 和数模转换器。 由于处理器有更多 灵活性比简单 CPU,一个常用的名词就是微控制器。
【讨论】: