IBM i
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 iis eenbesturingssysteemvanIBMvoor hetIBM Power Systems-platform. Het besturingssysteem is geëvolueerd uitCPFvoor deS/38,en heette achtereenvolgensOS/400,i5/OSen sinds april 2008 IBM i.
Geschiedenis
[bewerken|brontekst bewerken]S/38 en CPF
[bewerken|brontekst bewerken]In 1978 kwamS/38van IBM uit, met als besturingssysteemControl 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 inRochester(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:
- Een geïntegreerd relationeeldatabase-systeem (alhoewel de moderne definitie van een database hierop niet toepasbaar is) bestaande uit fysieke bestanden die de daadwerkelijke data bevatten, en logische bestanden waarmee indexen en views konden worden gemaakt. Door het ontbreken vanSQLwerd elk bestand, net als een programma, gecodeerd in broncode, en vertaald naar een machine-object.
- Eenbeveiligingsmodelwaarbij elke gebruiker beschikking kreeg over gebruikersnaam en wachtwoord, en op basis van roldefinities beschikking kreeg over toegang tot objecten uit het besturingssysteem. Dit beveiligingsmodel werd al snel erkend als een van de sterktepunten van dit besturingssysteem, en was voor veel bedrijven een van de motivaties om S/38 en CPF te gaan gebruiken.
- Faciliteiten voordatacommunicatie,in die tijd uiteraard vooral bestaande uit configuratiemogelijkheden voormodemverbindingen.Alhoewel alle faciliteiten aanwezig waren, was het configureren vrij ingewikkeld en omslachtig, wat door velen als kritiekpunt werd gebruikt.
- Een moderne aanpak van interactieve programmatuur. Veel computersystemen uit die tijd waren pure batch-georiënteerde gegevensverwerkers, waar alleen met veel pijn en moeite programmatuur voor kon worden gemaakt die scherminteractie toestond. Soltis' team had dat onderkend, en had al in de eerste versie van CPF de scheiding aangebracht tussen logica en presentatie. De presentatie werd ondergebracht in eendisplayfile,en het achterliggende programma kon de interactie afhandelen door eenvoudig datarecords te lezen en te schrijven naar de displayfile. HetGUI-fenomeen was nog niet uitgevonden, en de schermen waren dus karaktergeoriënteerd, in een opbouw met 24 regels van 80 karakters.
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 dieMicrosofttegenwoordig ten deel valt met betrekking tot het integreren van allerlei functionaliteit inWindowswas dus in 1978 al van toepassing op IBM.
Bovendien was de fundamentele architectuur vernieuwend, door het toepassen van eenmachine 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 datsingle level storagewerd 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 programmeertalenRPGenCOBOL.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.
S/36 en SSP
[bewerken|brontekst bewerken]Om ook de markt te bedienen die op zoek was naar een eenvoudig te beheren computersysteem bracht IBM in1983deS/36,metSSPals 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.
AS/400 en OS/400
[bewerken|brontekst bewerken]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 alsAS/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 eenemulatiein 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.
Moderne technieken
[bewerken|brontekst bewerken]Sinds het omarmen vanGNU/LinuxenJava-technologie is OS/400 weer in de lift. IBM positioneert OS/400 als het besturingssysteem dat bij voorkeur voorWebSphereenJ2EEwordt gebruikt. Al een aantal jaren is er een grafische interface voor beheertaken in het productOperations Navigator,waarmee met demuishet beheer over de machine kan worden gevoerd.
De meest recente versie van ditbesturingssysteemheeft de naam i5/OS meegekregen en steunt op de technologie van dePower5-processorendie is geïntroduceerd in de nieuwsteserversvan het iSeries-gamma. De Power5-technologie maakt het mogelijk op één server tegelijkertijd verschillende besturingssystemen te draaien door middel vanlogische 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,AIXenGNU/Linux.
DB2/400 en SQL
[bewerken|brontekst bewerken]AlhoewelSQLal een flink aantal jaren beschikbaar is in OS/400, heeft het toch enige tijd geduurd voordat IBM de in OS/400 ingebouwde database engineDB2durfde 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 gecompileerdebroncodetot 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 alstriggers,constraintsen een geavanceerde manier van transactieverwerking.
Machine Interface
[bewerken|brontekst bewerken]Het MI-concept dat al uit de S/38-tijd stamt is doorontwikkeld tot een vrijwel volledige virtualisatie van de hardware, door toepassing van deTechnology Independent Machine Interface-laag (TIMI). TIMI is de laag dieAPI's bevat naar de hardware componenten, en het toepassen van deze techniek maakt het mogelijk om verschillende besturingssystemen te installeren (OS/400,AIXenLinux). Bovendien kunnen de TIMI-API's rechtstreeks worden aangesproken, welke techniek door IBM wordt toegepast in deWebSphere Application Server-implementatie voor OS/400. Dit in tegenstelling tot WebSphere op andere platforms, waar functies uit het besturingssysteem moeten worden gebruikt.
Windows-integratie
[bewerken|brontekst bewerken]Door toepassing van een techniek die achtereenvolgensFile Server I/O Processor (FSIOP),integrated PC server (IPCS),integrated Netfinity serveren tegenwoordigIntegrated xSeries Server(IXS) ofIntegrated xSeries Adaptor(IXA) heet, heeft IBM het mogelijk gemaakt ookWindowsservers 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 metIntelprocessor, die kan worden gebruikt voor installatie vanWindowsserver-edities. De IXA is de variant van deze functionaliteit, waarmee een externe xSeries-server kan worden gekoppeld aan de iSeries.
Netwerken
[bewerken|brontekst bewerken]Voor de verbinding van determinalswerd in het verleden hettwinax-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 vanSNAenToken Ring-techniek. Ook deze technieken zijn inmiddels door marktwerking naar de achtergrond geraakt, en vervangen door respectievelijkTCP/IPenethernet.