mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Betriebssysteme für Mikrocontroller


Autor: Martin Martin (martin1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute!

Vor Kurzem habe ich mich flüchtig mit AVR und ARM7(2138)-Prozessoren 
auseinandergesetzt.

Nun reizt mich das Thema Betriebssysteme auf Mikrocontroller sehr. Damit 
die Sache halbwegs zukunftssicher ist, dachte ich mir, dass Linux dafür 
hervorragend geeignet ist.

Damit jedoch das ganze System leistungsfähiger wird würde ich auf 
ARM9-Prozessoren umsteigen.

Laut meinen Informationen hat ein Betriebssystem den großen Vorteil, 
dass man Standardschnittstellen und Protokolle wie USB, TCP-IP sehr 
einfach einbinden kann. Auch Grafikdisplays sollen relativ einfach 
anzubinden sein.

Ich bin auf eure Antworten sehr gespannt. Lasst uns diskutieren:
Welche Betriebssysteme gibt es auf Mikrocontroller grundsätzlich?
Welche Vorteile oder auch Tücken haben diese?
Welche Prozessoren sind für Betriebssysteme besser oder weniger gut 
geeignet?

Tschüss.
Schönes Wochenende.
Martin

Autor: unsichtbarer WM-Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Laut meinen Informationen hat ein Betriebssystem den großen Vorteil,
>dass man Standardschnittstellen und Protokolle wie USB, TCP-IP sehr
>einfach einbinden kann. Auch Grafikdisplays sollen relativ einfach
>anzubinden sein.

Ein Betriebssystem braucht man eigentlich nur, wenn man "dauernd" die 
Software ändern will.
Die meisten Mikrocontroller-Anwendungen werden aber eher selten bis gar 
nicht geändert - es läuft also immer das gleiche Programm ab.
Schliesslich wäre es ja Quatsch, einem Videorekorder heute mal die 
Software für einen Geschirrspüler und morgen für ein Kfz-Steuergerät zu 
verpassen. (Etwas übertrieben zwecks Anschaulichkeit...)
Will man die Firmware ändern (Update...) gibt es natürlich verschiedene 
Möglichkeiten, die zu tun. Allerdings braucht man dafür eher Bootloader 
statt eines Betriebssystems.
Die Treiber, die ein Betriebssystem zur Verfügung stellt, kann man in 
der Regel beim Compilieren des Programms einbinden (linken).
Ergo: Ich sehe keinen Sinn darin, auf Mikrocontrollern Betriebssysteme 
einzusetzen (vor allem nicht aufg 8bittern).

Wenn sich eins zusammenbaut, bleibt es ja sowieso am Hardware-Entwickler 
hängen, was das System alles kann.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jau, voll Zustimm.

Man baut das Haus doch nicht vom Dach aus.

D.h. leg erstmal fest, was Deine MC-Anwendung machen soll.

Erst danach kann man überhaupt feststellen, ob ein Betriebssystem 
benötigt wird.

Ein Betriebssystem ist Mumpitz, wenn man es nicht braucht.

Nur weil man es schick findet, kann man sich auch nen Knopf an die Backe 
nähen.


Peter

Autor: unsichtbarer WM-Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Nur weil man es schick findet, kann man sich auch nen Knopf an die Backe
>nähen.

Ob schick oder nicht: Das tut weh!

Autor: Mehmet Kendi (mkmk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eurem Einspruch kann ich nur teilweise zustimmen.
Für einfache Aufgaben ist ein OS natürlich absurd. Aber sobald es etwas 
komplizierter wird, laesst es sich mit einem RTOS viel einfacher und 
uebersichtlicher programmieren.

MfG

Autor: Ronny (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ob schick oder nicht: Das tut weh!

@Rahul:

Hast wohl schon probiert? g

Ein Betriebssystem an einen Mikrocontroller anpassen,kann je nachdem 
wieviele Änderungen an den Hardwarenahen Teilen der Quellen nötig 
sind,auch weh tun.Da ist es z.B oft einfacher einen TCP/IP-Stack an die 
Hardware anzupassen denn ein komplettes Betriebssystem.

Wenn nur ein Programm/Task auf der Maschine gleichzeitig läuft ist es 
sogut wie immer besser,neue Software per Bootloader 
einzuspielen.Einziger Vorteil von Betriebssystemen (da gibt´s nicht nur 
Linux:z.B RTX oder eCOS) ist es wenn häufig mehrere Anwendungen 
gleichzeitig laufen sollen und die auch noch häufig wechseln.Aber das 
läuft dann schon eher als Konkurrenz zu Handheld-PCs.

Autor: Winfried (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Vorteil ist doch auch, dass man tonnenweise Software für bestimmte 
Betriebssysteme bekommt. Man also vieles nicht selber schreiben muss. 
Und ebenso Hardwaretreiber. Wer entwickelt schon gerne einen Treiber für 
einen aktuellen Epson-Scanner oder Canon-Drucker? Bei Linux ist vieles 
mit dabei. Und wer gerne Programme in Perl, Ruby oder PHP schreibt, 
findet auch das.

Von daher kommt es vor allem drauf an, bei der Analyse zu schauen: 
Braucht meine Anwendung fast ausschließlich selbst geschriebenen Code 
oder kann ich auf vieles zurückgreifen, was ein Betriebssystem mir 
bereits anbietet.

Das der Aufwand, sich in ein Betriebssystem tief einzuarbeiten, auch 
gewaltig sein kann, sollte natürlich auch berücksichtigt werden.

Und dann noch das Thema Stabilität und getestete Software: Bei einem 
Betriebssystem bekommt man oft jede Menge Softwarekomponenten, die über 
viele Jahre getestet sind und stabil laufen. Ebenso regelmäßig 
Sicherheitsupdates, falls man sowas braucht.

Wenn man Realtime-Anforderungen hat, ist es oft auch besser, ein RTOS 
zur Hand zu nehmen, als alles selber zu stricken. In manch einem RTOS 
stecken hunderte Mannjahre Entwicklungsarbeit, warum sollte man das Rad 
da nochmal neu erfinden?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.