Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C Quellcode formatieren: <code>Quellcode</code> BASIC Quellcode formatieren: <basic>Quellcode</basic> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! -> I > > > > Hallo Jo, > > > > ich arbeite an der Initialisierung von Arrays und structs für den CompactC Compiler. Dabei muß ich auch > > die BASIC Seite erweitern, damit alles kompatibel bleibt. > > > > > 2. Generierung von richtigem Code, also keine Interpreter; Damit sind dann auch wirklich Echtzeitaufgaben > > > (Interrupts, ...) lösbar. > > Generierung von echtem Code wird es nicht geben. Es sei denn mich bezahlt jemand für ein Mannjahr. :-) > > Die Erzeugung von Assemblercode ist leider sehr aufwendig weil zur Zeit ein Stackbased Modell für den > > Interpreter für die Arithmetik genutzt wird, Für echten Assembler müsste ich alles neu machen. > > > > Aber für Echtzeitaufgaben wird es Assembler geben. Ist zwar unkomfortabel, aber man kann dann auf alles > > zugreifen und die volle Geschwindigkeit bekommen. > > > > > 3. Genauere Ausgaben bei Schutzverletzungen. > > Ist in der neuen Version schon eingabaut, wie auch zuschaltbare Überprüfung von Array Indizes > > > > > 4 Libs wie z.B. sprintf (ich denke da könnten zu anderen Themen auch viele andere Nutzer beitragen) > > Da grüble ich noch, da wird es aber was in der Richtung geben. Aber nicht für den Mega32, da bin ich > > bei der Interpreterlänge schon am Anschlag. > > > > > 5. Netzwerkanbindung (ich muß leider MOXA Interfaces für die Konvertierung von RS232 auf Ethernetz) > > Dafür müßte die Hardware geändert werden, ist erst mal nicht möglich. > --> U.U könnte das je künftig über ein extenderboard realisiert werden!?! > > > > > > 6. Überdenken des Threadkonzepts; Also idel Task (abfragbar um Auslastung festzustellen), dann > > Erläutere bitte mal genauer. Wofür sollte ein idle Task nützlich sein? > --> Im jetzigen Threadkonzept programmiere ich im Prinzip für jeden Thread eine while (1) - Schleife. > Nach den konfigurierbaren n Cycles wird auf die nächste Task geschalten; dies ist nicht sehr elegant, > es wäre nach meiner Meinung besser wenn der Threadwechsel nach Durchlaufen der Threadfunktion > in eine Idel Task aufruft bzw wenn die Max. Anzahl der konfigurierten Cycles abgelaufen ist > zum nächsten Thread gewechselt wird. Die Anzahl der Idle Task Aufrufe entspricht somit der > umgekehrten CPU Auslastung. > Viele Grüße > > Jo > > > > > > Gruss Peter > > > > > > > Hallo Peter, > > > einleitend möchte ich erwähnen, das ich über 8 Jahre Erfahrung als Firmeware-Entwickler für > > > Echtzeitsysteme habe; die Applikationen laufen auf einem 80186, 20MHz, 1Mb Ram mit einem > > > eigens dafür geschriebenen Betriebssystem. Daher kann ich gut das berufliche system mit dem C-Control > > > vergleichen. Ich habe hobbymäßig mittlerweilen 3 C-128 im Haus im > > > Einsatz. Da es bereits 3 sind, zeigt es das ich mit dem C-Control recht zufrieden bin, allerdings gibt es > > > noch einiges an Verbesserungspotential. > > > 1. Bessere Anpassung an den C- Standard. Ich denke dabei an die auch von anderen erwähnte > > > Initialisierung von Variabeln, Pointer (auch auf Funktionen) sowie structs und typedefs. Diese sind ja > > > Laufzeit Neutral da ja der Compiler die entsprechenden Adress offset Berechnungen durchführen kann. > > > In meinem letzten Projekt ist der dummy code um c- standard Mankos auszugleichen so groß wie die > > > eigentliche Business Logik! > > > 2. Generierung von richtigem Code, also keine Interpreter; Damit sind dann auch wirklich Echtzeitaufgaben > > > (Interrupts, ...) lösbar. > > > 3. Genauere Ausgaben bei Schutzverletzungen. > > > 4 Libs wie z.B. sprintf (ich denke da könnten zu anderen Themen auch viele andere Nutzer beitragen) > > > 5. Netzwerkanbindung (ich muß leider MOXA Interfaces für die Konvertierung von RS232 auf Ethernetz nutzen) > > > 6. Überdenken des Threadkonzepts; Also idel Task (abfragbar um Auslastung festzustellen), dann > > > Tasks die über einen Scheduler bestimmte Zeit an CPU bekommen (keine While-Schleifen in Threads) > > > > > > Ich hoffe das dies zu keinem Overflow führt :-), wie gesagt, bisher habe ich alles mit dem C-Control zum > > > laufen gebracht... > > > > > > Was halten andere Nutzer von meinen Vorschlägen? > > > > > > Viele Grüße > > > > > > Jo > > >