Avaa päävalikko

Unix (tavaramerkitty kirjoitusasu UNIX) on käyttöjärjestelmä, jonka kehityksen aloittivat AT&T:n Bell Labsin työntekijät, ml. Ken Thompson ja Dennis Ritchie vuonna 1969.[1][2] Unixia on sanottu kaikkien aikojen vaikutusvaltaisimmaksi käyttöjärjestelmäksi.[1][3]

Unix
Kehittäjä Bell Labs
Ohjelmointikielet Assembly, C

UNIX®-tavaramerkin omistaa The Open Group, ja sen ylläpitämän Single UNIX Specification -standardin täyttäviksi sertifioidut käyttöjärjestelmät saavat käyttää tätä nimeä. UNIX 03 -sertikaatti on vuonna 2019 AIX, HP-UX, macOS ja Solaris -käyttöjärjestelmillä.[4]

Nykyään on olemassa useita alkuperäisestä Unixista polveutuvia käyttöjärjestelmiä, joista käytetään nimitystä Unix tai Unixin kaltaiset käyttöjärjestelmät. Toisinaan ”unixeihin” luetaan myös Linux, vaikkei se polveudu alkuperäisestä Unix-käyttöjärjestelmästä. Unix-sukuiset käyttöjärjestelmät ovat perinteisesti olleet suosittuja monen käyttäjän keskuskoneissa, palvelimissa ja tehokkaissa työasemakoneissa. 1990-luvulta alkaen niitä on käytetty yhä enemmän myös harrastajien ja peruskäyttäjien keskuudessa tavallisilla IBM PC:n kaltaisilla koneilla ilmaisten ja vapaiden varianttien kuten Linuxin, NetBSD:n ja FreeBSD:n ilmestymisen myötä.

Sisällysluettelo

HistoriaMuokkaa

 
Yksinkertaistettu kaavio Unixien sukupuusta

Unixin pääarkkitehteina toimivat Ken Thompson ja Dennis Ritchie, joista jälkimmäinen kehitti myös C-ohjelmointikielen.[1] Kehitystyön aikana he olivat töissä AT&T-yhtiön tutkimuskeskuksen Bell Labsin Computing Sciences Research Centerissä.[2][5] Vuodesta 1964 alkaen osaston henkilöt työskentelivät Multics-projektin parissa.[2] Unixin varhainen versio tunnettiin myös nimellä UNICS (lyhenne sanoista Un-multiplexed Information and Computing Service).[3][6] Nimeä ehdotti Brian Kernighan 1970-luvun puolella sanaleikkinä Multicsista.[7][8]

1960-luvulla MIT, AT&T:n Bell Labs ja General Electric (GE) kehittivät Multics-käyttöjärjestelmää GE-645 -suurtietokoneelle, joka maksoi vuonna 1965 lähes yhtä paljon kuin Boeing 737.[1] Multicsin parissa Bell Labsilla työskentelivät Rudd Canaday, Ken Thompson, Dennis Ritchie ja Malcolm Douglas McIlroy.[1] Multics-projektin tavoitteena oli laskentakapasiteetin saatavuus kuten sähkön tai puhelimen saatavuus.[1] Järjestelmä oli myöhässä, ylittänyt budjetin ja ei täyttänyt odotettua toiminnallisuutta.[1] Osasyyksi ongelmiin mainitaan virheelliset tuhansien sivujen määrittelyt ja GE-645:n hankala arkkitehtuuri.[1] Kehitykseen vaikuttaneilla osapuolilla oli myös erilaisia tavoitteita: GE halusi "vahvistaa tuotelinjaa", MIT halusi "kehittää viimeisintä tekniikkaa" ja Bell Labs halusi hyvän ympäristön työtä varten.[9] Käyttöjärjestelmä pääsi lopulta myyntiin asti, mutta sen suorituskyky oli huono.[10] AT&T päätti lähteä projektista ja siirtää voimavaransa muualle.[11] Pian projektin päättymisen jälkeen GE-645 vietiin pois.[1][12] Bell Labsin ryhmä alkoi etsiä vaihtoehtoja yhteistyöhön soveltuvalle "aikajakavalle" järjestelmälle.[1] Thompson oli kirjoittanut Multicsille pelin nimeltä ”Space Travel”, muunsi sen Fortranille ja siirsi pelin GECOS-käyttöjärjestelmälle.[7][3] Hän kuitenkin huomasi, että peli oli liian hidas ja sen ajaminen vei 75 dollarin arvosta tietokoneaikaa.[3] Thompson löysi akustiikkalaboratorion käyttämättömän DEC PDP-7 -koneen, jossa oli hyvä grafiikkanäyttö ja kirjoitti pelin uudelleen assembly-kielellä sille.[1][13] Peliä kehitettiin GE-635 -tietokoneella ja käännettiin GECOS:illa, josta se siirrettiin paperinauhoilla PDP-7:lle.[12]

