Redigerer
Operativsystem
(avsnitt)
Hopp til navigering
Hopp til søk
Advarsel:
Du er ikke innlogget. IP-adressen din vil bli vist offentlig om du redigerer. Hvis du
logger inn
eller
oppretter en konto
vil redigeringene dine tilskrives brukernavnet ditt, og du vil få flere andre fordeler.
Antispamsjekk.
Ikke
fyll inn dette feltet!
== Historie == [[Fil:Two women operating ENIAC.gif|thumb|[[ENIAC]], en datamaskin ''uten'' operativsystem]] :''Utdypende artikkel: [[Operativsystemets historie]]'' Verdens første datamaskin, [[Charles Babbage]] mekaniske «analytiske maskin» fra [[19. århundre|1800-tallet]], brukte ikke et operativsystem. Babbage brukte mesteparten av sitt liv og sin formue på å få denne til å virke, men uten større 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 [[John Mauchly|William Mauchley]] i [[Amerikas forente stater|USA]] og [[Konrad Zuse]] i [[Tyskland]] lagde datamaskiner som fylte hele rom med titusenvis av [[radiorør|vakuumrør]]. Disse datamaskinene ble utviklet, bygget, programmert og driftet av den samme gruppen mennesker, og hadde heller ikke noe operativsystem å snakke om. All programmering skjedde i maskinspråk, ofte ved å plugge inn ledninger i riktige hull. Så å si alle problemene disse maskinene løste besto av enkel aritmetikk, som for eksempel å lage store tabeller av [[Sinussetningen|sinus]] og [[cosinus]]. På [[1950-årene|1950-tallet]] ble [[transistor]]en oppfunnet, og bildet endret seg radikalt. Nå ble det forskjellige mennesker som sto for henholdsvis utvikling, bygging, programmering og drifting av datamaskinene, og programmer ble lagret på [[hullkort]] som de forskjellige utviklerne kunne ta med seg ned i datarommet og kjøre. Programmeringsspråk som [[Fortran]] dukket også opp. Siden mye tid gikk med til å bytte hullkort, behandle utskrifter og lignende, så man raskt at et bedre system trengtes. Dette ble ''batchjobben'', hvor en stabel hullkort ble lest inn på magnetisk tape og kjørt etter som datamaskinen ble ledig. Ofte var det flere datamaskiner involvert, én som var god på å lese hullkort og skrive tape og én som var god på å kjøre aritmetikk (for eksempel henholdsvis [[IBM 1401]] og [[IBM 7094]]).<ref>Tanenbaum s. 6</ref> [[Fil:Batchjobb Norwegian.png|thumb|En typisk batchjobb under FMS]] En typisk jobb er illustrert i figuren til høyre. 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 kjøres, et sett kort med dataene som skulle brukes under kjøring og et kort som fortalte at stabelen med kort var slutt. Kontrollkortene kan sees på som en forgjenger til dagens [[skriptspråk]] og kommandotolker.<ref>Tanenbaum s. 6-7</ref> Operativsystemer på denne typen inkluderte [[Fortran Monitor System|FMS]] (Fortran Monitor System) og [[IBSYS]], [[International Business Machines|IBM]] sitt operativsystem for [[IBM 7094|7094]]-modellen.<ref>Tanenbaum s. 7</ref> På begynnelsen av [[1960-årene|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 første typen ble brukt innenfor vitenskap og beregninger, og den andre ble brukt av banker og forsikringsselskaper. Det var dyrt å ha to separate produktserier, og IBM løste dette ved å introdusere [[System/360]]. Denne ble levert i et antall forskjellige konfigurasjoner etter kundens behov, og skulle i teorien kunne kjøre samme programvaren uavhengig av akkurat hvilken konfigurasjon den hadde. 360 var den første serien datamaskiner som brukte [[integrert krets|integrerte kretser]], og hadde en stor fordel på ytelse i forhold til pris foran forrige generasjon datamaskiner, som var bygget opp av individuelle transistorer.<ref>Tanenbaum s. 8</ref> Operativsystemet [[OS/360]] var flere [[størrelsesorden]]er større enn forgjengerne, men løste oppgavene sin tross problemene størrelsen frembrakte med tanke på 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''. På datamaskiner som IBMs 7094 måtte datamaskinen gå «på tomgang» hvis en jobb ventet på 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 svært kostbart å drifte disse maskinene. Løsningen 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 krøll i de andres minneområder.<ref>Tanenbaum s. 9-10</ref> En annen teknikk var ''spooling'', som besto i av at man hentet inn jobbene på disk så snart hullkortene var brakt ned til datarommet. Dette medførte at en jobb kunne hentes inn i minnet så snart en annen jobb var ferdig. Dette eliminerte og mye bæring av tape fram og tilbake mellom lesemaskinen og regnemaskinen.<ref>Tanenbaum s. 9</ref> [[Fil:Televideo925Terminal.jpg|thumb|En tidlig terminal, her en [[Televideo 925]], med 4 kB RAM, 4 kB ROM og en [[RS-232]]-kobling til tjeneren. Nå ser man det som folk senere ville identifisert som en datamaskin, altså en boks som inneholder et tastatur og en skjerm.]] Disse to framskrittene førte til et problem for programmererne, som tidligere hadde hatt datamaskinen for seg selv da de kjørte jobbene sine, noe som gjorde feilfinning mye enklere. Nå var det ofte et flere timer mellom da jobben ble sendt ned til datasenteret og når utskriften kom tilbake. Dette gjorde at man utviklet systemer med flere [[Dataterminal|terminaler]], hvor hver programmerer kunne gi kommandoer til datamaskinen etter forgodtbefinnende. Siden en programmerer som feilsøker i et program gir kommandoer som kan utføres fort, altså ikke av typen «sortér en million felter i databasen», så fungerte dette greit. Dette ble kalt ''timesharing''.<ref>Tanenbaum s. 10</ref> Etter dette forsøkte man å 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 å sette ut i praksis, og medførte blant annet at [[General Electrics]] ga opp datamaskiner i det store og hele. MULTICS innførte dog en rekke ideer som ble brukt senere.<ref>Tanenbaum s. 10</ref> En annen trend på tiden var stadig kraftigere og billigere [[minidatamaskin|minimaskiner]] som for eksempel [[DEC PDP-1]] fra [[1961]]. Disse ble brukt til all mulig slags databehandling som ikke krevde ekstrem «nummerknusing», og ble veldig utbredte. Et resultat av dette var at [[Ken Thompson]], en av bidragsyterne på [[Bell Laboratories|Bell Labs]] til MULTICS, fant en ubrukt PDP-7 og skrev en redusert enbrukersversjon av MULTICS. Dette arbeidet ble senere spiren til [[Unix]].<ref>Tanenbaum s. 10</ref> Bruken av Unix tok av og spredde seg til alle typer maskiner. Etter hvert fordrev de alle de proprietære operativsystemene fra stormaskiner, med unntak av IBMs [[MVS]] og DECs [[OpenVMS]]. MVS overlevde på grunn av antall installerte maskiner som brukte det, og OpenVMS overlevde i bank- og finansverdenen på grunn av pålitelighet, sikkerhet og bevaring av data.<ref>[http://www.osdata.com/kind/kinds.htm osdata: Kinds of operating systems] (lest 25. juli 12:30)</ref> Etter hvert som integrerte kretser ble tatt i bruk i stor skala kom den [[personlig datamaskin|personlige datamaskinen]] på markedet. Arkitekturen på personlige datamaskiner var ikke ulik minimaskiner, men prisen var mye lavere. En annen forskjell var at de var beregnet på brukere uten solide datakunnskaper, og sånn sett måtte være brukervennlige.<ref>Tanenbaum s. 11</ref> [[Fil:Macintosh 128k transparency.png|thumb|Apple Macintosh 128k]] Tidlig på 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 også brukes på flere produsenters datamaskiner. Etter hvert som teknologien modnet så Commodore med sin [[Amiga]], [[Atari]] med sin [[Atari GEM|GEM]] og Apple med sine [[Apple Lisa|Lisa]] og [[Apple Macintosh|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.<ref>[http://www.osdata.com/kind/kinds.htm osdata: Kinds of operating systems] (lest 25. juli 12:30)</ref> Midt på [[1980-årene|1980-tallet]] kom de første ''[[datanett]]verkene'' og ''distribuerte operativsystemene''. Dette førte til at operativsystemene måtte være klar over at nettverkene og andre datamaskiner fantes, og tillate brukerne å logge inn på andre maskiner for å for eksempel flytte filer. Et distribuert operativsystem synes ikke for brukeren; det lar ham bruke en datamaskin med flere prosessorer som om det skulle være én 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.<ref>Tanenbaum s. 11-12</ref> [[GNU|GNU-prosjektet]] ble startet av aktivist og programmerer [[Richard Stallman]] og hadde som mål å skape et komplett og [[fri programvare|fritt]] alternativ til det proprietære [[UNIX]]-operativsystemet. Mens prosjektet var svært vellykket i å kopiere funksjonaliteten til ulike deler av UNIX, viste utviklingen av [[GNU Hurd]]-kjernen seg å være uproduktiv. I 1991 lanserte den finske informatikkstudenten [[Linus Torvalds]], i samarbeid med frivillige som samarbeider over Internett, den første versjonen av [[Linux-kjernen]]. Den ble snart slått sammen med [[user space]]-komponentene og [[systemprogramvaren]] til GNU for å danne et komplett operativsystem. Siden da har kombinasjonen av de to viktigste komponentene vanligvis blitt referert til som bare "Linux" av programvareindustrien, en navnekonvensjon som Stallman og [[Free Software Foundation]] fortsatt er motstandere av, de foretrekker navnet GNU/Linux. The Berkeley Software Distribution, kjent som [[Berkeley Software Distribution|BSD]], er et UNIX-derivat distribuert av University of California, Berkeley, som startet i 1970. Det er fritt distribuert og [[Portering|portert]] til mange minidatamaskiner, og har etterhvert også fått en fanskare for bruk på PC, i hovedsak som [[FreeBSD]], [[NetBSD]] og [[OpenBSD]]. === Tidslinje === <timeline> ImageSize = width:960 height:800 PlotArea = left:40 right:10 bottom:20 top:10 DateFormat = yyyy Period = from:1965 till:2022 TimeAxis = orientation:ver ScaleMajor = unit:year increment:3 start:1965 PlotData= bar:DOS color:red width:25 mark:(line,red) align:left fontsize:M at:1981 text:"[[MS-DOS]] 1.0" at:1983 text:"[[MS-DOS]] 2.0" at:1987 text:"[[Concurrent DOS]]" at:1990 text:"[[DR DOS]] 5.0" at:1991 text:"[[MS-DOS]] 5.0" at:1994 text:"[[PC-DOS]] 6.3" at:1997 text:"[[MS-DOS]] 7.1" at:2006 text:"[[FreeDOS]] 1.0" bar:Windows color:red width:25 mark:(line,red) align:left fontsize:M at:1985 text:"[[Windows]] 1.0" at:1987 text:"[[Windows]] 2.0" at:1992 text:"[[Windows]] 3.1" at:1993 text:"[[Windows NT|Windows NT 3.1]]" at:1994 text:"[[Windows NT|Windows NT 3.51]]" at:1995 text:"[[Windows 95]]" at:1996 text:"[[Windows NT|Windows NT 4]]" at:1998 text:"[[Windows 98]]" at:2000 text:"[[Windows 2000]]" at:2000 text:"[[Windows ME]]" at:2001 text:"[[Windows XP]]" at:2003 text:"[[Windows 2003]]" at:2004 text:"[[Windows XP#Service Pack 2|Windows XP SP2]]" at:2006 text:"[[Windows Vista]]" at:2009 text:"[[Windows 7]]" at:2015 text:"[[Windows 10]]" at:2021 text:"[[Windows 11]]" bar:Apple color:red width:25 mark:(line,red) align:left fontsize:M at:1978 text:"[[Apple DOS]] 3.1" at:1983 text:"[[Lisa OS]]" at:1984 text:"[[Mac System]] 1" at:1990 text:"[[Mac System]] 7" at:1997 text:"[[Mac OS]] 8" at:1998 text:"[[Darwin (operativsystem)|Darwin]] 0.1" at:1999 text:"[[Mac OS]] 9" at:2000 text:"[[Mac OS X]] Beta [[BSD]]" at:2001 text:"[[Mac OS X]] 10.0 [[BSD]]" at:2002 text:"[[Mac OS X]] 10.2 [[BSD]]" at:2003 text:"[[Mac OS X]] 10.3 [[BSD]]" at:2005 text:"[[Mac OS X]] 10.4 [[BSD]]" at:2007 text:"[[Mac OS X]] 10.5 [[BSD]]" at:2009 text:"[[Mac OS X]] 10.6 [[BSD]]" at:2012 text:"[[Mac OS X]] 10.7 [[BSD]]" at:2012 text:"[[Mac OS X]] 10.8 [[BSD]]" at:2013 text:"[[Mac OS X]] 10.9 [[BSD]]" at:2014 text:"[[Mac OS X]] 10.10 [[BSD]]" at:2015 text:"[[Mac OS X]] 10.11 [[BSD]]" at:2016 text:"[[Mac OS X]] 10.12 [[BSD]]" at:2017 text:"[[Mac OS X]] 10.13 [[BSD]]" bar:UNIX/UNIX-lika color:red width:25 mark:(line,red) align:left fontsize:M at:1969 text:"[[UNICS]]" at:1971 text:"[[UNIX]] V1" at:1972 text:"[[UNIX]] V2" at:1973 text:"[[UNIX]] V3 & V4" at:1974 text:"[[UNIX]] V5" at:1976 text:"[[UNIX]] V6" at:1977 text:"[[Eunice]]" at:1978 text:"USG 2.0" at:1979 text:"[[UNIX]] V7" at:1980 text:"XENIX OS" at:1981 text:"[[Unix System III]]" at:1982 text:"[[SunOS]] 1.0" at:1983 text:"[[Unix System V]]" at:1984 text:"[[QNX]]" at:1985 text:"[[UNIX]] V8" at:1986 text:"[[Plan 9]]" at:1987 text:"[[Minix]] 1.0" at:1988 text:"[[HP-UX]] 2.0" at:1989 text:"[[NeXTSTEP]] 1.0" at:1990 text:"[[Solaris (operativsystem)|Solaris]] 1" at:1991 text:"[[GNU/Hurd]]" at:1992 text:"[[Ultrix]] 4.3" at:1993 text:"[[Irix]] 5.3" at:1994 text:"[[AIX]] 4.1" at:1995 text:"[[UNIX|Unix Ware]] 2.0" at:1996 text:"[[Mach]]4 UK22" at:1997 text:"[[OPENSTEP]] 4.2" at:1998 text:"[[Unix System V|Unix Ware]] 7" at:1999 text:"[[UNIX|Unix Ware]] 7.1" at:2000 text:"[[UNIX|Unix Ware]] 7.1.1" at:2001 text:"[[AIX]] 5.1" at:2002 text:"[[Solaris (operativsystem)|Solaris]] 8" at:2003 text:"[[Minix]] 2.0.4" at:2004 text:"[[UNIX|Unix Ware]] 7.1.4" at:2005 text:"[[Solaris (operativsystem)|Solaris]] 10" at:2007 text:"[[AIX]] 6.1" bar:[[BSD]] color:red width:25 mark:(line,red) align:left fontsize:M at:1978 text:"[[BSD|1 BSD]]" at:1979 text:"[[BSD|2 BSD]]" at:1980 text:"[[BSD|4.0 BSD]]" at:1981 text:"[[BSD|4.1 BSD]]" at:1982 text:"[[BSD|2.8.1 BSD]]" at:1983 text:"[[BSD|4.2 BSD]]" at:1985 text:"[[BSD|2.9 BSD]]-Siscmo" at:1986 text:"[[BSD|4.3 BSD]]" at:1987 text:"[[BSD|2.10 BSD]]" at:1988 text:"[[BSD|4.3 BSD]] Tahoe" at:1989 text:"[[BSD|2.10.1 BSD]]" at:1990 text:"[[BSD|4.3 BSD]] Reno" at:1992 text:"[[BSD|386 BSD]]" at:1993 text:"[[FreeBSD]] 1.0" at:1994 text:"[[NetBSD]] 1.0" at:1995 text:"[[OpenBSD]] 1.0" at:1997 text:"[[BSD]]/OS 3.0" at:1998 text:"[[BSD|4.4 BSD]] Lite 2" at:2000 text:"[[FreeBSD]] 4.0" at:2001 text:"[[OpenBSD]] 3.0" at:2003 text:"[[FreeBSD]] 5.0" at:2004 text:"[[DragonFly BSD]] 1.0" at:2006 text:"[[FreeBSD]] 6.1" at:2007 text:"[[OpenBSD]] 4.1" bar:GNU/Linux color:red width:25 mark:(line,red) align:left fontsize:M at:1991 text:"[[Linux]] 0.01" at:1994 text:"[[Linux]] 1.1.0" at:1995 text:"[[Linux]] 1.3.0" at:1996 text:"[[Linux]] 2.0" at:1997 text:"[[Linux]] 2.0.28" at:1998 text:"[[Linux]] 2.0.34" at:1999 text:"[[Linux]] 2.2.0" at:2000 text:"[[Linux]] 2.2.14" at:2001 text:"[[Linux]] 2.4.0" at:2002 text:"[[Linux]] 2.4.18" at:2003 text:"[[Linux]] 2.6.0" at:2004 text:"[[Linux]] 2.6.1" at:2005 text:"[[Linux]] 2.6.11" at:2006 text:"[[Linux]] 2.6.15" at:2007 text:"[[Linux]] 2.6.20" at:2008 text:"[[Linux]] 2.6.24" at:2009 text:"[[Linux"]] 2.6.29" at:2010 text:"[[Linux"]] 2.6.33" at:2011 text:"[[Linux"]] 3.0" bar:Övriga color:red width:25 mark:(line,red) align:left fontsize:M at:1969 text:"[[Multics]]" at:1975 text:"[[DEC Starlet]]" at:1976 text:"[[CP/M]]" at:1980 text:"[[OpenVMS|VMS]]" at:1981 text:"[[Xerox Star]]" at:1985 text:"[[AmigaOS]]" at:1987 text:"[[OS/2]] 1.0" at:1988 text:"[[VMS]] 5.0" at:1990 text:"[[BeOS]] 1.0" at:1991 text:"[[OpenVMS|VMS]] blir [[OpenVMS]]" at:1993 text:"[[OpenVMS]] 6.0" at:1994 text:"[[OS/2 Warp]] 3.0" at:1995 text:"[[OpenVMS]] 7.0" at:1996 text:"[[OS/2 Warp]] 4.0" at:2001 text:"[[eComStation]] 1.0" at:2003 text:"[[OpenVMS]] 8.0" at:2006 text:"[[OpenVMS]] 8.3" at:2007 text:"[[Syllable]] 0.6.3" at:2008 text:"[[i5/OS | i]] 6.1" at:2011 text:"[[i5 /OS | i]] 8.2" </timeline> Merk at tabellen mangler de fleste operativsystemer for [[stormaskin]]er, for eksempel ICL George, IBM MFT, IBM MVS, IBM VM, Univac, Tandem, og minidatamaskiner som Digital PDP, etc. Flere av disse har nå mest historisk betydning, da moderne trender er å kjøre Unix/Linux på stor- och [[superdatamaskin]]er.
Redigeringsforklaring:
Merk at alle bidrag til Wikisida.no anses som frigitt under Creative Commons Navngivelse-DelPåSammeVilkår (se
Wikisida.no:Opphavsrett
for detaljer). Om du ikke vil at ditt materiale skal kunne redigeres og distribueres fritt må du ikke lagre det her.
Du lover oss også at du har skrevet teksten selv, eller kopiert den fra en kilde i offentlig eie eller en annen fri ressurs.
Ikke lagre opphavsrettsbeskyttet materiale uten tillatelse!
Avbryt
Redigeringshjelp
(åpnes i et nytt vindu)
Denne siden er medlem av 4 skjulte kategorier:
Kategori:1000 artikler enhver Wikipedia bør ha
Kategori:Anbefalte artikler
Kategori:Artikler med offisielle lenker og uten kobling til Wikidata
Kategori:Artikler uten offisielle lenker fra Wikidata
Navigasjonsmeny
Personlige verktøy
Ikke logget inn
Brukerdiskusjon
Bidrag
Opprett konto
Logg inn
Navnerom
Side
Diskusjon
norsk bokmål
Visninger
Les
Rediger
Rediger kilde
Vis historikk
Mer
Navigasjon
Forside
Siste endringer
Tilfeldig side
Hjelp til MediaWiki
Verktøy
Lenker hit
Relaterte endringer
Spesialsider
Sideinformasjon