IBM System i er en serie af IBM-servere. IBM i -operativsystemet blev skabt til denne serie . Serien blev oprettet den 21. juli 1988 under navnet AS / 400 , omdøbt til eServer iSeries i 2000 og derefter til System i (siden 2006).
I april 2008 annoncerede IBM integrationen af System i- og System p- platformene under IBM Power Systems -mærket , der understøtter IBM i OS (tidligere også kaldet i5/OS og OS/400), AIX og Linux .
IBM System/38 blev introduceret i november 1980 som en minicomputer til erhvervsbrugere. I 1988 blev den erstattet af AS/400-computeren. Det brugte IBM i object-operativsystemet (oprindeligt kaldet OS/400 i analogi med OS/360 og OS/2 , derefter omdøbt til i5/OS).
Nøglefunktioner: DB2/400 DBMS -drift, menubaseret grænseflade, understøttelse af flerbrugerarbejde, understøttelse af IBM 5250-terminaler, printere. Moderne versioner understøtter kørsel af webapplikationer (baseret på IBM WebSphere eller PHP/MySQL) [1] .
Unix-lignende operativsystemer bruger "alt er en fil"-paradigmet, mens System i bruger "alt er en fil"-paradigmet. Operativsystemet giver en affaldsopsamler og objektpersistens. Et Unix-lignende filsystem emuleres ved hjælp af det integrerede filsystem . [2] En version af den virtuelle Java-maskine er blevet implementeret.
IBM System i -platformen udvider det objektorienterede System/38 -system med den indlejrede relationsdatabase IBM DB2.
En af funktionerne ved IBM System i-platformen er brugen af TIMI -instruktionssættet (Technology Independent Machine Interface) på højt niveau , som gør det muligt for programmer at være bærbare, mens de stadig drager fordel af mere moderne hardware og software uden rekompilering.
TIMI er et virtuelt instruktionssæt uafhængigt af CPU'ens faktiske instruktionssæt. Applikationer, der kører i brugertilstand, kan indeholde både TIMI-maskinkoder og processorspecifikke maskinkoder. Konceptuelt ligner systemet arkitekturen på virtuelle maskiner såsom Smalltalk , Java , .NET . Den største forskel fra dem er den dybe integration af TIMI i AS/400-arkitekturen, så applikationer er bærbare mellem System i-systemer med forskellige mikroprocessorer.
Særligt bemærkelsesværdigt er, at i modsætning til andre virtuelle maskiner, der fortolker virtuelle instruktioner, når softwaren starter op, fortolkes TIMI-instruktioner ikke. Ved kompilering af software gemmes både maskinkoden for en bestemt processor og TIMI-koden i en objektfil. Hvis en applikation kompileret til de originale 48-bit CISC AS/400-processorer køres på et system med en nyere RISC-processor , såsom en 64-bit PowerPC , vil operativsystemet ignorere den gamle processors maskinkode og oversætte [3] den TIMI kode ind i nye processorinstruktioner før start.
For AS/400 blev programmeringssprogene assembler , RPG , C , C++ , Pascal , Java , EGL , Perl , Smalltalk , COBOL , SQL , BASIC , PHP , PL/I , Python , REXX implementeret .