Kesällä 1969 Thompson, Ritchie ja Canaday suunnittelivat tiedostojärjestelmän perusteet tiedostojen hallintaan.[1] Eräajoon suunniteltujen tietokoneiden ei yleensä tarvinnut säilöä tietoja pysyvästi, joka aiheutti haasteita.[1] Elokuussa Thompson kehitti assemblerin, tiedostoeditorin ja ytimen.[1] Thompson teki myös karkean komentotulkin ja yksinkertaisia komentoja (vastaavia kuten Unixin rm, cat ja cp -komennot).[12] Tämän jälkeen järjestelmässä itsessään pystyi kääntämään ohjelmia.[12] Thompson suunnitteli ytimen yksinkertaiseksi, jossa ei ollut komentokieltä kuten Multicsissa vaan se käsiteltiin yhtenä käyttäjäsovelluksena.[9][14] Ytimessä ei ollut tiedostomuotoja vaan tiedostot olivat vain yksiulotteinen joukko tavuja.[9][14] Vuonna 1969 Doug McIlroy oli tehnyt järjestelmän ensimmäisen korkean tason kielen, joka oli toteutus R. M. McCluren TMG:stä (ohjelmointikielen kääntäjän kirjoittamiseen tarkoitettu kieli, "kääntäjän kääntäjä").[12][15][7] Syyskuussa 1969 Bell Labsin tietokoneosastolla oli toimiva monen käyttäjän aikajakava järjestelmä, johon osastolla ei vielä ollut massamuistia.[1]

Toukokuussa 1970 tilattiin PDP-11 -minitietokone 65 000 dollarin hintaan: perusteeksi hankinnalle kerrottiin työkalujen kehittäminen tekstin editointiin ja muokkaamiseen.[16][3] Myös akustiikkalaboratorion Max Mathews lupasi alkurahaa tietokoneen hankintaan.[17] Ensimmäinen Unixin hankkinut asiakas oli Bell Labs Patent Department, joka käsitteli patenttihakemuksia.[16] Myöhemmin käyttöjärjestelmästä välittyi tieto muille PDP-11 -konetta käyttäville, jotka pyysivät sitä myös omaan käyttöönsä.[1] Käyttöjärjestelmää välitettiin halukkaille postituskulujen ja tallennusmedian hinnalla.[1]

Ensimmäinen Unix Programmer's Manual on päivätty 3. marraskuuta 1971.[18] Kirjoittamisen aikaan järjestelmä oli jo siirretty ("kirjoitettu uudelleen") PDP-7:ltä PDP-11:lle, jolloin se oli vielä tehty assemblyllä.[18]

Thompson aloitti järjestelmän siirtämisen Fortranille, mutta luopui siitä nopeasti.[12] Tämän jälkeen Thompson kirjoitti B-ohjelmointikielen perustuen BCPL-kieleen (tai toisen teorian mukaan Thompsonin Bon-kieleen).[12] Ritchie lisäsi B:hen tyyppijärjestelmän, ja antoi sille aluksi nimen NB ("New B") ja alkoi kirjoittaa kääntäjää.[12] Kesällä 1972 Unix kirjoitettiin uudelleen NB:stä kehitetyllä C-kielellä.[19][20] Vuoden kuluessa C:tä käytettiin myös Honeywell 6000 -tietokoneilla ja pian sen jälkeen IBM 310 -sarjan koneilla.[20] Käyttöjärjestelmien välisten erojen vaikutus ohjelmien siirtämiseen johti tuolloin radikaaliin ajatukseen siirtää myös itse käyttöjärjestelmä eri laitteistolle vähentäen eroja.[20]

Unix-putkien kehitys johti useisiin toisiinsa liitettävien työkaluohjelmien kuten grep ja sed kehittämiseen, joka vaikutti koko käyttöjärjestelmän filosofiaan.[21][22][5][23]

Ritchien ja Thompsonin kirjoitus käyttöjärjestelmästä julkaistiin Communications of the ACM -lehdessä heinäkuussa 1974.[3][24] Paperin mukaan ensimmäinen versio Unixista oli PDP-7 ja PDP-9 tietokoneille, toinen versio PDP-11/20 -tietokoneelle ja kolmas PDP-11/40 ja PDP-11/45 -tietokoneille.[24] Paperissa mainittiin sen olevan usean käyttäjän käyttöjärjestelmä, jossa on ominaisuuksia, joita on harvoin suuremmissakaan käyttöjärjestelmissä: muun muassa hierarkinen tiedostojärjestelmä ja kyky käynnistää asynkronisia prosesseja.[24] Hierarkinen tiedostojärjestelmä mahdollisti tiedostojen sijoittamisen hakemistoihin.[3] Paperissa mainittiin myös, että tehokas käyttöjärjestelmä ei tarvitse olla kallis laitteilta tai ihmisten työmäärältä: käyttöjärjestelmää voitiin suorittaa jopa alle 40 000 dollarin laitteistolla ja alle kaksi miestyövuotta käytettiin järjestelmäohjelmiston kehittämiseen.[24] Paperin päivitetyssä versiossa mainittiin kolmannen version tukevan moniohjelmointia, lueteltiin lisää yhteensopivia PDP-11 versioita ja kuvattiin neljäs versio, jota voitiin käyttää Interdata 8/32 -tietokoneella.[25]

