IBM-besturingssystemen | |
---|---|
Servermodel | Besturingssysteem |
S/38 | CPF |
S/36 | SSP |
AS/400 | OS/400 |
E-Server iSeries | OS/400 |
E-Server i5 | i5/OS |
IBM Power Systems | IBM i |
IBM i is een besturingssysteem van IBM voor het IBM Power Systems-platform. Het besturingssysteem is geëvolueerd uit CPF voor de S/38, en heette achtereenvolgens OS/400, i5/OS en sinds april 2008 IBM i.
In 1978 kwam S/38 van IBM uit, met als besturingssysteem Control Program Facility (CPF). Het project dat had geleid tot dit systeem stond onder leiding van dr. Frank Soltis, en was uitgevoerd in het laboratorium van IBM in Rochester (Minnesota).
CPF was een revolutionair besturingssysteem. Behalve alle zaken die je van een besturingssysteem mocht verwachten, bevatte CPF een groot aantal faciliteiten die normaliter apart moesten worden aangekocht, zoals:
Uiteraard had de integratie van al deze functionaliteit in het besturingssysteem een groot nadeel: de klant had geen keuze. Gebruik van CPF liet geen andere database-implementaties, beveiligingspakketten enz. toe. Veel kritiek die Microsoft tegenwoordig ten deel valt met betrekking tot het integreren van allerlei functionaliteit in Windows was dus in 1978 al van toepassing op IBM.
Bovendien was de fundamentele architectuur vernieuwend, door het toepassen van een machine interface (MI) werd de onderliggende hardware voor het besturingssysteem en de applicaties bijna volledig gevirtualiseerd. Een van de effecten hiervan was dat CPF kon werken met een concept dat single level storage werd genoemd: interactie met het schijvengebied werd door de MI uitgevoerd. Elk onderdeel van het besturingssysteem werd als object beschikbaar gemaakt, en elk object was uniek identificeerbaar met behulp van objectnaam, objecttype en de bibliotheek waarin zich dat object bevond. CPF kende als gevolg daarvan geen instructies om bijvoorbeeld een programma in het geheugen te laden, het eenvoudig aanroepen van het programma was voldoende om er voor te zorgen dat het in geheugen werd geladen. CPF was daarmee een van de eerste object-georiënteerde besturingssystemen.
IBM leverde bij CPF als programmeertalen RPG en COBOL. RPG was al min of meer een IBM-eigen taal, en de Cobol versie die werd bijgeleverd was aanmerkelijk anders dan ANSI-Cobol, omdat hierin instructies waren opgenomen voor de CPF-eigen functionaliteit. Voor een ervaren Cobol programmeur was het even wennen om programma's te maken voor een S/38.
Om ook de markt te bedienen die op zoek was naar een eenvoudig te beheren computersysteem bracht IBM in 1983 de S/36, met SSP als besturingssysteem. SSP was veel eenvoudiger dan CPF en daarmee werd het beheer vereenvoudigd. Een belangrijk voordeel van SSP boven CPF was de aanwezigheid van een menustructuur in het besturingssysteem, waarmee alle systeemfuncties konden worden opgezocht. CPF ontbeerde dat, en kon alleen met CL (Control Language) opdrachten worden bestuurd.
Voor SSP was RPG ook de belangrijkste programmeertaal voor applicatieprogramma's, het was echter een andere RPG-versie dan die van CPF. Programma's van de twee systemen waren niet uitwisselbaar, en ook niet compatibel op broncodeniveau. De migratie van een S/36 naar een S/38 was dan ook niet eenvoudig, en was voor veel bedrijven een moeilijk te nemen drempel.
Vanuit strategisch oogpunt was het voor IBM van belang de diverse computerlijnen (S/36, S/38, 4300 en S/370) samen te voegen tot één systeem. Dit nieuwe systeem moest de sterktepunten van S/36 (eenvoudig beheer, menustructuur) combineren met die van S/38 (geïntegreerde database en security, scheiding van logica en presentatie). Het gevolg van deze samenvoeging werd in 1987 gepresenteerd als AS/400, met het nieuwe besturingssysteem OS/400. Programmeurs en beheerders van S/38 werden op hun wenken bediend: de eerste versie van OS/400 was eigenlijk een nieuwe release van CPF, met wat nieuwe CL-commando's en een menustructuur. Degenen die gewend waren aan SSP hadden het wat lastiger, alhoewel OS/400 een emulatie in zich had van SSP, zodat ook programma's van S/36 zonder al te veel problemen konden worden gemigreerd.
In de jaren 90 kwam de ontwikkeling van OS/400 een beetje in een slaapstand terecht. Alhoewel er regelmatig release-updates kwamen, was daar vaak niet al te veel revolutionairs te ontdekken. De trend om meer en meer grafische weergave te gebruiken werd door IBM wat genegeerd, en de AS/400 kreeg een wat oubollig imago. De populariteit begon daardoor ook wat te dalen.
Sinds het omarmen van GNU/Linux en Java-technologie is OS/400 weer in de lift. IBM positioneert OS/400 als het besturingssysteem dat bij voorkeur voor WebSphere en J2EE wordt gebruikt. Al een aantal jaren is er een grafische interface voor beheertaken in het product Operations Navigator, waarmee met de muis het beheer over de machine kan worden gevoerd.
De meest recente versie van dit besturingssysteem heeft de naam i5/OS meegekregen en steunt op de technologie van de Power5-processoren die is geïntroduceerd in de nieuwste servers van het iSeries-gamma. De Power5-technologie maakt het mogelijk op één server tegelijkertijd verschillende besturingssystemen te draaien door middel van logische partitionering (LPAR). Met LPAR wordt de server verdeeld in virtuele servers, die elk als zelfstandige server functioneren. Het toewijzen en "verhuizen" van resources als processor-capaciteit en geheugen kan dynamisch worden uitgevoerd, het verhuizen van andere hardware zoals netwerkkaarten e.d. vereist een reboot van de betrokken partities.
Elke partitie heeft een eigen besturingssysteem, waarbij kan worden gekozen tussen OS/400, AIX en GNU/Linux.
Alhoewel SQL al een flink aantal jaren beschikbaar is in OS/400, heeft het toch enige tijd geduurd voordat IBM de in OS/400 ingebouwde database engine DB2 durfde te noemen. Inmiddels is DB2 voor OS/400 (DB2/400) een zeer krachtige database-engine met volwaardige functionaliteit die voldoet aan het relationele model. Waar in het verleden databasetabellen via gecompileerde broncode tot stand kwamen, is dit inmiddels vervangen door een SQL-omgeving die zowel vanuit de 80x24 groene schermen, als vanuit Operations Navigator kan worden gebruikt. DB2/400 ondersteunt alle moderne technieken als triggers, constraints en een geavanceerde manier van transactieverwerking.
Het MI-concept dat al uit de S/38-tijd stamt is doorontwikkeld tot een vrijwel volledige virtualisatie van de hardware, door toepassing van de Technology Independent Machine Interface-laag (TIMI). TIMI is de laag die API's bevat naar de hardware componenten, en het toepassen van deze techniek maakt het mogelijk om verschillende besturingssystemen te installeren (OS/400, AIX en Linux). Bovendien kunnen de TIMI-API's rechtstreeks worden aangesproken, welke techniek door IBM wordt toegepast in de WebSphere Application Server-implementatie voor OS/400. Dit in tegenstelling tot WebSphere op andere platforms, waar functies uit het besturingssysteem moeten worden gebruikt.
Door toepassing van een techniek die achtereenvolgens File Server I/O Processor (FSIOP), integrated PC server (IPCS), integrated Netfinity server en tegenwoordig Integrated xSeries Server (IXS) of Integrated xSeries Adaptor (IXA) heet, heeft IBM het mogelijk gemaakt ook Windows servers te integreren in de iSeries-server. In een OS/400-partitie wordt daarvoor een virtueel schijvengebied gemaakt, dat is toe te wijzen aan een IXS of IXA. De IXS zelf is een insteekkaart met Intel processor, die kan worden gebruikt voor installatie van Windows server-edities. De IXA is de variant van deze functionaliteit, waarmee een externe xSeries-server kan worden gekoppeld aan de iSeries.
Voor de verbinding van de terminals werd in het verleden het twinax-protocol gebruikt. Alhoewel nog steeds ondersteund, wordt twinax eigenlijk niet meer toegepast, omdat het gebruik van terminals nagenoeg verdwenen is. Voor datacommunicatie werd door IBM gebruikgemaakt van SNA en Token Ring-techniek. Ook deze technieken zijn inmiddels door marktwerking naar de achtergrond geraakt, en vervangen door respectievelijk TCP/IP en ethernet.