Dark Mode

Hopp til innhold

Operativsystemets historie

Fra Wikipedia, den frie encyklopedi
ENIAC, en datamaskin uten operativsystem

Operativsystemets historie er naert sammenvevet med datamaskinens historie.

Forste generasjon (1945-1955)

[rediger | rediger kilde]

Verdens forste datamaskin, Charles Babbage mekaniske <> fra 1800-tallet, brukte ikke et operativsystem. Babbage brukte mesteparten av sitt liv og sin formue pa a fa denne til a virke, men uten storre suksess, da datidens mekaniske elementer ikke hadde presisjonen som krevdes. Etter dette var det liten utvikling fram til rundt andre verdenskrig, hvor blant annet Howard Aiken, John von Neumann, J. Presper Eckert og William Mauchley i USA og Konrad Zuse i Tyskland lagde datamaskiner som fylte hele rom med titusenvis av vakuumror. Disse datamaskinene ble utviklet, bygget, programmert og driftet av den samme gruppen mennesker, og hadde heller ikke noe operativsystem a snakke om. All programmering skjedde i maskinsprak, ofte ved a plugge inn ledninger i riktige hull. Sa a si alle problemene disse maskinene loste besto av enkel aritmetikk, som for eksempel a lage tabeller av trigonometriske funksjoner[1]

Andre generasjon (1955-1965)

[rediger | rediger kilde]

Pa 1950-tallet ble transistoren oppfunnet, og bildet endret seg radikalt. Na ble det forskjellige mennesker som stor for henholdsvis utvikling, bygging, programmering og drifting av datamaskinene, og programmer ble lagret pa hullkort som de forskjellige utviklerne kunne ta med seg ned i datarommet og kjore. Programmeringssprak som Fortran dukket ogsa opp. Siden mye tid gikk med til a bytte hullkort, behandle utskrifter og lignende, sa man raskt at et bedre system trengtes. Dette ble batchjobben, hvor en stabel hullkort ble lest inn pa magnetisk tape og kjort etter som datamaskinen ble ledig. Ofte var det flere datamaskiner involvert, en som var god pa a lese hullkort og skrive tape og en som var god pa a kjore aritmetikk (for eksempel henholdsvis IBM 1401 og IBM 7094).[1]

En typisk batchjobb under FMS

En typisk jobb er illustrert i figuren til hoyre. Den besto av et input-kort, et kort med instruksjoner om hva som skulle lastes, en rekke kort som inneholdt programmet, et kort som fortalte datamaskinen at programmet som akkurat var kompilert skulle lastes i minnet, et kort som fortalte datamaskinen at programmet skulle kjores, et sett kort med dataene som skulle brukes under kjoring og et kort som fortalte at stabelen med kort var slutt. Kontrollkortene kan sees pa som en forgjenger til dagens skriptsprak og kommandotolker.[1]

Operativsystemer pa denne typen inkluderte FMS (Fortran Monitor System) og IBSYS, IBM sitt operativsystem for 7094-modellen.[1]

Tredje generasjon (1965-1980)

[rediger | rediger kilde]

Pa begynnelsen av 1960-tallet hadde de fleste produsenter to sett produkter; en datamaskinserie for bruk til vitenskapelig tallknusing og en datamaskinserie for bruk til lesing og sortering av data. Denne forste typen ble brukt innenfor vitenskap og beregninger, og den andre ble brukt av banker og forsikringsselskaper. Det var dyrt a ha to separate produktserier, og IBM loste dette ved a introdusere System/360. Denne ble levert i et antall forskjellige konfigurasjoner etter kundens behov, og skulle i teorien kunne kjore samme programvaren uavhengig av akkurat hvilken konfigurasjon den hadde. 360 var den forste serien datamaskiner som brukte integrerte kretser, og hadde en stor fordel pa ytelse i forhold til pris foran forrige generasjon datamaskiner, som var bygget opp av individuelle transistorer.[1]

Operativsystemet OS/360 var flere storrelsesordener storre enn forgjengerne, men loste oppgavene sin tross problemene storrelsen frembrakte med tanke pa antall feil og vedlikeholdet som krevdes. Dette systemet kan betraktes som en tredje generasjons operativsystem, og det brukte flere teknikker som manglet i andre generasjons produkter som FMS. Den viktigste av disse var multiprogrammering. Pa datamaskiner som IBMs 7094 matte datamaskinen ga <> hvis en jobb ventet pa noen eksterne enheter. I tunge regneoperasjoner var dette relativt sjelden, mens brukere som banker som behandlet mye eksterne data opplevde at prosessoren sto ledig 80-90% av tiden. Dette var ikke holdbart, da det var svaert kostbart a drifte disse maskinene. Losningen var da at minnet ble delt i flere partisjoner, slik at man kunne ha flere jobber inne samtidig. Spesiell maskinvare ble utviklet til tredjegenerasjonssystemer slik at jobbene ikke laget kroll i de andres minneomrader.[1]