AT&T oli tehnyt vuonna 1956 sopimuksen, joka esti sitä myymästä tuotteita, jotka eivät suoraan liittyneet puhelimiin tai telekommunikaatioon johtuen monopolisäädännöstä.[3] Tästä johtuen käyttöjärjestelmää ei voitu myydä tuotteena ja AT&T päätyi julkaisemaan lähdekoodit kaikille sitä pyytäville nimellistä maksua vastaan.[3] AT&T ei voinut myöskään tarjota tukea käyttöjärjestelmälle, joka johti varhaisten käyttäjien perustamiin käyttäjäryhmiin kuten Usenix.[3]

Unix oli ensimmäisiä käyttöjärjestelmiä, joissa käyttöliittymä oli erillinen itse käyttöjärjestelmästä.[26] Vuonna 1975 Bell Labsille tullut Stephen Bourne kehitti ohjelmoitavan Bourne shell -komentotulkin korvaamaan Thompsonin yksinkertaisemman komentotulkin.[27] Ensimmäinen laajalti käytetty vaihtoehtoinen komentotulkki oli C shell.[26]

1970-luvun puolivälissä Thompson lähti hetkeksi Bell Labsilta ja opetti Kalifornian yliopiston Berkeleyn kampuksella (UCB).[28] Berkeleyssä otettin tuolloin käyttöön versio 6 Unix (V6), joka oli ensimmäinen laajasti Bell Labsin ulkopuolelle levinnyt.[29] Berkeleyssä oli juuri saatu PDP-11, johon Thompson auttoi asentamaan v6 Unixin.[30] AT&T:llä oli käytössä jatkuvasti kehittyviä versioita, joissa tärkeitäkin korjauksia, kun taas muualla oli käytettävä julkaisuversioita (v4, v5, v6..).[31] Tästä sai alkunsa "50 muutosta", jonka AT&T ei halunnut leviävän tiukan "ei tukea" -säännön johdosta.[31] AT&T:n versio 7 julkaistiin vuonna 1979 ja siihen sisältyi UCB:n tekemiä muutoksia.[29] Berkeleyssä sai alkunsa tutkijoiden ja opiskelijoiden tekemät muutokset AT&T:n Unixiin, joka aluksi levisi nimellä "Berkeley Unix" ja myöhemmin täysi Unix-julkaisu nimeltä Berkeley Software Distribution (BSD).[32][33][34]Bill Joyn ja muiden opiskelijoiden tekemät muutokset levisivät tutkijapiireissä moneen yliopistoon.[32][34] UCB perusti Computer Systems Research Groupin DARPAn rahoituksella kehittämään Unixia.[35] CSRG teki suuren osan TCP/IP:n kehitystyöstä.[36] Australiassa opettava professori John Lions julkaisi vuonna 1977 sen ajan kuuluisan kirjan A Commentary on the Unix Operating System, joka sisälsi myös järjestelmän täydellisen lähdekoodin.[3] Kirjaa käytettiin materiaalina käyttöjärjestelmiin liittyvillä kursseilla ympäri maailman.[2] Vuonna 1979 AT&T kuitenkin puuttui kirjan levittämiseen.[3]

Vuosina 1976–1977 käyttöjärjestelmän ydin siirrettiin VM/370 virtualisoidulle alustalle.[20] Vuoteen 1978 mennessä Unixista oli versio myös 32-bittiselle Interdata 8/32 -koneelle, joka erosi merkittävästi PDP-11:sta ja muistutti IBM System/360 ja IBM System/370 -koneita.[20] Interdata 8/32:lle siirtämisen jälkeen seurasi versio DEC VAX 11/780:lle, josta tuli paljon suositumpi kuin Interadatasta.[12][37]

Vuonna 1977 Unixia käytettiin yli 300 tietokoneessa.[2] Vuoteen 1978 mennessä Unixia käytti yli 600 tietokonetta.[2]

1980-luvun alkupuolella ilmeistyivät ensimmäiset kirjat Unixista: Stephen Bournen The Unix System ja Brian Kernighanin ja Rob Piken The Unix Programming Environment.[38]

Vuonna 1984 AT&T hajotettiin monopolioikeudenkäynnin seurauksena seitsemään erilliseen yhtiöön.[39] AT&T menetti alueelliset operaattorit säilyttäen kaukopuheluiden verkon, mutta sai vastineeksi oikeuden osallistua tietokoneliiketoimintaan.[40][39] Yhtiö perusti AT&T Computer Systems -yksikön, joka julkaisi kaupallisen Unix System III -version.[12][29] AT&T julkaisi 1983 Unix System V -järjestelmän, jonka laajalti levinnyt versio System V Release 4 julkaistiin vuonna 1989.[29] System V toimi AT&T 3B -sarjan tietokoneilla.[41] AT&T:n UNIX System Group (USG) järjestettiin uudelleen 1989, jolloin perustettiin UNIX Software Operation (USO) ja UNIX System Laboratories (USL).[41] USO ja USL yhdistyivät 1990 ja siitä tuli AT&T:n tytäryhtiö.[41]

