2009-10-01 4 views
12

ASIDE: Ja, das kann als eine subjektive Frage betrachtet werden, aber ich hoffe, Schlussfolgerungen aus den Statistiken der Antworten zu ziehen.Wo zeichnest du die Grenze zwischen was "eingebettet" ist und was nicht?

Es gibt ein breites Spektrum von Computergeräten. Sie variieren in physikalischen Größen, Rechenleistung und elektrischer Leistung. Ich würde gerne wissen, was Embedded-Entwickler denken, ist der entscheidende Faktor, der ein System "eingebettet" macht. Ich habe meine eigene Entschlossenheit, die ich für eine Woche zurückhalten werde, um die Antworten nicht zu beeinflussen.

Antwort

17

Ich würde sagen, „eingebettet“ ist jedes Gerät, auf das der Endverbraucher in der Regel nicht kundenspezifische Software ihrer Wahl installieren. So sind PCs, Laptops und Smartphones unterwegs, während XM-Funkgeräte, Robotersteuerungen, Wecker, Herzschrittmacher, Hörgeräte, der Duhickey in Ihrem Motor, der die Kraftstoffeinspritzung regelt, usw. sind.

+0

sehr gute und einfache Definition. – kenny

+0

Diese Antwort bekommt The Green Check, weil es eine einfache Definition ist, die viele Fälle abdeckt, aber ein bisschen Flexibilität erlaubt, es hat mich ein bisschen überrascht und es hat die Community-Abstimmung. – dwhall

+0

Danke, 'dwhall'. Ich habe eigentlich eine Menge Downstimmen für diese Antwort erwartet, als ich sie geschrieben habe, also ist es lustig, wie die Dinge manchmal funktionieren. Ich denke, dass diese Definition funktioniert, weil eingebettete Geräte sehr schwer zugänglich und zu aktualisieren sind, so dass Embedded-Programmierer einen viel größeren Anreiz haben, sicherzustellen, dass ihr Code das erste Mal richtig funktioniert. – MusiGenesis

1

Hauptfaktoren:

  • an einem festen Ort installiert irgendwo (das Gerät nicht tragen kann sich um, nur das, was sie in gebaut ist)

  • Der Lauf einer langen Zeit (oft Jahre) mit wenig Wartung

  • Sie

  • Sie sind klein oft nicht gepatcht wird, verwenden Sie wenig powe r

  • Kleine oder keine Anzeige

+1

Wie wäre es mit einer Digitaluhr? Ich würde das definitiv als eingebettet angeben, aber es ist nicht genau an einem festen Ort installiert. – wds

+0

Wie gesagt: Sie tragen die Sache herum, die das eingebettete Gerät enthält. –

+0

@Aaron: trägst du dein Auto herum? – MusiGenesis

1

+1 für eine gute Frage.

Wie viele Dinge gibt es ein Spektrum.

Am "total embedded" Ende haben Sie Geräte für einen einzigen Zweck entwickelt. Wecker, Radios, Kameras. Sie können keine neue Software laden und etwas anderes machen. Es gibt keine Unterstützung für das Ändern der Hardware,

Am "total non-embedded" Ende haben Sie Ihre klassischen PCs, wo alles, sowohl HW als auch SW, ersetzt werden kann.

Zwischen diesen Extremen liegt immer noch viel. Laptops und Netbooks zum Beispiel haben minimal erweiterbare HW, typischerweise können nur Speicher und Festplatte aufgerüstet werden. Aber die SW kann sein, was immer du willst.

0

Zitiert einen Absatz ich vorher geschrieben habe:

Ein eingebettetes System für unsere Zwecke ist ein Computersystem, das eine bestimmte und deterministisch Funktionalität \ cite hat {LamieReal}. Typischerweise Prozessoren für eingebettete Systeme Elemente enthalten, wie beispielsweise onboard RAM, einen speziellen Zweck Verarbeitungselemente, wie beispielsweise einen digitalen Signalprozessor , Analog-Digital- und Digital-zu-Analog-Wandler. Da die Prozessoren mehr Flexibilität als eine einfache CPU haben, ist ein gängiger Begriff Mikrocontroller.

6

Sie könnten nur mit wikipedia für eine Definition

http://en.wikipedia.org/wiki/Embedded_system

„Ein eingebettetes System starten ist ein Computersystem entwickelt, eine oder wenige spezielle Funktionen auszuführen, die oft mit Echtzeit-Computing-Einschränkungen. Es ist Embedded als Teil eines kompletten Geräts oft einschließlich Hardware und mechanische Teile. "

5

Kommen mit einem konkreten Satz von Regeln für was ein Embedded-System ist zu a großer Grad sinnlos. Es ist ein Begriff, der für verschiedene Menschen unterschiedliche Bedeutungen hat - vielleicht sogar unterschiedliche Dinge für ein und dieselbe Person zu unterschiedlichen Zeiten.

