HSG

Aktuelle Seite: HSG/Fächer/Informatik/Material/Bonsai

Aspekte eines Betriebssystems

Abstraktion des Maschinenbegriffes (nach Coy):

  • Reale Maschine = Zentraleinheit + Geräte (Hardware)
  • Abstrakte Maschine = Reale Maschine + Betriebssystem
  • Benutzermaschine = Abstrakte Maschine + Anwendungsprogramm

In wikipedia heißt es

"Ein Betriebssystem ist die Software, die die Verwendung (den Betrieb) eines Computers ermöglicht. Es verwaltet Betriebsmittel wie Speicher, Ein- und Ausgabegeräte und steuert die Ausführung von Programmen."

Beim Bonsai gibt es keine Ein- und Ausgabegeräte, da ist also nichts zu verwalten. Natürlich will man Programme eingeben, starten und ihre Ergebnisse auslesen können. Das wird alles durch den Handbetrieb möglich.

Ein realer Prozessor lässt sich nicht auf Handbetrieb umschalten. Hier muss eine Software-Lösung gefunden werden. Um das Grundprinzip zu verstehen, reicht ein einfacher Ein-Platinen-Computer, wie z.B. der Heathkit ET-3400 aus. Mini-Betriebssysteme für sehr kleine Computer nennt man Monitor.

In wikipedia heißt es

"Ein Monitor kann auch ein primitives Betriebssystem- oder Debuggerprogramm sein, typischerweise sehr klein und mit sehr kurzen Kommandozeilen-Kommandos. Solche Monitore wurden/werden typischerweise als komplette Betriebssysteme für Kleinstcomputer, Debugger oder als BIOS-Äquivalent auf Workstations benutzt."

Der Monitor des Heathkit ET-3400

Hauptschleife

Ansicht des Trainers Der ET-3400 hat eine Eingabe-Tastatur mit 17 Tasten und eine Ausgabe mit 6 7-Segment-Anzeigen. Weitere Peripherie lässt sich anschließen. Mit der Tastatur lässt sich ein Reset auslösen und alle 16 Hex-Ziffern eingeben. Mit Ausnahme der Null sind alle Hex-Ziffern-Tasten mit einer zusätzlichen Funktion belegt.

Auf der Seite Daves Old Computers findet man die Handbücher und - besonders reizvoll - ein Simulationsprogramm.

Betriebssystemroutinen, die über die Tastatur aufrufbar sind

  • reset führt CPU-Reset durch und springt in die Monitor-Hauptschleife
  • do startet nach Eingabe von 4 Hex-Ziffern ein Programm mit der angegebenen PC-Belegung.
  • exam zeigt den Speicherinhalt an der angegebenen Stelle
  • fwd schaltet eine Speicherzelle weiter, back eine Speicherzelle zurück
  • chan ermöglicht ein Ändern der Speicherzelle
  • auto ermöglicht ein schnelles Beschreiben des Speichers, weil nach Eingabe eines Bytes sofort eine Speicherzelle weitergerückt wird.
  • acca zeigt den Inhalt des Akkumulators a, accb entsprechend, mit chan ändern
  • pc zeigt den Inhalt des PCs an, mit chan ändern
  • index zeigt den Inhalt des Index-Registers an, mit chan ändern
  • cc zeigt den Inhalt des Condition-Codes-Registers an, mit chan ändern
  • sp zeigt den Inhalt des Stack-Pointer-Registers an
  • rti Resume User's Program
  • ss Einzelschritt-Betrieb
  • br setzt Breakpoint

Weitere Monitor-Routinen

  • addr - accept address value with 'ad' prompt
  • outsta - output string for address prompt
  • redis - reset displays
  • baddr - build address
  • bkpt - break point return
  • mem - display address and data
  • replace - replace displayed value
  • prompt - prompt and input bytes
  • register display functions
  • display - display indexed bytes
  • encode - scan and encode keyboard
  • inch - input character from keyboard
  • ihb - input hex byte und display on leds
  • outbyt - output two hex digits
  • outhex - output hex digit
  • outch - output character to display
  • outstr - output imbedded charakter string
  • swive1 - set up breakpoint return and jump to user code

Das komplette Monitor-Programm (ca. 1kB)

8E00EBBDFD8D4E673E003EE7CE00CBDFF286FFC608365A26FC97EE86193686FC
36BDFDF47D00EE2708810F27F4810B27F0DFECCEFFB408084A2AFBA60136A600
36DEEC96EE39CE00E286FFC6040808A1002604A101270E5A26F3BDFD8D00473E
0E0EA04C39DFEE8D1D1F858D084C39DFEE8D133D9D8D45DEEEC6027EFD25DFEE
8D0477BD20EFCEC12F7EFE50DEF20808080808088DD98D244FC606BDFE3A5A26
FA8D19BDFE6BC60430EE08A6003636863FA7005A26F2CEFCCE7EFEFCDFECCEC1
6FDFF0DEEC39CE00EE8DB3DEEE39309FF2A60626026A054AA706E605D7EC97ED
0C8E00D9C604323230EE089CEC26010DA7005A26F124ACDEEC8DC1DFEECE00EE
C6028D03EE005A7EFD7B8DBA8DEB8D0B0820F98DB10908080920DE5D2706368D
228D02323937860858BDFE3A5A26FA338D1137BDFE09A700085A26F73317094A
26FC393796F18B205A26FB97F133398D3B309520168D35770D0DFD20108D2D77
0D0D9F20098D25678D4C4C5C4C4C5C8B02DEF2084A26FC8D024C3937A600BDFE
20085A26F73317094A26FC395FCEC16F7EFE50BDFCBCDEF2C6204FE50127014C
BDFE285626F44C398DE25BE7D6F3CB0799F28D6C175F8D6886013937F6C003B6
C006484848594859485937F6C005C41F1B334353DFECCEFFA511271124063617
33CEFFAD5D2606084822FC27010CA600DEEC333937C6208DC225FA5A26F9C620
8DB924FA5A26F933398DE98D1B4848484837168DDF8D111B33368D9F25FC3239
36444444448D013236840FDFECCEFF95084A2AFCA6008D043239DFECDEF03749
49C61049A700095A26F9DFF0DEEC3339DFF030EE003131A6008DDF084D2AF84F
6E008D07DEF2EE067EFCF99FEEDEF2A60736A60636EE06863F3636A60236A601
36A6003616CEFF7508C00824FBA600465C26FC3236251E813024048120241481
602511818D270C84BD818C270484308130C2FF5C5C2770302502E7018601C102
2E062702A701A7024FEB06A905A705E706DEF2A706E707C606323684CF818D32
2748816E275B817E275E81392762813B276C813F276EAF0636CEFF05867E97F4
DFF59EF23B30EE05084F5F9CEE260C09EE0009E6002A014330EE05EB01A90030
A705E70609DFF29EEE39818D2602865F803F360909DFF2A603A701085A2AF820
90334FEB05A9048C3233A706E70720D50808DFF2A603A705095A2EF820C9085A
2AFC20C1A607A700095A2AF88A10A701C6FA860020D49C003CAF400000AC6412
6412641064101101100410001000110D100C100C100C7E306D79335B5F707F7B
771F4E3D4F47070A0D0205080B0E0306090C0F000104FC45FD55FD5DFD65FD4F
FD93FDA8FC96FE62FC46FD0AFD18FD1BFC8CFD13FD16FFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00F700F400FDFC00

Valid XHTML 1.0!