1980-luvun lopulla Bell Labs siirtyi kehittämään Plan 9 -käyttöjärjestelmää.[42]

Vuonna 1992 AT&T haastoi BSD-haaran kehittäjät Berkeley Software Designin ja Kalifornian yliopiston oikeuteen väittäen BSD:n sisältäneen AT&T:n omistamaa koodia.[43] Osana kiistan sovitusta osa ohjelmakoodista toteutettiin uudestaan, osa poistettiin ja osaan lisättiin maininta AT&T:n tekijänoikeudesta.[44][45] Unix System Laboratories (USL) myytiin vuonna 1993 Novellille, joka myi UnixWare-liiketoiminnan Santa Cruz Operationille (SCO) vuonna 1995.[46][47][48]

Unixin standardointiMuokkaa

Unixin ja C-ohjelmointikielen suosio ja niiden monet eri versiot ja kloonit aiheuttivat tarpeen standardoida Unix ja sen C-standardikirjasto. POSIX-standardeilla pyritään siihen, että ohjelmoijat voivat kehittää komentojonotiedostoja ja ohjelmia, jotka toimivat kaikissa POSIX-yhteensopivissa käyttöjärjestelmissä.

1980-luvulla Unix-yhtiöiden yhteenliittymä X/Open muodostettiin julkaisemaan POSIXia laajempia X/Open Portability Guide (XPG) -määrittelyjä.[49] AT&T julkaisi System V Interface Definition (SVID) -määrittelyn ja IEEE julkaisee ensimmäisen POSIX-standardin.[50][51] POSIX nimi tarkoitti aluksi IEEE-standadia IEEE Std 1003.1-1988, mutta laajeni myöhemmin käsittämään sen muita osia IEEE Std 1003.1-1988.n.[51] POSIX on myös ISO-standardi ISO/IEC 9945.[51] POSIX sisältää myös laajennuksia ISO C -standardiin.[52] POSIX-standardi ratifioitiin vuonna 1988 ja laajennettiin vuonna 1990 kansainväliseksi ISO-standardiksi.[53] Yhdysvaltalaisella NIST:llä oli myös FIPS Pub 151-1 -määrittely.[53]

X/Open-konsortion aloittama työ eteni Common API Specification määrittelystä, muuttui Spec 1170 -määrittelyksi ja lopulta Single UNIX Specification (SUS) -standardiksi.[54] Standardi yhdistää neljä Unixiin liittyvää elementtiä: määrittely (kuten SVID), teknologia (kuten SVR4), tavaramerkki ja tuote (kuten UnixWare).[54] X/Open yhdistyi vuonna 1996 Open Software Foundationin kanssa The Open Groupiksi.[55] Vuodesta 1999 lähtien IEEE:n POSIX- ja Open Groupin SUS-määrittelyjä on kehitetty yhteisessä työryhmässä nimeltä Austin Group.[51]

ISO/IEC 23360-1:2006 -standardoitu Linux Standard Base pyrkii yhteensopivuuteen useiden Unix-standardien kanssa.[56][57]

Unix-versiotMuokkaa

Historialliset versiot (AT&T)Muokkaa

UNIX Time-Sharing System versiot 1..7 kehitettiin 16-bittiselle PDP-11:lle ja 32-bittisille tietokoneille kuten Interdata 8/32 ja VAX.[25][29] Nimeäminen on UNIX Programmer's Manualin mukainen (nth Edition).

VAX:lle kehitettyä 32-bittinen versiota kutsuttiin myös lyhyesti "32V".[37]

Research Edition -nimeä käytetään PDP-7-, PDP-11- ja VAX-alustoille kehitetyistä versioista.

Unixista oli myös Programmer's Workbench -julkaisu (PWB/UNIX), jossa oli myös Bell Labsissa kehitetty varhainen versionhallintajärjestelmä Source Code Control System (SCCS).[58][59][60] Julkaisussa oli myös Stuart Feldmanin kehittämä make.[5][58]

Kaupallisesti julkaistut System III ja System V olivat perustana useiden muiden "valmistajien" kaupallisille Unixeille.[29] System III perustui versio 7:lle (System I ja System II eivät koskaan olleet olemassa).[61] System IV ei nähnyt päivänvaloa AT&T:n ulkopuolella.[61]

Muiden valmistajien Unix-versioitaMuokkaa

Useat eri tahot ovat kehittäneet Unix-yhteensopivia käyttöjärjestelmiä. BSD:n kehitykseen vaikuttanut Bill Joy siirtyi Sun Microsystemsille vuonna 1982 kehittämään käyttöjärjestelmää.[32] Sun kehitti SunOS-käyttöjärjestelmän aluksi BSD:hen perustuen ja myöhemmin System V:hen perustuen.[61] 1980-luvun alussa Microsoft Xenixin, josta myöhemmin tuli Santa Cruz Operationin SCO Unix.[62]tarvitaan parempi lähde Vuonna 1990 Open Software Foundation julkaisi OSF/1:n Mach-mikroytimeen ja BSD:hen perustuen.[63] OSF/1:een perustui Digital OSF/1, josta tuli Digital UNIX vuonna 1995.