En annen teknikk var spooling, som besto i av at man hentet inn jobbene pa disk sa snart hullkortene var brakt ned til datarommet. Dette medforte at en jobb kunne hentes inn i minnet sa snart en annen jobb var ferdig. Dette eliminerte og mye baering av tape fram og tilbake mellom lesemaskinen og regnemaskinen.[1]

En tidlig terminal, her en Televideo 925, med 4 kB RAM, 4 kB ROM og en RS-232-kobling til tjeneren. Na ser man det som folk senere ville identifisert som en datamaskin, altsa en boks som inneholder et tastatur og en skjerm.

Disse to framskrittene forte til et problem for programmererne, som tidligere hadde hatt datamaskinen for seg selv da de kjorte jobbene sine, noe som gjorde feilfinning mye enklere. Na var det ofte et flere timer mellom da jobben ble sendt ned til datasenteret og nar utskriften kom tilbake. Dette gjorde at man utviklet systemer med flere terminaler, hvor hver programmerer kunne gi kommandoer til datamaskinen etter forgodtbefinnende. Siden en programmerer som feilsoker i et program gir kommandoer som kan utfores fort, altsa ikke av typen <>, sa fungerte dette greit. Dette ble kalt timesharing.[1]

Etter dette forsokte man a bygge enorme systemer hvor hundrevis av brukere hadde terminaler. Et eksempel er MULTICS (MULTIplexed Information and Computing Service), som skulle tilby datakraft til alle i Boston. Dette konseptet var vanskelig a sette ut i praksis, og medforte blant annet at General Electrics ga opp datamaskiner i det store og hele. MULITCS innforte dog en rekke ideer som ble brukt senere.[1]

En annen trend pa tiden var stadig kraftigere og billigere minimaskiner som for eksempel DEC PDP-1 fra 1961. Disse ble brukt til all mulig slags databehandling som ikke krevde ekstrem <>, og ble veldig utbredte. Et resultat av dette var at Ken Thompson, en av bidragsyterne pa Bell Labs til MULTICS, fant en ubrukt PDP-7 og skrev en redusert enbrukersversjon av MULTICS. Dette arbeidet ble senere spiren til Unix.[1] Bruken av Unix tok av og spredde seg til alle typer maskiner. Etter hvert fordrev de alle de proprietaere operativsystemene fra stormaskiner, med unntak av IBMs MVS og DECs OpenVMS. MVS overlevde pa grunn av antall installerte maskiner som brukte det, og OpenVMS overlevde i bank- og finansverdenen pa grunn av palitelighet, sikkerhet og bevaring av data.[2]

Fjerde generasjon (1980-)

[rediger | rediger kilde]
Apple Macintosh 128k

Etter hvert som integrerte kretser ble tatt i bruk i stor skala kom den personlige datamaskinen pa markedet. Arkitekturen pa personlige datamaskiner var ikke ulik minimaskiner, men prisen var mye lavere. En annen forskjell var at de var beregnet pa brukere uten solide datakunnskaper, og sann sett matte vaere brukervennlige.[1]

Tidlig pa 1980-tallet kom Commodore og Apple med OSer med et til dels grafisk brukergrensesnitt, henholdsvis for Commodore PET og Apple II. Digital Research kom med CP/M, et enkelt operativsystem for forretningsbruk - men dette kunne ogsa brukes pa flere produsenters datamaskiner. Etter hvert som teknologien modnet sa Commodore med sin Amiga, Atari med sin GEM og Apple med sine Lisa og Macintosh, og alle disse hadde fullt utbygde grafiske brukergrensesnitt. Det som i dag er programvaregiganten Microsoft kom etter hvert med MS-DOS, sterkt influert av CP/M og Windows, sterkt influert av Macintosh. De forskjellige konkurrentene kom etter hvert i finansielle problemer, og Microsoft dominerer i dag markedet for personlige datamaskiner.[2]

Midt pa 1980-tallet kom de forste datanettverkene og distribuerte operativsystemene. Dette forte til at operativsystemene matte vaere klar over at nettverkene og andre datamaskiner fantes, og tillate brukerne a logge inn pa andre maskiner for a for eksempel flytte filer. Et distribuert operativsystem synes ikke for brukeren; det lar ham bruke en datamaskin med flere prosessorer som om det skulle vaere en enkelt prosessor i en tradisjonell arkitektur. Dette siste konseptet er det mest kompliserte av de to, og krever nye paradigmer, ikke bare noen kodelinjer ekstra.[1]

Referanser

[rediger | rediger kilde]
  1. ^ a b c d e f g h i j k l Andrew S. Tanenbaum: Modern operating systems, Prentice Hall 1992, ISBN 0-13-595752-4
  2. ^ a b osdata: Kinds of operating systems (lest 25. juli 12:30)

Eksterne lenker

[rediger | rediger kilde]