Seite 1 von 1

IOS und/oder TRIOS?

Verfasst: Di 3. Jan 2012, 22:43
von quix
Nehmt mir die Frage nicht übel, aber während meiner Recherchen hier im Forum bin ich über beide Bezeichnungen gestolpert. Kann mir mal bitte einer kurz die Unterschiede bzw. Gemeinsamkeiten beider Systeme (IOS und TRIOS) erklären?

Re: IOS und/oder TRIOS?

Verfasst: Di 3. Jan 2012, 23:27
von drohne235
Also TriOS ist einfach der Name vom Spin-Betriebssystem für den Hive.

IOS ist eine Abkürzung, bedeuted Input Output System und meint ein zentrales Objekt bzw. eine Bibliothek, um Anwendungen für den Hive zu programmieren. Diese IOS-Lib enthält alle möglichen Routinen, um von Regnatix aus Funktionen in den Slaves aufzurufen. Enthalten sind so einfache Sachen wie Zeichenausgaben (print, printdec, printhex), alle Funktionen um mit Dateien auf SD-Card umzugehen, Sondroutinen, Grafikfunktionen usw. Früher hieß die Datei einfach nur ios.spin (daher der Name), mit der letzten größeren Umstrukturierung habe ich die Datei in reg-ios.spin umbenannt, da nun alle Libs in einem Verzeichnis versammelt sind.

Wenn du in die Quelltexte von den Anwendungen schaust, wirst du bei den meisten Programmen sehen, dass im OBJ-Block die IOS eingebunden ist, um alle möglichen Funktionen des Hive verfügbar zu machen. Mal ein einfaches Beispiel der Anwendung:

Code: Alles auswählen

OBJ
        ios: "reg-ios"

CON

_CLKMODE     = XTAL1 + PLL16X
_XINFREQ     = 5_000_000

PUB main 

  ios.start
  ios.print(string("Wir sind Borg. Widerstand ist zwecklos."))
  ios.stop

Wenn du in die reg-ios.spin schaust, wirst du extrem viele Funktionen finden - geordnet nach den Chips und den Funktionskomplexen. Deshalb ist es wichtig im BST-Compiler die Optionen für die Optimierngen anzuschalten: damit werden nur die wirklich verwendetetn Funktionen auch als Code compiliert, im obigen Beispiel nur start, stop und print sowie ein paar Variablen.