BSD-tyylisiä kaupallisia Unixeja:

BSD-tyylisiä Unixeja:

System V -tyylisiä Unixeja:

System III -tyylisiä Unixeja:

  • HP-UX (varhaiset versiot)
  • IRIX (varhaiset versiot)
  • Xenix (varhaiset versiot)
  • NEC PC-UX

Muut:

  • IBM:n z/OS (ei varsinainen Unix, mutta sertifioitu yhteensopivuuden takia)[64]

Huawein EulerOS ja Inspurin K-UX ovat Linux-jakeluja, jotka ovat Open Groupin sertifioimia.[65][66][67]

Useimmat niin kutsutut kaupalliset Unixit ovat tietokonevalmistajien kehittämiä ja tarkoitettu käytettäviksi nimenomaan valmistajan omilla laitteilla. Esimerkiksi Sun Solaris on tarkoitettu käytettäväksi Sunin omilla SPARC-pohjaisilla koneilla, vaikka siitä onkin versioita myös X86-laiteympäristölle. Linux, FreeBSD ja muut sen kaltaiset vapaat käyttöjärjestelmät eroavat tässä suhteessa kaupallisista Unixeista. Ne on tarkoitettu nimenomaan PC:n kaltaisille koneille, joille ei ole ”omaa” Unix-käyttöjärjestelmää. Nykyään osaa näistä järjestelmistä, varsinkin NetBSD ja Linux, on sopeutettu toimimaan hyvin erilaisissa laitteissa, myös perinteisissä Unix-koneissa.

Riippumattomia Unixin kaltaisia järjestelmiäMuokkaa

Bob Swartz kehitti ja julkaisi kaupallisen järjestelmän nimeltä Coherent vuonna 1983.[68] AT&T tarkisti ettei käyttöjärjestelmässä käytetty luvattomasti Unixin lähdekoodia.[69]Andrew Tanenbaum kehitti käyttöjärjestelmäkurssiaan ja oppikirjaansa varten järjestelmän nimeltä MINIX vuonna 1987.[70]Richard Stallman aloitti vuonna 1983 GNU-projektin AT&T:n Unixin kaltaisen vapaan käyttöjärjestelmän luomiseksi.[71] Suomalainen Linus Torvalds aloitti riippumattoman Linux-ytimen kehityksen 1990-luvun alussa.[72][73] Tanenbaum käytti Coherent-käyttöjärjestelmää tehdessään MINIX:in varhaisia versioita, jota taas Torvalds käytti tehdessään Linuxin varhaisia versioita.[74]

Unixin kaltaisia järjestelmiä:

Unix-filosofiaMuokkaa

Käyttöjärjestelmä ei noudata yhtä tiettyä tapaa tehdä asioita, mutta sitä on kuvailtu minimalistiseksi ja modulaariseksi periaatteeksi, jota McIlroy on kuvannut seuraavasti:[75][76][77][78]

  1. Tee yksi ohjelma suorittamaan yksi asia hyvin. Uutta asiaa varten tee uusi ohjelma sen sijaan että monimutkaistaa vanhaa ohjelmaa uusilla ominaisuuksilla.
  2. Odota ohjelman tulosteen olevan syöte toiselle vielä tuntemattomalle ohjelmalle. Älä sotke tulostetta tarpeettomalla tiedolla. Vältä tiukasti sarakkeistettua tai binäärimuotoista tulostetta. Älä odota interaktiivista syötettä.
  3. Suunnittele ohjelmat, jopa käyttöjärjestelmät, kokeiltavaksi varhain, ideaalisesti viikoissa. Älä epäröi heittää pois kömpelöitä osia ja toteuttaa ne uudelleen.
  4. Käytä työkaluja mieluummin kuin kokemattomia apulaisia ohjelmointityön helpottamisessa, edes jos tarvitset kiertotietä ja odotat heittävästi pois osan niistä lopuksi.

McIlroy on myöhemmin tiivistänyt asiaa Peter H. Salusin kirjassa A Quarter Century of Unix:[79]

Kirjoita ohjelmia jotka tekevät yhden asian ja tekevät sen hyvin. Kirjoita ohjelmia toimimaan yhdessä. Kirjoita ohjelma tukemaan tekstivirtaa koska se on universaali rajapinta.

Kernighan vaikutti filosofian popularisointiin kehittämällä useita erikoistuneita apukieliä: ratfor, eqn, awk ja pic.[5]

Tähän kontrastina on tekniikan muuttuminen: käyttöjärjestelmän kehitysaikana ohjelmia kohdeltiin kuten tieteellistä ja matemaattista tietoa toisin kuin kaupallisia tuotteita.[76]

Eric Raymond avaa filosofiaa vielä lisää kirjassa The Art of Unix Programming 17. kohdalla.[79]

LähdekooditMuokkaa

Unix Heritage Society (ent. Unix Preservation Society) on koostanut alkuperäisen Unixin lähdekoodit versiohistorioineen julkiseen projektiin.[80] Useilla Unixin käyttäjillä oli täydet Unixin lähdekoodit mutta ei lupaa jakaa niitä.[80]

