Hacker News new | ask | show | jobs
by chapingt 3545 days ago
I always have trouble calling platforms that can run a system of this magnitude "embedded." For some reason I always had the term "single-purpose" linked with the idea of an embedded system. Once you add tons of RAM, a relatively powerful processor, and can only last a couple of hours on a battery--I feel like then it's just a small general purpose computer.
6 comments

I think there are simply 2 views for the systems: One is the developers view, the other the end users view.

From the developers view these Linux based systems are pretty much general purpose computers.

However what mostly counts for the definition of "embedded system" is the end users view. The end user (customer) gets a complete system for a specific purpose, he can't install any own applications and partly can't even update the system.

This is the most useful argument I've ever heard on this. Thanks!
I work for a firm that sizes various segments of the embedded hardware and software market. Here's our definition:

A specialized or dedicated computer used to control devices (such as automobiles, home and office appliances, handheld units of all kinds, etc.) where the operating system and application functions are often combined in the same program. An embedded system implies a fixed set of functions programmed into a non-volatile memory (ROM, flash memory, etc.) in contrast to a general-purpose computing machine. However, sometimes single board computers and rack-mounted computers are called “embedded computers” if used to control a terminal interface, machine, motor, etc. An embedded device or system may contain more than one operating system and/or processors (microprocessor, microcontroller, etc.). Specifically excluded from this definition are all types of enterprise computing machines deployed as general-purpose computers (i.e., desktop PCs, standard laptop PCs, enterprise servers, etc.). Our definition of embedded system/device is intended to give a good indication of the potential operating system and run-time software royalty opportunity within the embedded systems market.

So there you go. As you can see our definition has grown substantially over the years as the embedded and IT/enterprise markets have converged. It's much more helpful to think in terms of vendors though.

Traditional embedded silicon vendors include NXP/Freescale, Renesas, Microchip, Rockchip, Cypress/Broadcom etc. Traditional embedded OS vendors include Wind River (Intel), Green Hills, Express Logic, Enea, Micrium, etc.

Intel/Samsung/TI and Microsoft attribute small portions of their revenue to embedded systems, but they don't show up often in conversations with embedded vendors in their respective markets...they focus on enterprise servers/computers/software so they are usually less relevant to the day-to-day going ons of embedded vendors (until they swoop in with the intent to acquire).

This is changing though...has been fun advising some larger players on embedded strategies. Interesting time to be in the market for sure.

> TI ... attribute[s] small portions of their revenue to embedded systems

Um, what? Pretty much every chip TI makes goes into either an embedded or softwareless system. Analog, mixed-signal, and DSP have been their bread and butter for decades.

I've started to think that 'embedded' is an abstraction where the chunk of functionality looks like hardware rather than software. For example my WRT-54G router is running Linux and so are my laptop and desktop, but it seems embedded and the others do not and the Raspberry Pi looks both ways depending on whether I squint or cross my eyes.
I feel like in modern usage, "embedded" has shifted to refer less to the constraints imposed by size and power and cost (because, increasingly, there aren't any), and more to the extra peripherals present. Basically "working in embedded systems" now means what "robotics" used to mean.

Has your thing got always-on sensors, or actuators, or both? Your job title is probably "embedded software developer."

I'm pretty sure one of the DEC PDP series machines used to be common for "embedded" applications in the mid/late 20th century.
I agree, but the definition of "embedded" has changed, with things like the Pi Zero being a full computer the size of a stick of gum.
For a long time, I struggled with a similar view. The lines for this are blurring very fast though. Example - Amazon's kindle is more or less a single purpose system - but runs linux, lasts for days on battery, has good RAM and a relatively powerful processor.
One useful metric is how far something is along the "general purpose computer - appliance" continuum. Something can be quite powerful with lots of resources, and still function as an appliance that people do a relatively restricted set of things with.