Forum: Mikrocontroller und Digitale Elektronik multitasking


von Susan Ünlü (Gast)


Lesenswert?

Hallo mal wieder!
kann mir jemand sagen, welche Mikrokontrollertypen 
multitasking-Eigenschaft haben?

Vielen Dank.

von crazy horse (Gast)


Lesenswert?

Kann jeder haben, ist ne reine Softwarefrage.

von crazy horse (Gast)


Lesenswert?

es sei denn, du willst wirklich echtes Multitasking haben (also 
tatsächlich mehrere Task parallel) da wirst im gesamten Controllermarkt 
nichts finden. Multitasking ist eigentlich immer ein timesharing, d.h. 
verschiedenen Prozessen werden kleine Zeitabschnitte zur Verfügung 
gestellt, so daß scheinbar alles gleichzeitig läuft. Die Kunst ist es, 
die Zeitsegmente rationell zu verteilen, evtl Prioritäten zu verteilen, 
Ressourcen dynamisch zu verwalten, die einzelnen Tasks so zu entkoppeln, 
daß evtl Fehler der einen Task die anderen nicht beeinträchtigt usw. Das 
alles erfordert einen erheblichen Verwaltungs/RAM/ROM-Aufwand, der 
schnell die Grenzen üblicher Controller sprengt.

von tommy (Gast)


Lesenswert?

ein fertiges System ist z.B. µC/OSII, dafür gibt es auch jede Menge 
Ports für diverse Controller

von Markus (Gast)


Lesenswert?

@crazy horse: theoretisch gibt (oder gab) es was. Und zwar sogenannte 
Transputer. Das sind Prozessoren, die man vernetzen konnen und somit 
parallelisieren. Ich weiß allerdings nicht, ob es die überhaupt noch 
gibt. Intel hat mit der neuesten Generation des P4 die sog. Hyper 
Threading eingeführt. Dort werden zwei virtuelle Prozessoren simuliert.
Ich weiß, das ganze ist am Thema vorbeigeschossen, aber vielleicht 
interessierts ja jemanden. Einfach mal bei Google nach Transputer 
suchen. Anscheinend gibts da noch was, denn es gibt jede Menge Material 
zu dem Thema.

Gruß
Markus

von Siegfried (Gast)


Lesenswert?

Wie schon crasy Horse sagte, es ist eine reine Softwarefrage. Die 
Branche versteht unter Multitasking eigentlich das zeitlich versetzte, 
oder in Zeitscheiben verschachtelte Abarbeiten von Aufgaben, die quasi 
gleichzeitig abzuarbeiten sind. Für den Betrachter geht das quasi 
gleichzeitg. Das geht mit jedem Prozessor mehr oder weniger gut. Einige 
Prozessoren sind vielleicht besser dazu geeignet, weil sie das 
Unterbrechen und W
iederaufnehmen von Programmteilen eleganter abhandeln.

Siegfried

von MaBl (Gast)


Lesenswert?

Wenn es nur multithreding sein soll dan empfehle ich die C-Control 
(gibt's bei Conrad).

von crazy horse (Gast)


Lesenswert?

@markus, ich weiß schon, was Transputer sind :-)
Aber auch das hat primär nichts mit Multitasking zu tun, Transputer sind 
eigentlich entwickelt, um EIN Programm teilweise parallel zu verarbeiten 
und dadurch die Verarbeitungsgeschwindigkeit zu steigern. Natürlich muß 
das Programm so compiliert werden, daß überhaupt Parallelverarbeitung 
möglich ist. Wenn 31 CPUs darauf warten, daß die 32. ein Ergebnis 
liefert, um weiterarbeiten zu können, ist der Sinn der Sache verfehlt. 
Aber solche Abhängigkeiten lassen sich natürlich niemals ganz vermeiden, 
es geht dann darum, die Aufteilung zu optimieren. Aber eigentlich gehts 
um Multitasking bei MCs, da sind mir keine bekannt, die irgendwas in der 
Art implementiert haben, weder als Hardware, noch als Schutzeinrichtung, 
noch als besondere Befehle, die das unterstützen.

von Markus (Gast)


Lesenswert?

@ crazy horse: ich sag ja, ich hab am Thema vorbeigeschossen. 
Multitasking o.ä. geht immer nur per Software. "Echte" 
Hardwareunterstützung für sowas kenne ich eigentlich erst seit Hyper 
Threading.

@ MaBl: Multithreading bei der CC???? Gibts ein neues Weltwunder oder 
was? ;)

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

CC2. Der Nachteil ist, dass man in irgendeinem C-Dialekt programmiert 
der nur zu sich selbst kompatibel ist.

von Christian K. (Gast)


Lesenswert?

Ich hatte mal die Gelegenheit mit der C-Control 2 zu spielen und bin 
nicht begeistert davon.
Einen Thread verwendete ich für die Kommunikation über RS-232 und der 
andere machte Berechnungen und A/D-Wandlungen. Die Folge waren 
unberechenbare Abstürze mit einem "stack underflow" Error (nach 5 min 
oder erst nach 1h). Nach Aussagen auf der CC2-Seite kann sowas vorkommen 
bei der Verwendung von Threads.

Daher würde ich die Finger von der C-Control lassen. Wahrscheinlich gibt 
es schon verbesserte OS-Versionen zum downloaden. ABER prinzipiell finde 
ich einen µC mit windows-ähnlichem Betriebssystem einfach nur gruselig 
...

Christian

von Markus (Gast)


Lesenswert?

Desshalb finde ich den AVRco Pascal Compiler von E-Lab so genial. 
Multitasking ist da kein großes Problem.
Eine 4k Demo gibts bei http://www.e-lab.de, eine Version für den Mega8 
gibts für 25,- bei http://www.katalog.embedit.de/.

Gruß
Markus

von Stefan (Gast)


Lesenswert?

Hallo alle Zusammen
War letzte Woche an der Electronica.
Am REP3000-Stand hat man mich kurz auf den Vasp-4096 aufmerksam gemacht. 
Der soll einen grossen und 4000 kleine Prozessoren enthalten. Wird 
verwendet in der digitalen Bildverarbeitung. Der Grosse verteilt die 
Arbeit und die kleinen führen sie aus. Da kann Intel mit seinen 2 
Prozessörchen gleich einpacken.
Wens interessiert: http://www.aspextechnology.com/
Bis die Tage
Stefan

von MaBl (Gast)


Lesenswert?

@ Christian K.
Man kann die Threads synchronisieren, dann greifen sie nicht 
gleichzeitig auf die IOs zu.

MfG
MaBl

von Popei (Gast)


Lesenswert?

Check mal den ipc@chip von BECK

80x86 Proz.
FTP Server
WEB Server
Multitasking DOS Derivat

nicht schlecht die kiste

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.