Caldera on julkaissut varhaiset versiot Seventh Edition ("V7", 1979) ja VAX-versioon ("32V") saakka vuonna 2002 BSD-lisenssillä.[81]

Nokia-Alcatel-Lucent on sallinut Unix Research Edition versioiden 8, 9 ja 10 lähdekoodien julkaisun.[82][83] Julkaisu ei tarkoita avointa lähdekoodia.[84]

Varhaisimmat versiot lähdekoodeista eivät olleet tallennettuna versionhallintajärjestelmässä kehityksen aikana.[80] Myöhemmät kehitysvaiheet on tallennettu SCCS-versionhallintajärjestelmään mutta silloinkaan kaikkia tiedostoja ei ole tallennettu.[80]

Unix-sodatMuokkaa

Unix-sodat (engl. Unix wars) oli useiden tahojen välinen kilpailu Unix-yhteensopivista käyttöjärjestelmistä.[85] Kiistat johtivat POSIX-standardin luomiseen.[86]

Kiistojen alkuun sijoitetaan AT&T:n ja Sun Microsystemsin yhteistyö vuonna 1987, jonka seurauksena Sun ilmoitti että SunOS ei jatkossa perustuisi BSD-versioon vaan AT&T:n System V -versioon.[87] Tämä johti Open Software Foundationin (OSF) perustamiseen useiden yritysten yhteistyönä.[87] Vastineeksi AT&T ja Sun perustivat Unix Internationalin (UI).[87] OSF ja UI yhdistyivät myöhemmin keskenään ja X/Openin kanssa muodostaen The Open Groupin vuonna 1996.[87] Unix System Laboratoriesin ostanut Novell siirsi Unix-tavaramerkin X/Openille ennen sen yhdistymistä Open Groupiin.[88]

KritiikkiMuokkaa

Unixia on kritisoitu myös eräistä suunitteluvirheistä signaalien käsittelyssä sekä käyttäjäoikeusmallissa.[89] Signaalien käsittelyyn on kehitetty ratkaisuja BSD:ssä, System V:ssä ja Linuxissa.[89][90][91]

Katso myösMuokkaa