Es gibt einige Dinge, die so gut wie nie als ein eingebettetes System betrachtet werden, zum Beispiel ein Windows Desktop-Rechner. Es gibt jedoch Unternehmen, die ihre Software auf eine Windows-Box legen - sogar einen Mood-Standard-PC (vielleicht einen Laptop) - Dinge einrichten, so dass ihre Anwendung automatisch geladen wird und den Desktop ausblendet. Sie verkaufen das als eine einzige zweckbestimmte Maschine, die viele Leute ein eingebettetes System nennen würden (aber viele Leute würden nicht). Microsoft verkauft sogar eine Reihe von Tools namens Embedded Windows, die diese Art von Anwendungen ermöglichen, obwohl es eher an OEMs gerichtet ist, die das System zumindest etwas anpassen, anstatt es einfach auf einen Standard-PC zu setzen. Embedded Windows wird für Dinge wie Geldautomaten und viele andere Geräte verwendet. Ich denke, dass die meisten Leute einen ATM als ein eingebettetes System betrachten würden.

Aber gehen Sie in eine 7-11 mit einem Geldautomaten, der eine Tastatur hat (ich weiß ehrlich nicht, wofür die Tastatur ist), drücken Sie die rechte Umschalttaste 5 mal und Sie werden einen schönen Windows "StickyKeys" Messagebox (Ich frage mich, ob es dort einen Exploit gibt - ich hoffe es nicht). Da ist also ein Windows-System, nur versteckt und mit einigen Funktionen entfernt - vielleicht nicht so viel, wie der Hersteller es möchte. Wenn Sie es überzeugen könnten, notepad.exe irgendwie zu öffnen, hört der ATM plötzlich auf, ein eingebettetes System zu sein?

Viele, viele Leute halten etwas wie das iPhone oder iTouch für ein Embedded-System, aber sie haben in vielerlei Hinsicht fast so viel Funktionalität wie ein Desktop-System.

denke ich, die meisten Menschen die Definition eines eingebetteten Systems könnte Justice Potter Stewart Definition von harter Pornographie ähnlich sein:

Ich werde heute nicht weiter versucht, die Arten von Material zu definieren Ich verstehe umarmt werden in dieser Kurzschrift; und vielleicht könnte mir das nie verständlich werden. Aber ich weiß es, wenn ich es sehe ...

+1

Ich denke, die Tastatur am 7-11 ATM ist für die Programmierer, die unterwegs sind, wenn sie mitten in der Nacht hingehen müssen, um das verdammte Ding zu reparieren. Nicht wirklich vertrauenerweckend. – MusiGenesis

2

Software in einem Gerät implementiert nicht als Allzweck-Rechenvorrichtung vorgesehen ist ein „Embedded System“.

Normalerweise ist das System für einen einzigen Zweck vorgesehen und die Software ist statisch.

Oft interagiert das System mit nicht-menschlichen Umwelteinflüssen (Sensoren) und mechanischen Aktoren oder der Kommunikation mit anderen nichtmenschlichen Systemen.

Das ist ab von meinem Kopf. Andere Ansichten können unter this embedded.com article

2

gelesen werden. Ich betrachte ein Embedded-System, in dem die Software selten direkt auf dem Zielsystem entwickelt wird.Diese Definition umfasst hoch entwickelte eingebettete Systeme wie das iPhone und schließt primitive Desktop-Systeme wie den Commodore 64 aus. Wenn Sie die Entwicklungstools nicht auf dem Ziel haben, müssen Sie dem Editier-Compile-Lauf-Zyklus "Gerät neu programmieren" hinzufügen. Debugging wird auch komplizierter gemacht. Dies umfasst den größten Teil des eingebetteten "Gefühls".

1

Meine Ausbildung war als Computeringenieur, daher ist meine Definition von Embedded hardwareorientiert. Ich zeichne die Linie an der MMU (Memory Management Unit). Wenn ein Chip eine MMU hat, hat er normalerweise einen chipexternen RAM und betreibt ein Betriebssystem. Wenn ein Chip KEINE MMU hat, hat er normalerweise integrierten RAM und führt ein RTOS, Microkernel oder eine benutzerdefinierte Exekutive aus.

Das bedeutet, dass ich normalerweise alles, was Linux läuft, ablehnen, was kurzsichtig ist. Ich gebe zu, dass meine Antwort voreingenommen ist, wo ich normalerweise arbeite: Mikrocontroller-Firmware. Ich bin froh, dass ich diese Frage gestellt habe und ein breites Spektrum an Antworten erhalten habe.

Verwandte Themen