Talk:Embedded software

Merger proposal
I propose merging the two articles embedded software and firmware since these are effectively two terms for the same subject and the first of these two articles in particular seems fairly poorly developed - little more than a stub, and what there is is of questionable reliability. Firmware on the other hand is a more developed, although possibly it does suffer a little from PC emphasis. Since the two terms are effectively synonymous I think it would be better taking what content there is from the embedded software article and including it into the firmware article, leaving a redirect in place in embedded software's place. I suggest that way round since firmware would appear to me to be a more likely search term, although I'm not really bothered which way round the resulting merge goes. CrispMuncher (talk) 13:34, 27 August 2008 (UTC)
 * I think they are distinct. Embedded software runs on embedded systems; firmware runs anywhere. Firmware is small by necessity, embedded software can be quite large. --Gribeco (talk) 22:34, 27 August 2008 (UTC)


 * The two terms are often used interchangeably. Within the embedded community I've heard any kind of software that's part of an embedded device referred to as "firmware", regardless of how "firm" it actually is. Indeed, if you look up "Firmware" in Mike Barr's Embedded Systems Glossary, you find: firmware n. Executable software that is stored within a ROM. USAGE: This term is interchangeable with embedded software and sometimes is used even when the executable is not stored in ROM. --Allan McInnes (talk) 04:53, 28 August 2008 (UTC)


 * Even if the two terms are not entirely synonymous is there enough separation between the two to justify separate articles? It appears to me that even if there is a distinction there is sufficient overlap to that they would be better covered by a single article, with asides if necessary to cover one or the other.  Firmware isn't always small - large databases are sometimes ROMmed depending on the nature of the device, and even in a hosted environment most firmware is effectively embedded software providing low level device control (disk controllers, graphics adapters, arguably even large portions of the BIOS). CrispMuncher (talk) 13:10, 28 August 2008 (UTC)


 * The two terms are often interchangeably, and there is merit in merging the two articles. However, it should be emphasised that DO-254 deprecates the use of "firmware" - it is either "software" (where DO-178B applies) or "hardware" (DO-254 applies) so if the two are merged, then they should be merged as "embedded software" (IMHO) Andrew D Banks (talk) 07:21, 29 August 2008 (UTC)


 * I'm easy either way, but I don't think we should necessarily regard that standard as definitive - although I am unfamiliar with it there are myriad domain-specific standards, many of which contradict others. That the wonderful thing about standards - there are so many to choose from! CrispMuncher (talk) 15:01, 3 September 2008 (UTC)

Sorry the two terms are extremely different; firmware is common between computers, subsystems, devices, and embedded systems, not only related to embedded systems Rijndael (talk) 18:23, 30 October 2008 (UTC)

It is logic to merge with Embedded software with Embedded system not with firmware Rijndael (talk) 18:25, 30 October 2008 (UTC)

"Windows embedded"
On "thin client" systems in a library I saw "Windows embedded".

This article is really tricky on the semantic level. In my perception, embedded software runs on a special processor for special taks, presumably without operating system.

My (standard commercial) TV set runs Linux (I know, because the GPL requires SONY to disclose the source code). Naturally I would call the software delivered with my TV "embedded", but that is only because of the "logistics": it is sold together with the TV, I can't change it, and is not delivered on a traditional carrier. But in addition to the operatign system, the processor may be standard too. Eventually one of the benefits of using software controlled processors is that standard hardware may be used for various functions.

Presumably, the TV has one main processor, driving separate "digital signal processors". I am not familiar with that technology, but I presume that nowadays these processors are standardised too, and use some kind of operating system.

In sum, isn't "embedded software" really a non-category with today's technology, except perhaps in the way it is sold, installed and delivered? I once heard teh definition: software for computers that do not look like computers. But than can only be an informal designation.

Rbakels (talk) 14:29, 27 September 2010 (UTC)

A non-distinction?
It seems to me that the distinction between embedded and other software is a non-distinction. It seems more related to the way the software is traded and distributed than to the characteristics of the software itself. Embedded Windows still is Windows, embedded Linux still is Linux. But I got the Linux running in my router and my TV-set when I purchased these devices, and I can't (reasonably) modify that software.

The phrase "software not running on computers" is confusing. In my perception, any programmable processor basically is a computer, and obviously "embedded software" always runs on programmable processors too. I think the only distinction that can be made is whether the device is something people colloquially call a computer. Well, no one would call an automobile a computer, but the distinction between a modern TV set and a computer is minor.

I am aware that historically, "embedded software" was special software in every respect: written for a special task for a special processor (in a special language), often running without an operating system, and for real-time processing. The above examples show that standard operating systems are increasingly used in this realm as well nowadays.

Of course, I don't advocate to drop the "embedded software" concept entirely. But it should be clarified that the distinction with other software is limited, nowadays. Rbakels (talk) 07:05, 23 February 2011 (UTC)


 * There are many flavors of embedded software and a wide range of capabilities. Roll-your-own OS, hard real-time, soft real-time, even "embedded Windows" which is really Windows with control over what components get loaded - but as you point out, it's loaded once onto a system, and the ability to update it is strictly controlled.  Loading apps is often not possible, difficult or strictly controlled, unless you include mobile devices.  But the concept of embedded software is still important and is very distinct from people who specialize in .Net or Javascript code. Nerfer (talk) 00:56, 9 December 2012 (UTC)

External links modified
Hello fellow Wikipedians,

I have just modified 1 one external link on Embedded software. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
 * Added archive https://web.archive.org/web/20130203113844/http://www.stroustrup.com:80/Programming/25_embedded.ppt to http://www.www.stroustrup.com/Programming/25_embedded.ppt

When you have finished reviewing my changes, please set the checked parameter below to true or failed to let others know (documentation at ).

Cheers.— InternetArchiveBot  (Report bug) 12:03, 23 December 2016 (UTC)

External links modified
Hello fellow Wikipedians,

I have just modified one external link on Embedded software. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
 * Added archive https://web.archive.org/web/20130322031258/http://ics-control.com/ to http://www.ics-control.com/

When you have finished reviewing my changes, you may follow the instructions on the template below to fix any issues with the URLs.

Cheers.— InternetArchiveBot  (Report bug) 12:29, 14 December 2017 (UTC)