LähteetMuokkaa

  1. a b c d e f g h i j k l m n o p q Richard Jensen: Unix at 50: How the OS that powered smartphones started from failure 29.8.2019. Ars Technica. Viitattu 6.9.2019. (englanniksi) 
  2. a b c d e f Dennis M. Ritchie amturing.acm.org. Viitattu 7.9.2019. (englanniksi)
  3. a b c d e f g h i j k l Warren Toomey: The Strange Birth and Long Life of Unix 28.11.2011. IEEE Spectrum. Viitattu 6.9.2019. (englanniksi)
  4. UNIX 03 opengroup.org. Viitattu 10.9.2019. (englanniksi)
  5. a b c d M. Douglas McIlroy: A Research UNIX Reader: Annotated Excerpts from the Programmer’s Manual, 1971-1986 (PDF) cs.dartmouth.edu. Viitattu 6.9.2019. (englanniksi)
  6. Unix ja shell-ohjelmointi, luennot 1 & 2 mit.jyu.fi. Viitattu 23.11.2017.
  7. a b c Dennis M. Ritchie: The Evolution of the Unix Time-sharing System bell-labs.com. Viitattu 7.9.2019. (englanniksi)
  8. Aleksey Dolya: Interview with Brian Kernighan 29.7.2003. Linux Journal. Viitattu 7.9.2019. (englanniksi)
  9. a b c Part I tuhs.org. Viitattu 8.9.2019. (englanniksi)
  10. John W Gintell: Thoughts about the early days of Multics with rusty analysis on the subject of Performance Improvement (PDF) multicians.org. Viitattu 22.11.2017.
  11. Gordon M. Brown: Multics princeton.edu. Viitattu 22.11.2017.
  12. a b c d e f g h i j Ritchie, Dennis M.: The Development of the C Language bell-labs.com. Viitattu 24.7.2017.
  13. The famous PDP-7 comes to the rescue Bell Labs. Viitattu 20.05.2007.
  14. a b K. Thompson: UNIX Implementation (PDF) users.soe.ucsc.edu. Viitattu 8.9.2019. (englanniksi)
  15. TMG multicians.org. Viitattu 7.9.2019. (englanniksi)
  16. a b Porting UNIX for its first commercial application s3-us-west-2.amazonaws.com. Arkistoitu . Viitattu 6.9.2019. (englanniksi)
  17. Peter H. Salus: The history of Unix is as much about collaboration as it is about technology landley.net. 1994. Viitattu 11.9.2019. (englanniksi)
  18. a b Unix Programmer's Manual bell-labs.com. Viitattu 11.9.2019. (englanniksi) 
  19. From B language to NB to C Bell. Arkistoitu . Viitattu 20.05.2007. (englanniksi)
  20. a b c d e S. C. Johnson & D. M. Ritchie: Portability of C Programs and the UNIX System bell-labs.com. 1978. Viitattu 6.9.2019.
  21. Brian Kernighan Remembers the Origins of ‘grep’ 22.7.2018. The Newstack. Viitattu 7.8.2018.
  22. CHAPTER 9 columbia.edu. Viitattu 6.9.2019. (englanniksi)
  23. Michael S. Mahoney: THE UNIX ORAL HISTORY PROJECT princeton.edu. Viitattu 28.11.2017.
  24. a b c d Dennis M. Ritchie & Ken Thompson: The UNIX TimeSharing System 1974. Communications of the ACM. Viitattu 6.9.2019. (englanniksi)
  25. a b D. M. Ritchie & K. Thompson: The UNIX Time-Sharing System (PDF) bell-labs.com. Viitattu 10.9.2019. (englanniksi)
  26. a b Learning the Korn Shell by Bill Rosenblatt O'Reilly. Viitattu 8.9.2019. (englanniksi)
  27. Howard Dahdah: The A-Z of Programming Languages: Bourne shell, or sh 5.3.2009. Computerworld. Viitattu 7.9.2019. (englanniksi)
  28. UNIX Encyclopaedia Britannica. Viitattu 7.9.2019. (englanniksi)
  29. a b c d e f g System V Definition linfo.org. Viitattu 8.9.2019.
  30. Peter H. Salus: Chapter 7. BSD and the CSRG (Osa verkossa julkaistua kirjaa The Daemon, the Gnu and the Penguin) 5.5.2005. Groklaw. Viitattu 11.9.2019. (englanniksi)
  31. a b Peter H. Salus: Chapter 2. UNIX (Osa verkossa julkaistua kirjaa The Daemon, the Gnu and the Penguin) 14.4.2005. Groklaw. Viitattu 11.9.2019. (englanniksi)
  32. a b c Kevin Featherly: Bill Joy Encyclopaedia Britannica. Viitattu 6.9.2019. (englanniksi)
  33. University of California, Berkeley. Computer Systems Research Group SNAC. Viitattu 9.9.2019. (englanniksi)
  34. a b Charles Babcock: What's The Greatest Software Ever Written? 11.8.2006. Informationweek. Viitattu 6.9.2019. (englanniksi)
  35. University of California, Berkeley. Computer Systems Research Group SNAC. Viitattu 9.9.2019. (englanniksi)
  36. Sharing UNIX with the rest of the world Bell. Arkistoitu . Viitattu 20.05.2007.
  37. a b Thomas B. London & John F. Reiser: A UNIX™ Operating System for the DEC VAX-11/780 Computer* (PDF) bell-labs.com. Viitattu 24.4.2019. (englanniksi)
  38. Gerard J. Holzmann: The Unix Magician’s Handbook (PDF) spinroot.com. Viitattu 8.9.2019. (englanniksi)
  39. a b The End of AT&T;Internet Archive
  40. Matthew Lasar: How AT&T Conquered The 20th Century 3.9.2011. Wired. Viitattu 8.9.2019. (englanniksi)
  41. a b c Business gets the word Bell. Arkistoitu . Viitattu 20.05.2007.
  42. Plan 9 from Bell Labs plan9.bell-labs.com. Arkistoitu . Viitattu 14.2.2017.
  43. Unix System Laboratories v. Berkeley Software, 832 F. Supp. 790 (D.N.J. 1993) law.justia.com. Viitattu 31.8.2019. (englanniksi) 
  44. Lawrence Kesteloot: A Brief History of UNIX and BSD teamten.com. Viitattu 3.11.2017.
  45. Settlement Agreement (PDF) Groklaw. Viitattu 3.11.2017.
  46. John Markoff: COMPANY NEWS; Novell to Buy A.T.& T.'s Unix System Labs 22.12.1992. The New York Times. Viitattu 31.8.2019. (englanniksi) 
  47. Novell completes acquisition of UNIX System Laboratories from AT&T tech-insider.org. Viitattu 31.8.2019. (englanniksi)
  48. Novell Completes Sale of UnixWare Business to The Santa Cruz Operation Novell. Viitattu 21.1.2017.
  49. 1.2.5 XPG (The X/Open Portability Guide) gnu.org. Viitattu 1.9.2019. (englanniksi)
  50. 1.2.4 SVID (The System V Interface Description) gnu.org. Viitattu 12.9.2019. (englanniksi)
  51. a b c d POSIX 1003.1 Frequently Asked Questions (FAQ Version 1.16) Open Group. Viitattu 8.9.2019. (englanniksi)
  52. 1.2.2 POSIX (The Portable Operating System Interface) gnu.org. Viitattu 12.9.2019. (englanniksi)
  53. a b Stephen R. Walli: The POSIX Family of Standards (PDF) maaliskuu 1995. StandardView. Viitattu 12.9.2019. (englanniksi)
  54. a b The Single UNIX Specification Open Group. Viitattu 12.9.2019. (englanniksi)
  55. The Open Group Definition linfo.org. Viitattu 1.9.2019. (englanniksi)
  56. DevynCJohnson: SUS, POSIX, and Other Standards dcjtech.info. 26.2.2017. Viitattu 8.7.2019. (englanniksi)
  57. ISO/IEC 23360-1:2006 ISO. Viitattu 7.7.2019. (englanniksi)
  58. a b PWB UNIX (PF) bitsavers.org. Viitattu 7.9.2019.
  59. SCCS vs RCS sccs.sourceforge.net. Viitattu 21.2.2017. (englanniksi)
  60. Rochkind, Marc J.: The Source Code Control System (PDF) basepath.com. joulukuu 1975. Viitattu 20.12.2017.
  61. a b c The History of Solaris (PDF) cse.unl.edu. Viitattu 10.9.2019. (englanniksi)
  62. Bader, William: SCO History williambader.com. Viitattu 15.7.2014. (englanniksi)
  63. Open Software Foundation releases OSF/1 operating system, offering customers powerful function, industry standards 23.10.1990. Businesswire. Viitattu 12.8.2019. (englanniksi)
  64. UNIX 95 opengroup.org. Viitattu 10.9.2019. (englanniksi)
  65. Rodolfo Mondion: Euler OS - Huawei Enterprise Linux boot-r.com. 11.4.2017. Viitattu 10.9.2019. (englanniksi)
  66. UNIX 03 opengroup.org. Viitattu 10.9.2019. (englanniksi)
  67. UNIX 03 Open Group. Viitattu 19.1.2017.
  68. Hannotte, Dean. "A Good Buy on UNIX", 12 June 1984, pp. 250–254. 
  69. Coherent sources released under a 3-clause BSD license virtuallyfun.superglobalmegacorp.com. Viitattu 2.8.2017.
  70. Bruce Byfield: An Introduction to MINIX 1.8.2010. Linux Journal. Viitattu 7.9.2019. (englanniksi)
  71. William L. Hosch: Richard Matthew Stallman Encyclopaedia Britannica. Viitattu 7.9.2019. (englanniksi) 
  72. Linus Torvalds Encyclopaedia Britannica. Viitattu 5.8.2019. (englanniksi)
  73. Eric Raymond & Rob Landley: OSI Position Paper on the SCO-vs.-IBM Complaint catb.org. 23.4.2008. Viitattu 10.9.2019. (englanniksi)
  74. Andrew S. Tanenbaum: Lessons Learned from 30 Years of MINIX maaliskuu 2016. Communications of the ACM. doi:10.1145/2795228. Viitattu 10.9.2019. (englanniksi)
  75. Basics of the Unix Philosophy homepage.cs.uri.edu. Viitattu 8.9.2019. (englanniksi)
  76. a b The Unix Philosophy: A Brief Introduction linfo.org. Viitattu 8.9.2019. (englanniksi)
  77. UNIX Time-Sharing System: Forward danluu.com. Viitattu 8.9.2019. (englanniksi)
  78. The Bell System Technical Journal (PDF) emulator.pdp-11.org.ru. elokuu 1978. Viitattu 8.9.2019. (englanniksi)
  79. a b Eric S. Raymond: The Art of Unix Programming. Addison-Wesley, 2003. ISBN 0-13-142901-9. Teoksen verkkoversio.
  80. a b c d A. Jesse Jiryu Davis: Assembling the history of Unix LWN.net. Viitattu 2.8.2017.
  81. Darwin, Ian F.: Why Caldera Released Unix: A Brief History O'Reilly Linux Dev Center. Viitattu 2.8.2017.
  82. Toomey, Warren: [TUHS Release of 8th, 9th and 10th Editions Unix] minnie.tuhs.org. Arkistoitu . Viitattu 2.8.2017.
  83. Statement Regarding Research Unix Editions 8, 9, and 10 (PDF) media-bell-labs-com.s3.amazonaws.com. Viitattu 2.8.2017.
  84. Samizdat no more: Old Unix source code opened for study The Register. Viitattu 2.8.2017.
  85. The UNIX wars s3-us-west-2.amazonaws.com. Viitattu 31.8.2019.
  86. Unix Wars of 1987-1993: POSIX as a result of struggle of AT&T and Sun against the rest of the world softpanorama.org. Viitattu 31.8.2019. (englanniksi)
  87. a b c d Peter H. Salus: Dueling UNIXes and the UNIX Wars (PDF) usenix.org. 2015. Viitattu 31.8.2019.
  88. What is UNIX? unix.org. Viitattu 1.9.2019. (englanniksi)
  89. a b Neil Brown: Ghosts of Unix past, part 3: Unfixable designs 16.11.2010. Lwn.net. Viitattu 9.9.2019. (englanniksi)
  90. Jonathan Corbet: Rethinking race-free process signaling 4.4.2019. LWN.net. (englanniksi)
  91. Linux 5.1 KernelNewbies. Viitattu 5.8.2019. (englanniksi)

KirjallisuuttaMuokkaa

  • Kernighan, Brian W.; Pike, Rob: The UNIX Programming Environment, s. 1–357. Prentice-Hall, Inc., copyright Bell Laboratories, 1984. ISBN 0-13-937681-X.
  • Bourne, Stephen R.: The Unix System. Addison-Wesley, 1982. ISBN 0-201-13791-7.

Aiheesta muuallaMuokkaa

 
Wikimedia Commonsissa on kuvia tai muita tiedostoja aiheesta Unix.