System/360

historische Mainframe-Rechnerarchitektur der Firma IBM
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 4. April 2004 um 10:30 Uhr durch 195.93.73.17 (Diskussion). Sie kann sich erheblich von der aktuellen Version unterscheiden.

System/360 oder kurz S/360 bezeichnet eine Großrechnerarchitektur der Firma IBM aus dem Jahre 1964. Die wichtigsten Designkriterien waren:

  • General Purpose. Vor der S/360 waren Computer entweder für kaufmännische oder für naturwissenschaftlich-technische Zwecke optimiert.
  • 8-Bit Zeichengröße. Im Gegensatz zu zeitgenössischen Architekturen, welche mit 6-Bit Einheiten arbeiteten wurden Bytes zu 8 Bits verwendet.
  • 32- oder 64-Bit Floating Point Worte mit hexadezimaler Basis.
  • Vorzeichen bei Ganzzahlwerten ist 1 Bit
  • Dezimalzahlen (gepackte Speicherung) können variable Längen von 1 bis 31 Stellen haben. In einigen "Hochsprachen" wie zum Beispiel RPG_(Programmiersprache) nur 15 Stellen. Jede Ziffer belegt dabei ein halbes Byte (4 Bit, Binär codierte Dezimalzahlen), das Vorzeichen belegt im letzten Byte die letzten 4 Bits: "C" (1100) und "F" (1111) sind positive Vorzeichen, "D" (1101) ist das negative Vorzeichen. Alle anderen Kombinationen machen die Zahl ungültig für die Maschinenbefehle. Die Position des Kommas muß man aufgrund der Operanden beim Programmieren ermitteln.
  • Variabel lange Zeichenketten haben ein Längenfeld und werden nicht mit einem Spezialzeichen abgeschlossen.
  • EBCDIC statt ASCII Code wegen der einfacheren Umsetzung aus Lochkartencode.
  • Verzicht auf einen Stack. Dies macht Linkage Konventionen erforderlich, da bei Unterprogrammaufrufen der Status gesichert werden muss.
  • Grundsätzlich indexierte Adressierung unter Verwendung eines Basisregisters. Programme sind so grundsätzlich unabhängig von physischen Adressen.
  • Binäre Adressierung
  • Alle Register sind Universalregister, die sowohl als Akkumulatoren als auch zur Adressierung (Ausnahme Register 0) verwendet werden können. Ratsam ist allerdings als Basisregister (Adressierung) nur die Register ab Nr. 3 (bis max. 8) zu verwenden. Register 1 und 2 werden von bestimmten Befehlen (z.Bsp. TRT) zwangsweise verwendet. Die Register 12 bis 15 werden für den Aufruf von Unterprogrammen verwendet und einige benötigt man auch noch für andere Zwecke. Ein Register reicht gerade um einen Speicherbereich von 4096 Bytes (4k Bytes) zu adressieren. In den Maschinenbefehlen stehen für eine Speicheradresse nur 2 Bytes zur Verfügung, 4 Bits für die Registernummer und 12 Bits für das Displacement.
  • Die Universalregister sind 32 Bit breit, zur Adressierung werden die rechten 24 Bit verwendet, was einen Adressraum von 16 Megabyte ermöglicht. Bei den Befehlen "BAL" und "BALR" (Branch and Link) wird die Rücksprungadresse in ein Register gespeichert, dabei wird in den linken 4 Bits des Registers der Condition-Code gerettet. Aufgrund dieser Besonderheiten war es bei den Nachfolgesystemen nicht so einfach möglich, den Adressraum über die 16 MB hinaus zu erweitern.

Die S/360 - Architektur wurde im Laufe der letzten vierzig Jahre kontinuierlich weiter entwickelt und gipfelt zur Zeit in der Architektur der zSeries.

Betriebssysteme

Mit dem System/360 erschienen drei Betriebssysteme, TOS/360 für Installationen ohne Harddisks, DOS/360 für kleinere und OS/360 für größere Installationen mit Disks. OS/360 ist der Vorläufer des aktuellen z/OS.

Eine Besonderheit stellte das System 360/20 dar. Es war ursprünglich als reine Lochkartenanlage konzipiert (Ablösung von Tabelliermaschinen) und hatte nur einen eingeschränkten Instruktionssatz (Maschinenbefehle). Die Registerbreite betrug 16 bit bei 8 statt 16 Registern.