home *** CD-ROM | disk | FTP | other *** search
/ Vectronix 2 / VECTRONIX2.iso / FILES_01 / SMON109A.LZH / SYSTEM.MAN < prev   
Text File  |  1994-03-26  |  21KB  |  419 lines

  1. *#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
  2.  
  3.  
  4.          ⌠ SysMon der ATARI-ST SystemMonitor Version 1.0.9 ⌠
  5.          |-------------------------------------------------|
  6.          ⌡    Copyright (C) by Karsten Isakovic, Berlin    ⌡
  7.  
  8.                   ist ein Shareware Programm von
  9.  
  10.                   Karsten Isakovic geb. Gerlach
  11.                       Wilmersdorfer Str. 82
  12.                            10629 Berlin
  13.  
  14.  
  15. *#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
  16.  
  17. SYSTEMGRUNDLAGEN
  18.  
  19.  
  20.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  21.      GENERELLER AUFBAU DES BETRIEBSSYSTEMS
  22.  
  23.      Das Betriebssystem des Atari ST, in seiner Gesamtheit normalerweise
  24.      TOS genannt, gliedert sich in verschiedene Schichte. Das sind im
  25.      Groben:
  26.  
  27.      - DOS (BIOS, XBIOS, GEMDOS)
  28.      - GEM (VDI, AES)
  29.  
  30.  
  31.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  32.      DIE DOS SCHICHT
  33.  
  34.      DOS stellt den Teil des Betriebssystems dar, der Datei- und Speicher-
  35.      verwaltung, sowie die Ein- und Ausgabe von Zeichen ermöglicht und der
  36.      in eigentlich allen Systeme vorhanden ist.
  37.  
  38.      Das DOS gliedert sich in drei Teile, und zwar:
  39.      - BIOS   ( Basic Input Output System )
  40.      - XBIOS  ( eXtended BIOS )
  41.      - GEMDOS ( GEM-Disk Operating System )
  42.  
  43.  
  44.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  45.      BIOS
  46.  
  47.      Dieser Teil des Systems dient in erster Linie der Ein- und Ausgabe
  48.      einzelner Zeichen auf den zeichenorientierten Geräten. Das sind
  49.      Tastatur, Drucker, Bildschirm usw. Desweiteren werden die block-
  50.      orientierten Geräte Floppy und Harddisk mit einer Funktion zum Lesen
  51.      und Schreiben von Blöcken (Sektoren) unterstützt.
  52.  
  53.      Gliederung der BIOS-Funktionen:
  54.      - Es existieren Funktionen zur zeichenweisen Ein- und Ausgabe (Bconin,
  55.        Bconout, Bconstat ) auf den unterschiedlichen Geräten (Devices) .
  56.      - Das BIOS bietet auch eine Funktion (Rwabs) zum Lesen und Schreiben
  57.        von logischen Sektoren auf Disketten und Harddisks.
  58.      - Die Systemvektoren können mit Setexc abgefragt und gesetzt werden.
  59.      - Der Status der Sondertasten (Shift, Control, Alternate usw.) kann
  60.        mit der Funktion Kbshift abgefragt werden.
  61.  
  62.      Das BIOS ist bis zu einem gewissen Level (9 - 16) reentrant. Es
  63.      werden keine Funkionen aus anderen Funktionsgruppen aufgerufen.
  64.  
  65.  
  66.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  67.      XBIOS
  68.  
  69.      Das XBIOS enthält Funktionen, mit denen man auf Hardware-Komponenten
  70.      oder Systemvariablen zugreifen kann. Dazu zählen die seriellen
  71.      Schnittstellen (Maus, Tastatur, Midi und RS232), der Video-Chip, der
  72.      Interrupt-Chip, Floppycontroler und Blitter-Chip.
  73.  
  74.      Gliederung der XBIOS-Funktionen:
  75.      - Einzelne Einstellungen des internen Bildschirmtreiber können über
  76.        die Funktionen Phsybase, Logbase, Setscreen und Getrez abgefragt
  77.        und gesetzt werden.
  78.      - Es gibt Funktionen zum Lesen (Floprd), Schreiben (Flopwr) und zum
  79.        Formatieren (Flopfmt) von Disketten.
  80.      - Der MFP Interrupt-Chip kann über XBIOS-Funktionen (Mfpint, Jdsint,
  81.        Jenabint usw.) konfiguriert werden.
  82.      - Die RS232 Schnittstelle wir mit Rsconf konfiguriert.
  83.      - Zum Setzen und Abfragen der Systemzeit dienen die Funktionen
  84.        Settime und Gettime.
  85.      - Eine wichtige XBIOS-Funktion (Supexec) ermöglicht die Ausführung
  86.        einer Unterfunktion im Supervisor-Modus des Prozessors.
  87.  
  88.      Das XBIOS ist bis zu einem gewissen Level (5 - 10) reentrant. Es
  89.      werden keine Funkionen aus anderen Funktionsgruppen aufgerufen.
  90.  
  91.  
  92.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  93.      GEMDOS
  94.  
  95.      Dieser Teil enthält schlie₧lich alle Funktionen zur Verwaltung von
  96.      Dateien, Speicher und Prozessen.
  97.  
  98.      Gliederung der GEMDOS-Funktionen:
  99.      - Die zeichenorientierten Ein- und Ausgabe wird über die Funktionen
  100.        Cconws (Console Write String), Cconrs (Console Read String) usw.
  101.        abgewickelt. Alle Funktionsnamen beginnen mit einem gro₧en 'C' (für
  102.        Character).
  103.      - Die Funktionen zur dateiorientierten Ein- und Ausgabe sind Anlegen
  104.        (Fcreate), öffnen (Fopen), Lesen (Fread) und Schreiben (Fwrite) von
  105.        Dateien. Die einzelnen Dateien werden über Nummern, sogenannte
  106.        File-Handles unterschieden. Alle Funktionsnamen dieser Gruppe
  107.        beginnen mit einem gro₧en 'F' (für File).
  108.      - Die Funktionen der Speicherverwaltung sind Anlegen (Malloc),
  109.        Grö₧enänderung (Mshrink) und Freigeben (Mfree) von Speicherblöcken.
  110.        TOS-intern werden die Speicherbereiche in zwei verketten Listen
  111.        verwaltet. In einer Liste (MFL, Memeory Free List ) werden alle
  112.        freien Blöcke verwaltet, die zweite Liste (MAL, Memory Allocated
  113.        List ) enthält alle belegten  Speicherblöcke und einen Verweise
  114.        auf den Prozess, die die jeweiligen Blöcke angefordert haben. Alle
  115.        Funktionsnamen der Speicherverwaltung beginnen mit einem gro₧en
  116.        'M' (für Memory).
  117.      - Das GEMDOS verfügt über eine Prozessverwaltung, die über die
  118.        Funktionen zum Starten eines Kindprozesses (Pexec) und zum
  119.        Beenden des aktuellen Prozesses (Pterm, Ptermres) verfügt. Beim
  120.        Starten eines Kindprozesses wird der Vaterprozess angehalten, bis
  121.        der Kindprozess terminiert ist.
  122.  
  123.        Beim Beenden eines Prozesses gibt es zwei Möglichkeiten, bei Pterm
  124.        werden alle geöffneten Dateien geschlossen, alle angeforderten
  125.        Speicherbereiche und auch der Programmspeicher werden wieder aus
  126.        der MAL in die Liste der freien Speicherblöcke umgehängt.
  127.  
  128.        Beim Beenden eines Prozesses mit Ptermres, werden alle Speicher-
  129.        bereiche, die von diesem Programm belegt wurden, aus der MAL
  130.        entfernt, ohne in die MFL eingefügt zu werden. Dadurch können
  131.        diese Speicherbereiche nicht mehr weiter vergeben werden.
  132.  
  133.        Alle Funktionsnamen der Prozessverwaltung beginnen mit einem
  134.        gro₧en 'P' (für Prozess).
  135.      - Eine weitere wichtige GEMDOS Funktion (Super) erlaubt den Wechsel
  136.        des Prozessor-Modus zwischen Supervisor- und User-Modus.
  137.  
  138.      Die GEMDOS Ein- und Ausgabe-Funktionen rufen wiederum BIOS-Funktionen
  139.      auf. Das GEMDOS ist bis auf die Super-Funktion nicht reentrant, dies
  140.      bedeutet, da₧ während einer GEMDOS-Funktion keine weiteren GEMDOS-
  141.      Funktionen aufgerufen werden dürfen.
  142.  
  143.      Die meisten GEMDOS-Funktionen liefern einen Rückgabewert, der über
  144.      Erfolg oder Mi₧erfolg der Funktion Auskunft gibt.
  145.  
  146.      Eine wichtige, dokumentierte GEMDOS-Systemvariable ist der ACT_PD,
  147.      der einen Zeiger auf das aktuelle Programm darstellt. Dieser wird
  148.      z.B. in der MAL als Verweis auf den zum Speicherblock gehörigen
  149.      Prozess eingetragen und bestimmt au₧erdem die gültige Ein- und
  150.      Ausgabe-Umlenkung.
  151.  
  152.  
  153.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  154.      DIE GEM SCHICHT
  155.  
  156.      GEM enthält die graphische Komponenten des Betriebssystems TOS. GEM
  157.      besteht aus zwei weitestgehend voneinander unabhängigen Teilen:
  158.  
  159.      - AES  (Application Environment Services)
  160.      - VDI  (Virtual Device Interface)
  161.  
  162.  
  163.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  164.      AES
  165.  
  166.      Dies ist der Teil von GEM, der die Kommunikation mit dem Anwender
  167.      übernimmt. Dazu gehören Drow-Down-Menüs, Formulare, Fenster usw.
  168.  
  169.      Das AES erweitert die Möglichkeiten von GEMDOS um die Fähigkeit des
  170.      limitierten Multitaskings. Es können bis zu sechs sogenannte
  171.      Accessories installiert werden, die quasi gleichzeitig zur Haupt-
  172.      applikation laufen. Allerdings findet das Taskswitching nicht auf den
  173.      unteren Ebenen statt, sondern nur in AES-Aufrufen.
  174.  
  175.      Der Bildschirmmanager SCRNMGR ist auch als paralelle Task ausgeführt.
  176.      Er ist für die Verwaltung von Mausaktionen - etwa beim Verschieben
  177.      von Fenstern, Anklicken von Knöpfen usw. - und auch für die Drow-
  178.      Down-Menüs zuständig.
  179.  
  180.      Gliederung der AES-Funktionen:
  181.      - Die Kommunikation von GEM-Programmen mit dem Benutzer erfolgt über
  182.        Ereignisse (Events), die zum Beispiel durch das Verschieben eines
  183.        Fensters ausgelöst werden.  Events werden über das Versenden von
  184.        Nachrichten (Messages) realisiert.
  185.  
  186.        Die Abfrage von Ereignissen erfolgt mit den Evnt-Xxxx Funktionen,
  187.        die auf das Eintreten von einzelnen Ereignissen (evnt_mouse wartet
  188.        auf einen Mausklick, evnt_timer auf das Verstreichen eines
  189.        Zeitraums) oder das Eintreten eines von mehreren Ereignissen
  190.        (evnt_multi erlaubt die Kobination verschiedener Ereignisse)
  191.        warten.
  192.      - Zur Verwaltung von Fenstern dienen die Wind-Xxxx Funktionen. Es
  193.        gibt Funktionen zum Anlegen (wind_create), öffnen (wind_open),
  194.        Schlie₧en (wind_close) und Freigeben (wind_delete) von Fenstern.
  195.        Die Ausma₧e und Position eines Fensters können mit den Funktionen
  196.        wind_get und wind_set abgefragt und gesetzt werden.
  197.      - Dialog-Boxen sind neben den Fenstern eine weitere Möglichkeit zur
  198.        Interaktion mit dem Benutzer. Im Gegensatz zu Fenstern müssen
  199.        Dialoge erst abgeschlo₧en werden, bevor mit anderen Aufgaben fort-
  200.        gefahren werden kann. Zur Verwaltung dieser Dialoge dienen die
  201.        Form-Xxxx Funktionen. Die form_do Funktion arbeitet zum Beispiel
  202.        den kompletten Dialog ab, und kehrt erst zurück, wenn der Dialog
  203.        abgeschlossen ist.
  204.  
  205.      Das AES baut komplett auf VDI-Funktionen auf, bei manchen Funktionen
  206.      werden aber auch Funktionen des GEMDOS benutzt, etwa um Dateien nach-
  207.      zuladen oder Speicher anzufordern.
  208.  
  209.  
  210.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  211.      VDI
  212.  
  213.      VDI stellt eine umfassende Sammlung graphischer Funktionen zur
  214.      Verfügung, die die graphischen Ein- und Ausgabesysteme (Maus,
  215.      Bildschirm, Drucker, Metafile) bedienen. Konzeptionell ist es an GKS
  216.      (Graphisches Kern System) angelehnt.
  217.  
  218.      Es besteht aus GDOS (Graphics Device Operating System) und den
  219.      einzelnen Gerätetreibern.
  220.  
  221.      Der Bildschirmtreiber ist direkt im Betriebssytem integriert, auf
  222.      ihn kann durch die Line-A-Funktionen zugegriffen werden.
  223.  
  224.      Die einzelnen Geräte werden auch als 'Workstations' bezeichnet. Die
  225.      Unterscheidung erfolgt über eine Nummer, die als 'Workstation-Handle'
  226.      bezeichnet wird. Für das Bildschirm-Gerät kann man mehrere sogenannte
  227.      virtuelle Workstations gleichzeitig öffnen. Den einzelnen
  228.      Workstations können unterschiedliche Einstellungen (Linienstile,
  229.      Füllmuster) zugeordnet werden.
  230.  
  231.      Gliederung der VDI-Funktionen:
  232.      - Die Verwaltung der Workstations erfolgt über Funktionen zum Öffnen
  233.        (v_opnwk und v_opnvwk) und Schliessen (v_clswk und v_clsvwk). Jeder
  234.        VDI-Workstation besteht aus einer Vielzahl von Parameterein-
  235.        stellungen für die verschiedenen Ausgabefunktionen.
  236.      - Dem GKS entsprechend gibt es Ausgabefunktionen für Linien
  237.        (v_pline), Marker (v_pmarker), Texte (v_gtext) und GDPs (Graphic
  238.        Display Primitives), die auf jedem VDI-Ausgabegerät verfübar sind.
  239.      - Es gibt Attibut-Funktionen um die Attribute (Linienfarbe, Texthöhe,
  240.        Füllmuster) der Ausgabefunktionen zu setzen oder zu erfragen.
  241.  
  242.      Die GDPs des VDI rufen in vielen Fällen direkt die Line-A-Funktionen
  243.      auf. Bei manchen VDI-Funktionen (v_opnwk,v_clswk) werden auch GEMDOS-
  244.      und XBIOS-Funktionen aufgerufen. Bei den Funktionen für die Tastatur-
  245.      eingabe werden BIOS-Funktionen aufgerufen.
  246.  
  247.  
  248.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  249.      LINE A
  250.  
  251.      Die wichtigste Funktion ist A-Init. Diese Funktion liefert einen
  252.      Zeiger auf die Systemzeichensätze, die internen Line-A-Variablen und
  253.      die einzelnen Line-A-Funktionen. Die anderen Line-A-Funktionen sind
  254.      Funktionen um Linien, Flächen und Texte auszugeben.
  255.  
  256.      Die Line-A-Variablen enthalten wichtige Informationen über den Aufbau
  257.      des Bildschirmspeichers, dessen Breite und Höhe in Pixeln, einen
  258.      Zeiger auf den Systemzeichensatz und viele weitere Werte.
  259.  
  260.      Da die Line-A-Funktionen nur einen Zugang zu den graphischen
  261.      Primitiven des im TOS integrierten VDI-Bildschirmtreibers darstellt,
  262.      werden die Ausgabefunktionen bei Benutzung eines anderen Bildschirm-
  263.      treibers meist nicht unterstützt. Die A-Init-Funktion und auch die
  264.      Line-A-Variablen wird hingegen bei allen Bildschirmtreibern unter-
  265.      stützt, so da₧ man zumindest auf diese zugreifen kann.
  266.  
  267.  
  268. *#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
  269.  
  270. DIE SCHNITTSTELLE ZUM BETRIEBSSYSTEM
  271.  
  272.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  273.      TRAPS UND VEKTOREN
  274.  
  275.      Der Atari ST besitzt einen Prozessor aus der 680xx Familie. Bei
  276.      diesen Prozessoren wird beim Auftreten des Trap-Befehls die Programm-
  277.      abarbeitung über sogenannte Vektoren an Unterprogramme weiter-
  278.      geleitet. Beim Atari ST werden 4 der 15 bei 680xx möglichen Traps zur
  279.      Kommunikation mit dem Betriebssystem genutzt werden.
  280.  
  281.      Für jede Funktionsgruppe beim ST ist ein eigener Trap reserviert. Die
  282.      Funktionsnummer und die Parameter der jeweiligen Funktion werden
  283.      dabei dem Prozessorstack übergeben. Eine Ausnahme bilden dabei AES
  284.      und VDI. Diese werden über einen gemeinsamen GEM-Trap aufgerufen, die
  285.      Unterscheidung zwischen AES- und VDI-Funktionen wird dabei über den
  286.      Wert eines Prozessor-Registers bestimmt. Eine weitere Besonderheit
  287.      ist, da₧ die Parameter der AES- und VDI- Funktionen nicht über den
  288.      Stack übergeben werden, sondern über einen Register-Zeiger auf ein
  289.      Parameterfeld.
  290.  
  291.      Au₧er den Trap-Vektoren gibt es Exception-Vektoren (Ausnahme-
  292.      Vektoren), die beim Auftreten von Hardwarefehlern (Zugriff an
  293.      ungültige Adressen, Division durch Null usw.) angesprungen werden und
  294.      Vektoren, die von dem MFP-Interrupt-Baustein (Multi Function
  295.      Peripheral) benutzt werden.
  296.  
  297.      Zusätzlich zu den durch die Hardware vorgegebenen Vektoren existieren
  298.      noch logische Vektoren, die durch das Betriebssystem vergegeben
  299.      werden. Es gibt Vektoren für Harddisk-Zugriffe, zu den einzelnen
  300.      Funktionen der zeichenorientierten Geräte, zu den Unterfunktionen
  301.      des internen Bildschirmtreibers und zu der Untergruppe der Interrupt-
  302.      vektoren. (Die Maus, Tastatur und Uhr laufen über denselben Hardware-
  303.      Interrupt, es existieren aber z.B ein Mausvektor und ein Tastatur-
  304.      vektor, die dann durch die Interrupt-Routine nach Unterscheidung der
  305.      Interrupt-Quelle angesprungen werden). Es gibt auch einen Vektor, der
  306.      beim Starten von GEMs angesprungen wird.
  307.  
  308.  
  309.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  310.      USER UND SUPERVISORMODUS
  311.  
  312.      Die 680xx bieten verschiedene Arbeits-Modi an, den Supervisor-Modus
  313.      und den User-Modus. Nach einem Trap-Aufruf, einer Exception oder
  314.      einem Interupt befindet sich der Prozessor im Supervisor-Modus, der
  315.      den Zugriff auf den gesamten Adressbereich erlaubt.
  316.  
  317.      Im User-Modus, in dem Programme normalerweise ablaufen, kann auf
  318.      bestimmte Speicheradressen nicht zugegriffen werden. Das sind zum
  319.      Beispiel sämtliche Systemvektoren und die Register-Adressen der
  320.      Hardware-Bausteine.
  321.  
  322.  
  323.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  324.      EINHAENGEN VON TREIBER PROGRAMMEN
  325.  
  326.      Durch die Vielfalt an Vektoren ist die Funktionalität des Betriebs-
  327.      systems in weiten Bereichen veränderbar. Ein Programm zur dynamischen
  328.      Veränderung der Mausgeschwindigkeit (Mausbeschleuniger) wird sich zum
  329.      Beispiel in den Mausvektor einhängen, ein Plattencache in die
  330.      Harddisk-Vektoren und ein Low-Level-Debugger in die Exception-
  331.      Vektoren.
  332.  
  333.      Im Allgemeinen wird das neu hinzugekommene Programm aber nicht
  334.      sämtliche Funktionen des von ihm veränderten Vektors anbieten,
  335.      sondern nur auf bestimmte Aufrufe reagieren und in allen anderen
  336.      Fällen weiter über den vorher gefundenen Vektor springen. Dadurch
  337.      wird die Funktion wieder vom Betriebssystem ausgeführt.
  338.  
  339.      Es ist auch möglich, eigene Aktionen zeitlich hinter dem Systemaufruf
  340.      auszuführen, indem die Rücksprung-Adresse auf dem Stack auf eine neue
  341.      Routine 'umgebogen' wird. Nachdem diese Routine dann ausgeführt
  342.      wurde, mu₧ logischerweise die orginale  Rücksprung-Adresse an-
  343.      gesprungen werden. Dieses Verfahren bezeichnet man als 'Hinter eine
  344.      Funktion hängen'.
  345.  
  346.      Da manche Vektoren für mehrere Zwecke modifiziert werden können, ist
  347.      es sinnvoll, die Kette der eingehängten Programme zu verfolgen. Dies
  348.      wird durch das XBRA-Verfahren (eXtended BRAner, nach einer Idee von
  349.      Moshe Braner) geleistet, das auch schon von fast allen Vektor-
  350.      verändernden Programmen angewandt wird und 1990 als Standard fest-
  351.      geschrieben wurde. Bei diesem Verfahren wird vor der Einsprungadresse
  352.      des Vektors eine Struktur angelegt, die eine 'magische' Kennung (Die
  353.      Ascii-Zeichen 'XBRA' ), eine Programmkennung (XBRA-Id, vier weitere
  354.      Ascii-Zeichen) und auch die dem Vektor nachfolgende Einsprungadresse
  355.      enthält.
  356.  
  357.  
  358.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  359.      BOOTVORGANG DES SYSTEMS
  360.  
  361.      Nach dem Anschalten des Rechners wird zuerst GEMDOS, BIOS und XBIOS
  362.      initialisiert. Dann wird getestet, ob sich auf dem angeschlossenen
  363.      Laufwerk ein ausführbarer Bootsektor befindet. Bei einer Harddisk
  364.      wird durch diesen Bootsektor im allgemeinen der Harddisk-Treiber
  365.      nachgeladen.
  366.  
  367.      Im nächster Schritt werden alle im Auto-Directory befindlichen
  368.      Programme ausgeführt. Da GEM zu diesem Zeitpunkt noch nicht
  369.      initialisiert ist, können durch diese Programme auch keine AES- oder
  370.      VDI-Funktionen aufgerufen werden.
  371.  
  372.      Man unterscheidet zwischen Programmen, die nur kurze Einstellungen
  373.      vornehmen und dann terminieren und solchen, die resident im Speicher
  374.      verbleiben. Hauptsächlich wird es sich bei diesen Programmen um Ram-
  375.      Disk, Bildschirmtreiber, Beschleunigern (Für Plattenzugriffe, oder
  376.      Bildschirmausgaben), Fehlerpatches oder Utilitys (Bildschirmschoner,
  377.      FileSelectorBoxen) handeln. Damit diese Programme ihren Zweck
  378.      erfüllen können, müssen sie sich irgendwie in das System
  379.      'einklinken'. Dazu verändern sie einfach die benötigten System-
  380.      vektoren.
  381.  
  382.      Wenn alle Programme im Auto-Ordner ausgeführt sind, wird GEM
  383.      gestartet. Vom Bootlaufwerk werden  alle Programme mit der Extension
  384.      '*.ACC' als Accessories nachgeladen, die Bildschirm-Workstation wird
  385.      geöffnet und die Accessories, der Desktop und der SCRNMGR als quasi-
  386.      paralelle Tasks gestartet.
  387.  
  388.      Da die einzelnen Accessories nicht terminieren, könnte man denken,
  389.      da₧ sie sich problemlos in Systemvektoren einhängen könnten. Dies ist
  390.      aber nicht der Fall, da deren Speicher bei einem Auflösungswechsel
  391.      einfach freigeben wird.
  392.  
  393.      Programme, die vom Desktop gestartet werden, nutzen entweder die
  394.      Fähigkeiten der GEM-Schnittstelle, dann werden sie als
  395.      'Applikationen' bezeichnet oder aber sie benutzen nur GEMDOS-
  396.      Funktionen. Solche Programme bezeichnet man als 'TOS-Programme' .
  397.  
  398.  
  399.      -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  400.      SCHNITTSTELLEN VERSCHIEDENER PROGRAMMIERSPRACHEN
  401.  
  402.      Alle Programmiersprachen müssen Systemfunktionen benutzten, um auf
  403.      dem vorhandenen Betriebssystem ablauffähig zu sein. Dies geschieht
  404.      allerdings nicht nur durch expliziten Aufruf einer Funktion. In
  405.      vielen Fällen werden Funktionen angeboten, die dann ihrerseits eine
  406.      oder mehrere Systemfunktionen zusammenfasssen.
  407.  
  408.      Zum Beispiel ruft die BASIC-Funktion
  409.        INPUT 'Eingabe :',A\$
  410.      die GEMDOS Funktionen 'Cconws('Eingabe :')' und 'Cconrs()' auf, die
  411.      dann die Ein- und Ausgaben erledigen.
  412.  
  413.      Die Zuordnung von Bibliotheksfunktion und tatsächlich aufgerufenen
  414.      Systemfunktionen ist in der Regel sehr einfach zu erkennen, so da₧
  415.      SysMon auch als Debugger dieser 'Hochsprachen'-Funktionen benutzt
  416.      werden kann.
  417.  
  418.  
  419. *#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#