Opintojakson Käyttöjärjestelmät seminaarityö. Anniina Fagerström, Valtteri Karttunen, Tuukka Koivisto, Niko Liukka, Joonas Salminen ja Janne Strömberg



Samankaltaiset tiedostot
Historiaa. Unix kirjoitettiin kokonaan uudestaan C-kielellä Unix jakautui myöhemmin System V ja BSDnimisiin. Kuutti, Rantala: Linux

Demo 13. Aihe: Linux. Opettaja: Antti Ekonoja. Tekijä: Heini Puuska

Linux. 00 Keskeiset piirteet. Unix ja Linux Helsingin ammattikorkeakoulu Stadia Vesa Ollikainen (muokannut M.Mäki-Uuro) Kysymyksiä

LINUX LINUX. Viisi hyvää syytä käyttää Linuxia MUISTA! GNU Free Documentation License

KYMENLAAKSON AMMATTIKORKEAKOULU. Ubuntu. Yukun Zhou

GNU/Linux kotikäytössä

Jouko Nielsen. Ubuntu Linux

Avoimen lähdekoodin kehitysmallit

Tietotekniikan koulutusohjelma / Tietoverkkotekniikka

Linux ylläpitäjän opas. Tärkeimmät komennot, logit ja muuta hömppä *^_^* by Hannu Laitinen ETA14KT

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka

TIETOKONE JA TIETOVERKOT TYÖVÄLINEENÄ

Käyttöjärjestelmien historia. Joni Herttuainen Henri Jantunen Markus Maijanen Timo Saksholm Johanna Tjäder Eetu Turunen

Unix-perusteet. Unix/Linux-käyttöjärjestelmä ja sen ominaisuudet

SISÄLLYS 1 YLEISTÄ VERSIOT Tukiaika Variaatiot OHJELMISTO Paketinhallinta Komentorivisyntaksi

WINE API ja Virtualisointiohjelmistot

KYMENLAAKSON AMMATTIKORKEAKOULU

Samu Leppänen Juuso Lehtonen GNOME JA KDE. Kirjallinen osa Tietotekniikan ko. / Tietoverkkotekniikka

CT50A2601 Käyttöjärjestelmät Androidin ja Symbianin vertailu Seminaarityö

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka. Joni Korjala APACHE WWW-PALVELIN Seminaarityö 2012

Web-sisällönhallintajärjestelmät

Älypuhelimet. Sisällysluettelo

SQLite selvitysraportti. Juha Veijonen, Ari Laukkanen, Matti Eronen. Maaliskuu 2010

Joonas Ruotsalainen GIT PIKAOPAS. Tutkielma 2011

Linuxin monet kasvot: kännyköistä superkoneisiin

Web-sisällönhallintajärjestelmät. Sisältö. Mitä on web-sisällönhallinta?

Kytkentäopas. Tuetut käyttöjärjestelmät. Tulostimen asentaminen. Kytkentäopas

LINUX-HARJOITUS, MYSQL

Linuxissa uusi elämä 1

Ei raportteja roskiin

VALO-ohjelmat ja LTSP kouluissa. Elias Aarnio Innopark, AVO-hanke

Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä:

Avoin lähdekoodi hankinnoissa Juha Yrjölä

Innovointiprosessi. Lili Aunimo Lili Aunimo

TUTUSTUMINEN LINUX-KÄYTTÖJÄRJESTELMÄÄN

Kymenlaakson Ammattikorkeakoulu

Selainpelien pelimoottorit

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka. Joonas Rosenblad. SteamOS-käyttöjärjestelmä

Office ohjelmiston asennusohje

Linux rakenne. Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat

Perussurffaajat: Tiia Tirkkonen, Teppo Porkka, Janne Tuomisto. Verkkopalvelun arviointisuunnitelma Spotify

Alkuraportti. LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS CT10A Kandidaatintyö ja seminaari

UCOT-Sovellusprojekti. Asennusohje

Kim Vuorela TIVE Linux-järjestelmät 1(12)

TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö

Raspberry Pi. Yhden piirilevyn tietokone. Tässä dokumentissa kerrotaan yleistä tietoa Rasberry Pi- tietokoneesta ja. sen toiminnoista.

Liitäntäkaapelin CA-42 pika-asennusohje

Meidän visiomme......sinun tulevaisuutesi

Useimmin kysytyt kysymykset

Järjestelmän asetukset. Asetustiedostojen muokkaaminen. Pääkäyttäjä eli root. Järjestelmänhallinnan työkalut

Linux omaan kannettavaan. Ilkka Kiistala

Suomen avoimien tietojärjestelmien keskus COSS ry

Tähtitieteen käytännön menetelmiä Kevät 2009

Linux. Alkutarkistukset

Pertti Pennanen License 1 (7) EDUPOLI ICTPro

Applen käyttöjärjestelmät

Laskennallisen fysiikan esimerkkejä avoimesta tutkimuksesta Esa Räsänen Fysiikan laitos, Tampereen teknillinen yliopisto

KUVANKÄSITTELY THE GIMP FOR WINDOWS OHJELMASSA

Internetin hyödyt ja vaarat. Miten nettiä käytetään tehokkaasti hyväksi?

Laskennallisen fysiikan esimerkkejä avoimesta tutkimuksesta Esa Räsänen Fysiikan laitos, Tampereen teknillinen yliopisto

Tulevaisuuden päätelaitteet

SteamOS testaus- ja käyttöraportti

UBUNTU 8.04 LTS ASENNUS

Opas koulujen VALO-hankintaan. Elias Aarnio Avoimet verkostot oppimiseen -hanke Educoss Innopark Oy

Gimp JA MUUT KUVANKÄSITTELYOHJELMAT

Mistä on kyse ja mitä hyötyä ne tuovat?

Office 2013 ohjelman asennus omalle työasemalle/laitteelle Esa Väistö

VERKON ASETUKSET SEKÄ WINDOWSIN PÄIVITTÄMINEN

Ohjelmien lisensoinnista

Digi-tv vastaanottimella toteutettavat interaktiiviset sovellukset Selvitys GPL-lisensoinnin tuomat ongelmat

LAITTEISTOKOKOONPANON SELVITTÄMINEN JA AJURIEN ASENTAMINEN

Linux palomuurina (iptables) sekä squid-proxy

Felipe Ballester TI07

Mobiililaitteiden ja sovellusten tietoturvallisuus mihin tulee kiinnittää huomiota?

Android jatkaa kasvua

Good Minton Sulkapalloliiton Kilpailujärjestelmä SEPA: Heuristinen arviointi

Linuxin lokalisointi

Avoimen lähdekoodin vaarat

Tulostimen asentaminen Software and Documentation -CD-levyn avulla

Open Source -ohjelmistot

Pertti Pennanen DOKUMENTTI 1 (5) EDUPOLI ICTPro

1 (5) VUOKRALISENSSIN KÄYTTÖÖNOTTO JA PILVIPISTEET AUTODESK ACCOUNTISSA. Milloin vuokra-aika alkaa?

Sisällönkuvaukset Projektinhallinta 3 op. Sisältö. 2. Palvelinalustat 3 op

Menetelmäraportti - Konfiguraationhallinta

S11-09 Control System for an. Autonomous Household Robot Platform

Suoritustavat: Laboratoriotöitä 2.-3.periodi. Luennot 2h, Laboratorityöt 4h, itsenäinen työskentely 124 h. Yhteensä 130 h.

TIETOKONEYLIASENTAJAN ERIKOISAMMATTITUTKINTO

WEIKKA. Asennus opas. Hannu-Matti Lemettinen HML Productions

Ennen varmenteen asennusta varmista seuraavat asiat:

PIKAOPAS MODEM SETUP

Tulostimen asentaminen Software and Documentation -CD-levyn avulla tietokoneeseen ja suorita asennusohjelma uudelleen.

Visma Liikkuvan työn ratkaisut VLS lisensointi. Ylläpitäjän opas

Kirja on jaettu kahteen osaan: varsinaiseen- ja lisätieto-osioon. Varsinainen

Käyttöohje Planeetta Internet Oy

Miten voin selvittää säästömahdollisuuteni ja pääsen hyötymään niistä?

Automaattinen rivitys

Nero 7:n Windows Vista TM -tuki

DIGILEHTI KUULUU KAIKILLE!

Visual Case 2. Miika Kasnio (C9767)

Transkriptio:

Lappeenrannan teknillinen yliopisto Teknistaloudellinen tiedekunta Tietotekniikan koulutusohjelma Opintojakson Käyttöjärjestelmät seminaarityö Anniina Fagerström, Valtteri Karttunen, Tuukka Koivisto, Niko Liukka, Joonas Salminen ja Janne Strömberg LINUX Työn tarkastaja(t): Leena Ikonen

TIIVISTELMÄ Lappeenrannan teknillinen yliopisto Teknistaloudellinen tiedekunta Tietotekniikan koulutusohjelma Anniina Fagerström, Valtteri Karttunen, Tuukka Koivisto, Niko Liukka, Joonas Salminen, Janne Strömberg LINUX Seminaarityö 2013 24 sivua, 1 taulukko Työn tarkastajat: Leena Ikonen Hakusanat: Linux, Käyttöjärjestelmät Keywords: Linux, Operating systems Tämä työ on käyttöjärjestelmät kurssin seminaarityö. Työn tarkoituksena on tutkia ja esitellä Linux käyttöjärjestelmää ja sen taustoja. Linux on suomalaisen Linus Torvalds:in kehittämä avoimeen lähdekoodiin perustuva monipuolinen käyttöjärjestelmä, jota käytetään monissa erilaisissa päätelaitteissa. Työn ensimmäisessä osassa esitellään käyttöjärjestelmän taustoja ja historiaa. Toisessa osassa vertaillaan avoimen ja suljetun lähdekoodin järjestelmiä, sekä näiden eri järjestelmien kehitystä. Lisäksi työssä käsitellään Linux:n eri versioita eli jakelupakettaja ja niiden eroja. Työn lopussa käsitellään Linux käyttöjärjestelmän eri käyttömahdollisuuksia ja sopivuutta erilaisiin päätelaitteisiin. Työn johtopäätöksissä pohditaan Linux käyttöjärjestelmän tulevaisuutta. ii

ABSTRACT Lappeenranta University of Technology Faculty of Technology Management Degree Program in Information Technology Anniina Fagerström, Valtteri Karttunen, Tuukka Koivisto, Niko Liukka, Joonas Salminen, Janne Strömberg Linux Seminar Report 2013 24 pages, 1 tables Examiners : Leena Ikonen Keywords: Linux, Operating systems This report is a seminar report for the course operating systems. The purpose of this report is to study the features and history of the operating system called Linux. Linux is a versatile open source -based operating system, used in many different devices, developed by finnish born Linus Torvalds. The first part of the report deals with the history and background of Linux. The second part of this report focuses on comparing open and closed sourcecode systems, and the development of these systems. In the second part of the report, the different versions of Linux and the differences between them are studied. The different uses of Linux and suitability for different devices are studied at the end of the report. The features and the future of Linux is discussed at the conclusions part of this report. iii

SISÄLLYSLUETTELO 1 JOHDANTO... 3 1.1 TAUSTA... 3 1.2 TAVOITTEET JA RAJAUKSET... 3 1.3 TYÖN RAKENNE... 3 2 LINUX KÄYTTÖJÄRJESTELMÄN TAUSTA JA HISTORIA... 4 2.1 LINUS TORVALDS... 4 2.2 LINUXIN KEHITYS... 5 2.3 LINUX JA GNU... 7 3 AVOIMEN JA SULJETUN LÄHDEKOODIN KÄYTTÖJÄRJESTELMÄT JA NIIDEN KEHITYS... 8 3.1 OPEN SOURCE ELI AVOIN LÄHDEKOODI... 8 3.2 SULJETTU LÄHDEKOODI... 9 3.3 KÄYTTÖJÄRJESTELMIEN KEHITYS... 9 4 LINUXIN JAKELUPAKETIT JA NIIDEN EROT... 11 4.1 YLEISTÄ JAKELUPAKETEISTA... 11 4.2 TUNNETUIMMAT JAKELUPAKETIT... 12 4.2.1 Debian GNU/Linux... 12 4.2.2 Ubuntu... 12 4.2.3 Fedora ja Red Hat Enterprise Linux... 12 4.2.4 Slackware... 13 4.2.5 opensuse ja SUSE Linux Enterprise... 13 4.2.6 Gentoo... 13 4.2.7 Mandriva... 13 4.2.8 Arch Linux... 14 5 LINUXIN KÄYTTÖMAHDOLLISUUDET... 15 5.1 SKAALAUTUVUUS... 15 5.2 PALVELINKÄYTTÖJÄRJESTELMÄT... 15 5.3 MOBIILIKÄYTTÖJÄRJESTELMÄT... 16 5.4 SULAUTETUT JÄRJESTELMÄT... 16 5.5 TYÖPÖYTÄTIETOKONEET... 16 5.6 SUPERTIETOKONEET... 17 6 JOHTOPÄÄTÖKSET... 18 6.1 TULEVAISUUS PC-PUOLELLA... 18 6.1.1 Chrome OS... 18 6.1.2 Pelaaminen... 19 6.2 TULEVAISUUDEN POTENTIAALI... 19 LÄHTEET... 20 1

SYMBOLI- JA LYHENNELUETTELO GNU PC GPL BSD RHEL YaST GNU s not Unix Personal Computer General Public License Berkeley Software Distribution Red Hat Enterprise Linux Yet Another Setup Tool 2

1 JOHDANTO 1.1 Tausta Tämä raportti on seminaarityö käyttöjärjestelmät kurssille. Seminaarityön tarkoitus on tutustua yhteen käyttöjärjestelmään syvällisemmin ja laajentaa seminaarityöryhmän tietämystä tämän kyseisen käyttöjärjestelmän osalta. Tässä työssä käsiteltävä käyttöjärjestelmä on Linux. Linux on suomalais-syntyisen Linus Torvalds:in kehittämä avoimeen lähdekoodiin perustuva käyttöjärjestelmä. Linux käyttöjärjestelmää käytetään monissa erilaisissa päätelaitteissa, kuten pöytätietokoneet, palvelimet ja mobiililaitteet. 1.2 Tavoitteet ja rajaukset Tämän työn tarkoituksena on tutustua Linux käyttöjärjestelmään yleisellä tasolla. Käyttöjärjestelmän tekninen toiminta ja tekniset yksityiskohdat on rajattu työlle annetun rajallisen pituuden vuoksi. Työssä käsitellään Linux:n taustoja ja historiaa. Työssä esitellään avoimen ja suljetun lähdekoodin järjestelmiä ja niiden eroja. Lisäksi työssä tutkitaan Linux:n eri versioita, eri käyttömahdollisuuksia ja Linuxin tulevaisuutta. 1.3 Työn rakenne Työn alussa keskitytään Linux käyttöjärjestelmän taustoihin ja historiaan. Ensimmäisessä osiossa esitellään Linux käyttöjärjestelmän kehittäjää Linus Torvalds:ia ja Linux käyttöjärjestelmän alkuvaiheita. Taustojen jälkeen tutkitaan avoimen ja suljetun lähdekoodin järjestelmiä ja niiden kehitystä. Työn keskivaiheilla luvussa 4 esitellään Linux:n eri versioita eli jakelupakettaja, sekä niiden eroja. Työn lopussa esitellään Linux:n eri käyttömahdollisuuksia ja ominaisuuksia. Työn johtopäätöksissä esitellään työryhmän pohdintaa Linux käyttöjärjestelmästä ja sen mahdollisesta tulevaisuuden näkymistä. 3

2 LINUX KÄYTTÖJÄRJESTELMÄN TAUSTA JA HISTORIA 2.1 Linus Torvalds Linus Benedict Torvalds syntyi Helsingissä vuonna 1969. Pienenä Linus tykkäsi koota pienoismalleja ennen kuin 1980-luvun alussa hänen isoisänsä hankki Commodore VIC-20 tietokoneen ja Linus pääsi isoisän apuriksi näpäyttämään kirjaimia ja lukuja. Isoisän kuoltua Linus sai tämän koneen ja alkoi ensimmäiseksi ohjelmoida uudella tietokoneellaan omia pieniä ohjelmia ja pelejä Basic-ohjelmointikielellä. Linuksen ensimmäinen yksinkertainen tietokoneohjelma perustui Basic-ohjelmointikielen GOTO-käskyyn. Hän ohjelmoi myös pelin, jossa sukellusvene seilaa läpi tunnelin ja tallensi sen c-kasetille. Koulussa hän pelasi sitä kavereidensa kanssa. Linus sai myöhemmin 68008-prosessorila varustetun 32-bittisen Sinclair QL tietokoneen, joka oli hyvä mutta harvinainen Suomessa. Koneen avulla Linuksen konekielen hallinta kehittyi, sillä siihen oli saatavilla vähän ohjelmia, mikä johti siihen, että Linus teki lähes kaiken itse. [17] Vuonna 1988 Linus aloitti tietojenkäsittelytieteen opinnot Helsingin yliopistossa, jossa hän viihtyi hyvin. Linus oli lahjakas ja itsenäinen opiskelija. Hän kirjoitti pro gradu tutkielmansa englanniksi ja sen otsikko oli Linux: a Portable Operating System. Tutkielman tarkastajan Martti Tienarin mukaan työstä olisi saanut pienellä lisätyöllä tohtorin väitöskirjan. Linus suunnitteli akateemista uraa, mutta erinäisten käänteiden johdosta hän päätyi työskentelemään Yhdysvaltoihin. [17] Linus oli hereillä usein yöaikaan, sillä öisin oli halvempaa surffata Internetissä. Hänen äitinsä oli huolissaan pojan sosiaalisesta elämästä ja siitä, kuinka tämä koskaan tapaisi ketään mukavaa tyttöä. Opiskeluaikanaan yliopistolla työskennellessään Linus kuitenkin tapasi Toven. Tove Monni opiskeli pohjoismaisia kieliä ja kirjallisuutta. Hän osallistui Linuksen pitämälle kurssille ja näin he tapasivat, tutustuivat ja rakastuivat. Linus ja Tove menivät naimisiin vuonna 1997 ja heillä on kolme tytärtä: Patricia (s. 1996), Daniela (s. 1998) ja Celeste (s. 2000). [17] 4

2.2 Linuxin kehitys Linuxin alkuvaiheet keskittyvät 1990-luvun alkupuolelle, kun Linus Torvalds aloitti tietojenkäsittelytieteen opintonsa Helsingin yliopistossa. Ajatus Linuxista syntyi Torvaldsin omasta tarpeesta. Hän oli saanut tarpeekseen Microsoftin MS-DOS- ja Windows-käyttöjärjestelmistä ja halusi tietokoneeseensa luotettavan käyttöjärjestelmän. Sellaista ei löytynyt vielä mistään. Unix-käyttöjärjestelmässä oli kuitenkin sellaisia ominaisuuksia ja sellaista vakautta, mitä Torvalds oli etsinyt. Unix oli kiinnostava ja ainoa oikea käyttöjärjestelmä niin sanottujen hakkerien keskuudessa. Torvalds ei kuitenkaan voinut kyseistä käyttöjärjestelmää omalla PC:llään käyttää, sillä se oli liian raskas ja kallis. Käyttöjärjestelmäkurssilla hän pääsi käsiksi PC:lle tarkoitettuun Unixiin pohjautuvaan Minixiin ja sen lähdekoodiin. Minix mahdollisti Linuxin ohjelmoinnin aloittamisen. Torvalds aloitti siis Linuxin kehityksen vuonna 1990 21-vuotiaana. [17, s. 48-49] Linuxin kehitystä innoittivat useat Torvaldsin Helsingin yliopistossa käymät kurssit kuten C-kieli ja Unix-ohjelmointiympäristö sekä tietokone ja käyttöjärjestelmät. Yhtenä kurssikirjana Torvaldsilla oli Andrew S. Tanenbaumin Operating Systems, Design and Implementation, joka sisälsi Minix-käyttöjärjestelmän lähdekoodin. Opiskelijat pystyivät asentamaan sen kotikoneelleen ja pääsivät tekemään siihen muutoksia. Torvaldsin mielestä Minixissä prosessien skedulointi oli kuitenkin tehotonta, vaikka pedagogisesti Minix olikin oivallinen. Minix toimi pohjana, kun Torvalds halusi kehittää itselleen luotettavan käyttöjärjestelmän, joka tekee, mitä sen halutaan tekevän. Lähtökohtana ei siis ollut luoda käyttöjärjestelmää koko maailmalle vaan Linux pohjautui täysin Torvaldsin omiin tarpeisiin. [17, s. 49-50] Torvalds aloitti Linuxin ohjelmoinnin tekemällä terminaaliemulaattorin omaan 386- koneeseensa. Se pohjautui hänen Commodor VIC-20:lle ja Sinclair QL:lle ohjelmoituun testiohjelmaan. Muutaman kuukauden työskentelyn seurauksena syntyi Unix-tyylisen käyttöjärjestelmän ydin. Ensimmäisen toimivan käyttöjärjestelmäversion ohjelmakoodi oli valmis syksyllä 1991 ja Torvalds päätti jakaa lähdeohjelmakoodinsa vapaasti kaikkien saataville Internetiin. Tässä vaiheessa Linux oli edelleen selkeästi vain harrastus Torvaldsille ja hän halusi jakaa työnsä tulokset samanhenkisten ihmisten kanssa ja kuulla heidän kommenttejaan. Linuxin ohjelmakoodi oli vielä epätäydellinen ja se vaati 5

toimiakseen Minixin. Ohjelmakoodin kääntämisessä oli käytetty GNU-projektissa tehtyä gcc-kääntäjää (gnu c compiler) ja assembleria sekä shellinä bash-ohjelmaa ( bourne again shell ). Myös muita GNU-projektin (GNU s not Unix) tuotoksia oli hyödynnetty käyttöjärjestelmän ytimessä tehden siitä toimivan. Torvalds olisi alun perin halunnut kutsua järjestelmää nimellä Freix, joka olisi johdettu sanoista Free Unix tai freaks. FTPpalvelimen ylläpitäjä ei kuitenkaan pitänyt nimestä, eikä halunnut laittaa järjestelmää sillä nimellä verkkoon. Ylläpitäjä nimesi Torvaldsin oman käyttöalueen Linuxiksi ja niin Linux sai nimensä. Linus Torvalds ei olisi halunnut antaa käyttöjärjestelmälle etunimeensä pohjautuvaa Linux-nimeä, koska koki sen olevan itsekästä, mutta jälkikäteen hän on ollut tyytyväinen, ettei nimeksi tullut Freix. [17, s. 50-54] Kun Torvalds oli jakanut lähdekoodin Internetissä, sai hän yllätyksekseen ihmisiltä sähköpostia ja kommentteja. Muutamat innostuivat kokeilemaan Linuxia ja tekemään siihen muutoksia ja lisäyksiä. Useat ohjelmoijat alkoivat lähettää Torvaldsille apuohjelmia, virheraportteja ja käyttäjien ominaisuustoiveita. Linuxin ympärille kasvoi vähitellen maailmanlaajuinen kehittäjäyhteisö, joka yhdessä kehitti Linuxista toimivaa käyttöjärjestelmää. Linuxin kehitys tästä eteenpäin oli kuin vyöryvä lumipallo ja järjestelmä kasvoi kasvamistaan. Vuoden 1992 alussa Linuxia kehitti aktiivisesti jo noin 200 innokasta ohjelmoijaa. Samana vuonna julkaistiin graafisella käyttöliittymällä varustettu täysin toimiva desktop-käyttöjärjestelmä. Torvalds käytti yhä enemmän aikaa Linuxin kehittämiseen ja hän työskenteli kesällä 1992 yli kahdeksantuntisia päiviä Linuxin ohjelmoinnin parissa. Tuhansien mukana olleiden ohjelmoijien ja Internetin avulla Linuxista julkaistiin uusia versioita lähes kahden viikon välein. Muutkin kuin yliopistollisen yhteisön jäsenet alkoivat kiinnostua Linuxista ja Yggdrasil Computing San Josesta julkisti kaupallisen Linux-jakelupaketin. Vuonna 1993 perustettiin VA Research, joka alkoi toimittaa tietokonelaitteistoja Linux-käyttöjärjestelmällä. Suurelle yleisölle Linux tuli tutuksi ensimmäisen Linux World Show tapahtuman kautta maaliskuussa 1999. [17, s. 55-60] 6

2.3 Linux ja GNU Linuxiin liitetään kiinteästi GNU-projekti, jonka on aloittanut yhdysvaltalainen Richard Stallman vuonna 1984. Projektin lähtökohtana oli rakentaa vapaasti levitettävä Unixtyylinen käyttöjärjestelmä, joka korvaisi kaikki kaupalliset Unix-ratkaisut. Projekti alkoi ohjelmoimalla työkaluja, joita käyttöjärjestelmään tarvittiin. Näitä työkaluja ja ohjelmia hyödynnettiin Linux-ytimen kanssa ja ne loivat yhdessä toimivan käyttöjärjestelmän. GNU-projektin oma HURD-ydin julkaistiin vasta muutama vuosi Linux-ytimen jälkeen ja se käyttäjien mielestä toimi hitaasti ja huonosti. Linux-kehitys oli aloitettu juuri sopivaan aikaan ja GNU- sekä muiden projektien tuloksia pystyttiin hyödyntämään kokonaisen käyttöjärjestelmän kokoamisessa. Linuxin ja GNU:n välillä on ollut paljon kiistaa ja hämmennystä. Torvaldsilla ja Stallmanilla on ollut erilaiset lähtökohdat, sillä Torvalds keskittyi luomaan paremman ja luotettavamman käyttöjärjestelmän kun Stallman taasen halusi nimenomaan vapaasti jaettavan käyttöjärjestelmän. Stallmanin sanotaan käyttävän mieluummin huonoa vapaalla lisenssillä toimitettavaa ohjelmaa kuin hyvää kaupallista, kopiosuojattua ohjelmaa. [17, s. 73-75] Linux toimitetaan GNU GPL lisenssin (yleinen julkinen lisenssi) alaisuudessa ja siinä on yksiselitteisesti määritelty vapaasti levitettävä ohjelmisto. Alun perin Torvalds piti oikeuden Linuxin lähdekoodiin itsellään ja sen kopiointikielto oli hyvin täsmällinen. Tällöin ohjelmasta tai sen lähdekoodista ei saanut pyytää maksua ja kaikista tehdyistä muutoksista piti raportoida Torvaldsille mahdollista jatkokäyttöä varten. Torvalds kuitenkin muutti lisenssin pian käytännön syistä. Käyttöjärjestelmän nimestä on käyty kiivasta keskustelua ja Stallman on muun muassa sanonut Jos minulta kysytään, käytänkö Linuxia, niin vastaus on kyllä. Jos minulta kysytään, mitä järjestelmää käytän, vastaus on GNU-järjestelmää, joka käyttää Linux-ydintä. Monet kuitenkin huomauttavat, että käyttöjärjestelmässä on mukana myös osia monista muista projekteista, eikä sitä sen perusteella voi kutsua GNU:ksi. Ydintä pidetään käyttöjärjestelmän perustana ja Linux onkin saanut yliotteen GNU:sta. Nimi Linux on yleisessä käytössä koko käyttöjärjestelmästä puhuttaessa. [17, s. 78-89] 7

3 AVOIMEN JA SULJETUN LÄHDEKOODIN KÄYTTÖJÄRJESTELMÄT JA NIIDEN KEHITYS 3.1 Open source eli avoin lähdekoodi Avoin lähdekoodi on ohjelmien tuottamis- ja lisensointi menetelmä, jonka tarkoituksena on taataa käyttäjille ja ohjelmoijille tiettyjä oikeuksia. Nämä oikeudet voidaan tiivistää kolmeen pääkohtaan: [18] Oikeus päästä käsiksi ohjelman lähdekoodiin. Oikeus tehdä ja jakaa kopioita ohjelmasta. Oikeus tehdä parannuksia ohjelmaan. Näiden oikeuksien ansiosta avoimen lähdekoodin ohjelmille on tyypillistä kehityksen nopeus ja yhteisöllisyys. Ohjelmistoprojektin ympärille muodostuu kehitysyhteisö, jonka jäsenet edesauttavat ohjelmiston kehitystä kukin omalla tavallaan. Usein tavoitteena on tehdä ohjelma juuri kehittäjäjäsenien omaan käyttöön. Yksittäisistä jäsenistä voi muodostua suurempia ryhmiä, jotka vastaavat tietyn projektin osan kehittämisestä, esimerkiksi ohjelmoinnista, laadunvalvonnasta tai lokalisoinnista. Saman projektin parissa voi myös työskennellä useampia kehitysyhteisöjä. Usein tässä tilanteessa eri yhteisöjen välille syntyy kilpailua, joka osaltaan vauhdittaa ohjelmiston kehitystä [22]. Kuten muitakin ohjelmia, myös käyttöjärjestelmiä on kehitetty avoimen lähdekoodin projekteina. Kolmas tyypillinen piirre avoimelle lähdekoodille on ohjelmien ilmaisuus. Ohjelmiston ei kuitenkaan ole pakko olla ilmainen saadakseen avoimen lähdekoodin lisenssin, eikä avointa lähdekoodia pidäkään sekoittaa vapaisiin ohjelmistoihin (engl. Free software). Vapaat ohjelmistot liikkeen perusti Richard Stallman vuonna 1983. Erot avoimen lähdekoodin ja vapaiden ohjelmistojen välillä ovat kuitenkin lähinnä semanttisia; Stallmanin seuraajat pitävät oikeutta ohjelman lähdekoodiin ja jakamiseen itseisarvoina, kun taas avoin lähdekoodi ajattelu pitää tärkeämpänä näistä oikeuksista seuraavia käytännön hyötyjä. Avoin lähdekoodi liike erkani vapaista ohjelmistoista 1990-luvun lopulla. Tavoitteena oli juurikin avoimen koodin hyötyjä korostamalla saada myös 8

yritykset kiinnostumaan avoimesta lähdekoodista. [18] 3.2 Suljettu lähdekoodi Suljetun lähdekoodin (engl. Proprietary software tai closed source software) ohjelmistoja voidaan pitää avoimen lähdekoodin vastakohtana. Suljetun lähdekoodin käyttöoikeuslisenssissä määritellään tiukat rajat sille, mitä käyttäjä saa ohjelmistolla tehdä. Kuten lisenssin nimestäkin nähdään, ei käyttäjä omista ohjelmistoa vaan ainoastaan käyttöoikeuden siihen. Tästä seuraa edelleen se, että käyttäjällä ei ole oikeutta kopioida, jakaa tai muokata ohjelmistoa [16]. Useimmissa tapauksissa muokkaaminen on muutenkin lähes mahdotonta, sillä lähdekoodi on ainoastaan ohjelman kehittäjän tiedossa ja käyttäjällä on ohjelmasta vain binäärimuotoinen eli käännetty versio. Näillä rajoituksilla ohjelmiston valmistaja pyrkii pitämään ohjelmiston kehityksen ja mahdolliset myyntitulot omissa käsissään. Suljetun lähdekoodin ohjelmistot ovatkin useimmiten kaupallisia ohjelmistoja, jotka on suunniteltu kuluttajia varten [23]. Kehitystyö on säännellympää ja suoraviivaisempaa kuin avoimen lähdekoodin ohjelmistoissa. Tästä voi olla sekä hyötyä että haittaa; kehityksen nopeus ja suunta pysyvät tasaisina, mutta uusien ideoiden käyttöönotto voi olla hidasta. [16] 3.3 Käyttöjärjestelmien kehitys Ensimmäiset PC-koneissa laajasti käytetyt käyttöjärjestelmät, kuten Mac OS (julkaisuvuosi 1984), AmigaOS (1985) ja Microsoft Windows (1985), olivat lähes poikkeuksetta suljetun lähdekoodin ohjelmistoja [24]. Käyttöjärjestelmien kehitystä vauhditti tietokoneiden yleistyminen toimisto- ja kotikäytössä. Näyttölaitteiden hinnan aleneminen mahdollisti uusien ominaisuuksien, kuten graafisen käyttöliittymän, kehittämisen ja käyttöönoton. 1980-luvun lopulla suosituimpia olivat Applen käyttöjärjestelmät, kuten Mac OS [25]. Vähitellen Microsoftin Windows valtasi kuitenkin markkinajohtajan aseman. Windowsissa oli panostettu erityisesti toimisto-ohjelmistoihin ja ohjelmistokehittäjien mahdollisuuteen tuottaa omia ohjelmiaan käyttöjärjestelmälle. [16] Ensimmäinen avoimen lähdekoodin käyttöjärjestelmä syntyi lähes valmiin GNUkäyttöjärjestelmän ja Linux-ytimen yhdistelmänä 1991. Aluksi Linux oli vain pienen piirin 9

harrastajien kiinnostuksen kohteena, mutta siitä kehittyi kuitenkin nopeasti tehokas ja monikäyttöinen käyttöjärjestelmä [26]. Linuxia seuranneita avoimen lähdekoodin käyttöjärjestelmiä ovat muun muassa Unix-sukuiset BSD-käyttöjärjestelmät (Berkeley Software Distribution) FreeBSD, NetBSD ja OpenBSD, jotka on kehitetty eri ominaisuuksia silmällä pitäen. 1993 julkaistu FreeBSD pyrkii olemaan mahdollisimman tehokas käyttöjärjestelmä, kun taas NetBSD:ssä (1993) on panostettu erityisesti laitteistoriippumattomuuteen. 1995 NetBSD-projektista erkaantunutta OpenBSD:tä on puolestaan kehitetty tietoturvaominaisuuksia korostaen [27]. Tällä hetkellä suljetut käyttöjärjestelmät, Windowsin ja Mac OS:n johdolla, pitävät hallussaan suurinta osaa PCkoneiden käyttöjärjestelmämarkkinoista. Avoimia järjestelmiä käyttävät lähinnä harrastajat ja jotkin organisaatiot. Tilanne on kuitenkin kokonaan toinen esimerkiksi supertietokoneissa, Linux eri versioineen on suosituin käyttöjärjestelmä, ja mobiililaitteissa, joissa markkinajohtaja on Linux-pohjainen Android. [16] Avoimen ja suljetun lähdekoodin käyttöjärjestelmien kehitysprosessit ovat pääpiirteissään samanlaisia kuin minkä tahansa muunkin kyseessä olevaa kehitystapaa noudattavan ohjelmiston. Suljetut käyttöjärjestelmät, kuten Windows ja Mac OS, on suunniteltu suurta käyttäjäkuntaa varten. Niitä voidaan käyttää melko hyvin moniin erilaisiin tarkoituksiin. Järjestelmien kehitystyö on säänneltyä ja kokonaan uusia versioita julkaistaan yleensä noin 2-5 vuoden välein. Päivityksiä nykyisiin versioihin julkaistaan kuitenkin nopeammalla tahdilla. Avoimen lähdekoodin järjestelmät on yleensä suunniteltu jotakin kehittäjäjoukon valitsemaa käyttötarkoitusta varten. Näin ollen niiden käyttömahdollisuudet ovat rajallisemmat, mutta ne ovat erinomaisia omassa käyttötarkoituksessaan [16]. Vaikka avoimien käyttöjärjestelmien kehitys on vapaampaa ja vähemmän suunniteltua kuin suljettujen järjestelmien, ei tämä aina tarkoita hitaampaa kehitystä. Aika eri versioiden julkistamisen välillä saattaa kuitenkin vaihdella rajusti riippuen käyttöjärjestelmän koostaa, monimutkaisuudesta ja kehittäjäjoukosta. Järjestelmän kasvaminen ei kuitenkaan aina tarkoita hitaampaa kehitystä. Esimerkiksi Linuxin koon ja koodirivien määrän kasvua 90- luvulla tutkittaessa on huomattu kehityksen olleen lineaarista. Osaltaan tasaista kasvua selittää Linuxin laitetuen jatkuva parantuminen 90-luvulla. Uusien laiteajurien lisääminen käyttöjärjestelmään ei vaikuttanut muiden järjestelmän osien toimintaan, eikä näin ollen kasvattanut kokonaisuuden monimutkaisuutta [22]. Eri käyttöjärjestelmäytimien koodia 10

tutkittaessa ei myöskään ole löydetty merkittäviä laadullisia eroja avoimen ja suljetun lähdekoodin käyttöjärjestelmien väliltä. 4 LINUXIN JAKELUPAKETIT JA NIIDEN EROT 4.1 Yleistä jakelupaketeista Kuten muistakin käyttöjärjestelmistä, myös Linuxista on olemassa useita eri versioita, joita kutsutaan jakelupaketeiksi (engl. distribution). Muita yleisesti käytettyjä nimityksiä ovat jakelu, levitysversio tai distribuutio (harrastajien kesken distro ). Tyypillisesti jakelupaketit koostuvat Linux-ytimestä ja sen ympärille kootuista ohjelmistoista, jakelupaketin asennusohjelmasta sekä pakettienhallinnasta, jolla asennettuja ohjelmistoja voidaan hallita. Jakelupaketteja suunnitellaan ja julkaistaan eri tarkoituksiin, joten niiden sisältämät ohjelmistokokonaisuudet saattavat poiketa toisistaan merkittävästi. Tästä syystä ei voida nimetä yhtä jakelupakettia ylitse muiden, vaan tulee valita aina käyttötarkoitukseen sopivin vaihtoehto. [19] Jakelupaketteja on saatavilla sekä ilmaisina että kaupallisina versioina. Verkosta ladattavat ilmaiset Linux-paketit ovat yleensä yksityishenkilöiden tai yhteisöjen vapaista ohjelmistoista kokoamia jakeluita, joilla ei tavoitella taloudellista hyötyä. Yritysten ja organisaatioiden tuottamat maksulliset Linux-paketit sen sijaan sisältävät myös kaupallisia ohjelmia ja ovat usein viimeistellympiä. [19] Toki maksullisistakin jakelupaketeista on olemassa ilmaisversioita, mutta niistä kaupalliset osat on jätetty pois. Linux-jakelut voidaan jakaa karkeasti aloittelijoille ja harrastajille suunnattuihin [7]. Usein aloittelijoille suositellaan kaupallisien jakeluiden hankkimista johtuen niiden helppokäyttöisyydestä. Harrastajan jakelupaketin valinnan taas ratkaisevat ensisijaisesti sen ominaisuudet ja käyttötarkoitus, eli tuleeko se työpöytä- vai palvelinkäyttöön. Isompien jakeluiden kohdalla valintaa helpottaa se, että ne sopivat yleensä kumpaankin käyttötarkoitukseen. [6] 11

4.2 Tunnetuimmat jakelupaketit Erilaisia jakelupaketteja on olemassa sadoittain [7], joten valinnanvaraa löytyy. Tästä johtuen seuraavaksi pyritäänkin esittelemään vain suosituimmat ja merkittävimmät jakelut. Lisäksi monet vähemmän tunnetut jakelut pohjautuvat tässä esiteltyihin hyvin pienin eroavaisuuksin, joten on turha käydä niitä kaikkia läpi. 4.2.1 Debian GNU/Linux Yksi suosituimmista ja vanhimmista Linux-jakeluista on ilmainen mutta laaja, työpöytäkäyttöinen Debian, joka sisältää jopa yli 25100 vapaata ohjelmistoa valmiina asennettaviksi [7]. Debian pyrkii vakauteen ja avoimuuteen, joten uusia versioita julkaistaan harvoin ja ohjelmistojen päivitystahti on hidas [7]. Järjestelmän asentaminen on kuitenkin suhteellisen vaivatonta ja ohjelmistojen hallinta onnistuu kätevästi Aptpakettienhallintatyökalua hyödyntäen. Edistyneelle käyttäjälle Debianin käyttö tuskin tuottaa ongelmia. [19] 4.2.2 Ubuntu Debianiin pohjautuva ilmainen Linux-jakelu, joka on yksinkertaisuutensa ansiosta etenkin aloittelijoiden suosiossa. Ubuntun asennus onnistuu vaivattomasti ja työpöytäkäyttöön on panostettu tavallista enemmän. Debianin tapaan ohjelmistokattaus on varsin laaja, mutta oletuksena perusasennus jättää monista muista jakeluista poiketen esimerkiksi kehitystyökalut asentamatta keskittyen enemmän työpöytäkäyttäjän tarvitsemiin sovelluksiin kuten Firefox-selain tai OpenOffice-paketti. [8] 4.2.3 Fedora ja Red Hat Enterprise Linux Kun Red Hat-yhtiö lopetti vuonna 2003 alkuperäisen Red Hat Linuxin julkaisemisen, syntyivät sen vanavedessä ilmainen Fedora ja kaupallinen Red Hat Enterprise Linux (RHEL). Näistä Fedoran sanotaan olevan yleiskäyttöinen jakelu, joka sopii niin työpöytäkuin palvelinkäyttöön [9]. Fedoran huonona puolena pidetään sen turhankin nopeaa kehitystä, joka voi aiheuttaa erilaisia ongelmia päivitysten yhteydessä [6]. Kaupallinen RHEL:a pohjautuu pitkälti Fedoraan eroten äitijakelustaan tuotetuen sekä sisältämiensä 12

kaupallisten ohjelmistojen osalta. RHEL:a pidetään usein Fedoraa vakaampana ja tästä syystä etenkin yritykset suosivat sitä. [10] 4.2.4 Slackware Kokeneemmille käyttäjille tarkoitettu ilmainen jakelu, jonka käyttö vaatii hieman opettelua. Taitavissa käsissä se on kuitenkin mukautettavissa monenlaiseen käyttöön. Tämän ansiosta Slackware sopii hyvin myös vanhempiin tietokoneisiin. [11] 4.2.5 opensuse ja SUSE Linux Enterprise OpenSUSE:n ja SUSE Linux Enterprisen suhde on melko samanlainen kuin Fedoralla ja RHEL:lla, eli opensuse toimii vapaasti levitettävänä ja kehitettävänä jakeluna SUSE Linux Enterprisen keskittyessä kaupallisena tuotteena luotettavuuteen ja tukipalveluihin. Tunnistettavimpana piirteenä voidaan mainita YaST (Yet another Setup Tool)- asetustyökalu, jota pidetään yhtenä monipuolisimmista ja helppokäyttöisimmistä pakettienhallintatyökaluista. [12] 4.2.6 Gentoo Gentoo on yksi kokeneemmille käyttäjille tarkoitetuista Linux-jakeluista. Sen keskeisin ominaisuus on Portage-pakettienhallintajärjestelmä, joka ei useimpien muiden jakeluiden pakettienhallintajärjestelmien tapaan hae valmiiksi käännettyjä ohjelmia, vaan niiden lähdekoodin. Näin käyttäjä pystyy muokkaamaan ohjelmien ominaisuuksia haluamikseen ennen niiden asentamista. Juuri tämä tekee Gentoosta suositun etenkin asioihin perehtyneiden virittelijöiden keskuudessa. [13] 4.2.7 Mandriva Red Hat Linuxiin perustuva jakelu, joka on ensisijaisesti kaupallinen. Ilmainenkin versio löytyy, mutta siitä ei-vapaat ohjelmat on karsittu pois. Mandrivaa pidetään Ubuntun ohella yhtenä hyvänä vaihtoehtona aloittelijoille sen graafisten työkalujen runsauden ansiosta. [14] 13

4.2.8 Arch Linux Varsinkin kokeneempien käyttäjien keskuudessa suosittu ilmainen jakelu, jossa on panostettu yksinkertaisuuteen, nopeuteen ja muokattavuuteen. [15] Arch Linuxin asennus tapahtuu merkkipohjaisesti ja siihen sisältyvät ainoastaan järjestelmän kannalta välttämättömimmät ohjelmat. Esimerkiksi graafisen käyttöliittymän asennus on jätetty käyttäjän vastuulle. Arch Linuxin pakettienhallintajärjestelmänä toimii Pacman, jonka avulla ohjelmia voi asentaa tavalliseen tapaan tai niiden lähdekoodien avulla [7]. Ohjelmistojen päivitystahti on tiheä, sillä Pacman kykenee päivittämään paketteja automaattisesti. Systeemi on näppärä mutta saattaa aiheuttaa ongelmia, mikäli Pacman tulee asentaneeksi viallisen tai huonosti testatun päivityksen toimivaan ohjelmaan. [15] Jakelu Lisenssi Pakettienhallinta Asennustapa Käyttötarkoitus Debian ilmainen apt/dpkg graafinen työpöytä/palvelin Ubuntu ilmainen apt graafinen työpöytä/palvelin Fedora ilmainen rpm/yum graaf. /merkkip. työpöytä/palvelin RHLE kaupallinen rpm graaf. /merkkip. työpöytä/palvelin Slackware ilmainen txz merkkipohjainen työpöytä/palvelin opensuse ilmainen yast/rpm graafinen työpöytä/palvelin SUSE LE kaupallinen yast/rpm graafinen työpöytä/palvelin Gentoo ilmainen portage graaf. /merkkip. työpöytä/palvelin Mandriva ilm. rpm graafinen työpöytä/palvelin /kaupallinen Arch Linux ilmainen pacman merkkipohjainen työpöytä/palvelin Taulukko 1. Yhteenveto jakelupakettien eroista. 14

5 LINUXIN KÄYTTÖMAHDOLLISUUDET 5.1 Skaalautuvuus Linuxilla tarkoitetaan tarkalleen ottaen käyttöjärjestelmän ydintä (kernel), mutta tavallisesti sillä viitataan ytimen päälle rakennettuun jakeluversioon, kokonaiseen käyttöjärjestelmään. Kernel siis toimii vain rajapintana sovellustasolle ja laitteistolle. Linux on modulaarinen käyttöjärjestelmä, joten kaikki ylimääräiset osat ovat erotettu sen ytimestä. Näitä osia ovat mm. graafinen käyttöliittymä, komentotulkki, yksinkertaiset tiedosto- ja levynkäsittelykomennot sekä erinäiset kirjastot, joiden kautta sovellukset käyttävät käyttöjärjestelmän palveluita. Tämä mahdollistaa sen, että Linux käyttöjärjestelmän voi rakentaa täysin omiin tarpeisiinsa ja hyödyntää vain niitä ominaisuuksia, joita järjestelmä tarvitsee käyttötarkoitukseensa ja täten Linux on siis erittäin skaalautuva. Linux-käyttöjärjestelmiä on laajalti käytössä erilaisissa järjestelmissä kuten palvelimissa, mobiililaitteissa, supertietokoneissa, sulautetuissa järjestelmissä ja tavallisissa työpöytätietokoneissa. [1] 5.2 Palvelinkäyttöjärjestelmät Linux-järjestelmät ovat tunnetusti erittäin vakaita. Ne pystyvät jopa vuosien yhtäjaksoiseen suoritukseen ilman kaatumisia. Siksi se on tilastollisesti maailman suosituin palvelimilla käytetty käyttöjärjestelmä. Toinen mainitsemisen arvoinen asia on se, että lähes kaikki Linux-järjestelmän asetukset ja muutokset ovat mahdollisia ilman järjestelmän uudelleen käynnistämistä. Tämä on palvelinmaailmassa erittäin tärkeä ominaisuus, jossa lyhyelläkin palvelun katkaisemisella voi olla suuret haitalliset vaikutukset. Suurissa palvelinkokonaisuuksissa myös energiatehokkuus nousee merkittäväksi seikaksi ja siksi Linuxia suositaan skaalautuvuudensa vuoksi. 15

5.3 Mobiilikäyttöjärjestelmät Mobiililaitteiden suosio on älypuhelinten ja tablet tietokoneiden kautta kasvanut räjähdysmäisesti viime vuosien aikana. Linux taipuu myös mobiilikäyttöjärjestelmäksi, josta esimerkkinä älypuhelimille ja tablet tietokoneille tarkoitettu Googlen Android, joka on tällä hetkellä maailman yleisin mobiilikäyttöjärjestelmä. Android on Linuxiin pohjautuva ja Linuxin tapaan se on avointa lähdekoodia, joten sen kehittäminen ja käyttäminen on laitevalmistajille ilmaista. 5.4 Sulautetut järjestelmät Sulautettuihin järjestelmiin törmää nykyään jokapäiväisessä arkielämässä. Käytännössä sulautetut järjestelmät ovat laitteita, jotka sisältävät tietokoneen ja järjestelmän tarkoitukseen käytettävän ohjelmiston. Lähtökohtana on, että käyttäjän ei tarvitse tietää käyttävänsä tietokonetta vaikka sen olemassaolo järjestelmässä olisikin selvää. Sulautettuja järjestelmiä löytää nykyään mm. pankkiautomaateista, kaukosäätimistä, autoista ja terveydenhuollon laitteista. Skaalautuvuutensa vuoksi Linux soveltuu hyvin sulautettuihin järjestelmiin, sillä se on mahdollista saada pyörimään hyvinkin pienellä laitekapasiteetilla suorittamaan vain yksinkertaista laskentaa ja vaihtoehtoisesti se sopii käyttöjärjestelmäksi myös monimutkaisempiin kokonaisuuksiin. [1] 5.5 Työpöytätietokoneet Linux on myös työpöytäkäytössä, mutta sen käyttäjäkunta on pieni, vaikkakin uskollinen. Ongelmana on se, että ohjelmistokehittäjät eivät ole kiinnostuneita siitä sen huomattavasti pienemmän käyttäjäkunnan vuoksi esim. Microsoftin Windows käyttöjärjestelmiin verrattuna. Työpöytäkäytössä Linuxin etuina voidaan pitää sen ilmaisuutta ja sen useita eri jakeluversioita. Käyttäjä voi valita käyttöjärjestelmän helposti tarpeidensa ja tietokoneensa kapasiteetin mukaan. 16

Toisena merkittävänä asiana voidaan pitää käyttäjän vapautta valita työskentelyyn käyttämänsä palvelunsa ja ohjelmistot vapaasti, kun suljetut käyttöjärjestelmät puolestaan kilpailevat nykyisin pitkälle ekosysteemeillään kannustaen käyttäjän valitsemaan valmistajan muita palveluita paremman käyttökokemuksen vuoksi. Esimerkkinä tähän annettakoon Microsoftin uuden Windows 8 käyttöjärjestelmän sisäänrakennetut kalenteri ja sähköpostiohjelmat jotka synkronoituvat parhaiten vain Microsoftin omien palveluiden kanssa. 5.6 Supertietokoneet Supertietokoneet mahdollistavat laskentatehoja, jotka voivat olla yli miljoonakertaisia tavallisiin työpöytätietokoneisiin verrattuna. Supertietokoneet ovat koottu tavallisista kuluttajankin saatavilla olevista laitteista, jotka ovat sidottu toimimaan yhdessä. Nykyisessä supertietokoneessa voi esimerkiksi olla jopa kymmeniätuhansia prosessoreja. Supertietokoneissa suureksi tekijäksi nousee laitteiston toimiminen yhdessä, miten jakaa laskentaa prosessorien välillä. Tässä Linux nousee arvoonsa, sillä se on muokattavissa laskennan optimaaliseen jakamiseen ja tähän ei muut käyttöjärjestelmät ole kykeneviä. Siksi Linux on yleisin supertietokoneissa käytetty käyttöjärjestelmä yli 90% osuudella. Iso osa supertietokoneen suorituskyvystä on siis kiinni käyttöjärjestelmän toteutuksesta. [21] 17

6 JOHTOPÄÄTÖKSET Linux on avoimuutensa ja siitä seuraavan muokattavuutensa takia todella monipuolinen ja monikäyttöinen käyttöjärjestelmä. Suljettuihin ja pidemmälle tuotteistettuihin järjestelmiin verrattuna Linux-järjestelmän käyttö on kuitenkin vaatinut hieman enemmän asiantuntemusta ja harrastuneisuutta. Tämä on ehkä ollut merkittävimpänä esteenä Linuxjärjestelmän laajemmalle levinneisyydelle toistaiseksi. Toisaalta juuri muokattavuus ja avoimuus, jotka ovat mahdollistaneet järjestelmälle merkittävän kehittäjäyhteisön, ovat ne tekijät, jotka ovat tehneet Linux-järjestelmistä merkittävän alustan ammattikäytössä. 6.1 Tulevaisuus PC-puolella Linux:n levittäytymistä PC-puolella on tähän mennessä hidastanut ihmisten tottumus muihin käyttöjärjestelmiin sekä lähes kaikissa myydyissä tietokoneissa on ollut valmiina asennettuna Windows-käyttöjärjestelmä tai Apple:n koneissa OS X -käyttöjärjestelmä. Useimmilla käyttäjillä ei ole kiinnostusta tai osaamista asentaa toista käyttöjärjestelmää. PC-pelaaminen on keskittynyt tähän mennessä suurimmaksi osaksi Windowskäyttöjärjestelmien puolelle, mikä on ollut suuri este Linuxiin siirtymiseen pelaavalle käyttäjäkunnalle. Linux:in menestyminen myös PC-puolella voi olla tulevaisuudessa mahdollista pelituen parantumisen myötä sekä halpojen Chromebook-kannettavien ansiosta. 6.1.1 Chrome OS Googlen kehittämä Chrome OS on Linux:iin pohjautuva käyttöjärjestelmä, joka käyttää hyväkseen pilveä. Suurinta osaa sen sovelluksista käytetään nettiselaimella ja tiedostojen tallentaminen tapahtuu suurimmaksi osaksi kovalevyn sijaan Googlen palvelimille [28]. Chrome OS on käytössä Chromebookeissa. Chromebookit ovat helppokäyttöisiä ja halpoja web-sovelluksien käyttämiseen tarkoitettuja minikannettavia [29]. Chrome OS:n etu muihin Linux-pohjaisiin käyttöjärjestelmiin PC-puolella on se, että se tulee valmiiksi asennettuna Chromebookeissa, mikä tekee siitä huomattavasti käyttäjäystävällisemmän verrattuna muihin Linux-jakeluihin, jotka joutuu asentamaan yleensä itse. Chromebookit 18

ovat tähän mennessä olleet markkinoilla vasta vähän yli kaksi vuotta, joten niiden lopullisesta menestymisestä ei ole vielä varmuutta. 6.1.2 Pelaaminen Pelimarkkinoita PC-puolella ovat tähän mennessä hallineet Windows-käyttöjärjestelmät. Linuxia pelikäytössä on rajoittanut pelinkehittäjien vähäinen tuki johtuen Linuxin pienestä käyttäjämäärästä. SteamOS on Valven kehitteillä oleva Linuxiin pohjautuva käyttöjärjestelmä, joka on suunnattu olohuoneisiin viihdekäyttöön ja erityisesti pelaamiseen [20]. Valve on pelienkehittäjä sekä suurimman tietokonepelien digitaaliseen myymiseen keskittyvän pelikaupan, Steamin, omistaja. Valven perustajan, Gabe Newell:n, mielestä Linux on pelaamisen tulevaisuus ja Windows 8 on katastrofi [28]. Valvella on huomattavaa vaikutusvaltaa PC-pelaamisessa Steam-pelikauppansa sekä suosittujen pelisarjojensa ansiosta. Valvella on siis toisin sanoen välineet PC-pelaajien houkuttelemiseen Linuxn puolelle, mikä puolestaan voi saada muutkin pelitalot kääntämään pelejään Linuxelle. 6.2 Tulevaisuuden potentiaali Linux on tähän mennessä hallinnut kaikkia muita paitsi työpöytäympäristöjä ja tulee todennäköisesti hallitsemaan tulevaisuudessakin. Linuxin käyttömäärät tulevat lisääntymään sulautettujen järjestelmien ja mobiililaitteiden määrän lisääntyessä. Mobiililaitteille luodut ekosysteemit, jotka sisältävät matkapuhelinlaitteita, tablet laitteita ja muita kuluttajille suunnattuja laitteita, näyttäisivät olevan Linux järjestelmien tulevaisuus ja mahdollisuus saavuttaa ns. markkinaosuuksia olemassaolevilta suljetuilta järjestelmiltä. 19

LÄHTEET 1. Autio, Henri, Linux sulautetuissa järjestelmissä, Tampereen yliopisto, Tietojenkäsittelytieteiden laitos, Tietojenkäsittelyoppi, Pro gradu -tutkielma, Huhtikuu 2003. <http://www.cs.uta.fi/research/thesis/masters/autio_henri.pdf>. Viitattu 5.10.2013. 2. Godfrey, M.W., Tu, Q., Evolution in Open Source Software: A Case Study, viitattu 6.10.2013, http://svn-plg.uwaterloo.ca/~migod/papers/2000/icsm00.pdf 3. Kain, Erik, Windows 8 Is A 'Catastrophe' According To Gabe Newell - Valve Hedging With Steam On Linux, viitattu 07.10.2013, http://www.forbes.com/sites/erikkain/2012/07/26/windows-8-is-a-catastropheaccording-to- gabe-newell-valve-hedging-with-steam-on-linux/ 4. Koski, R., Linux tehokäytössä, 1. painos, Readme.fi, Jyväskylä, 2008. 5. Linux-wiki, Jakelun valinta, viitattu 24.9.2013, http://linux.fi/wiki/jakelun_valinta. 6. Linux-wiki, Jakelu, viitattu 24.9.2013, http://linux.fi/wiki/jakelu. 7. Linux-wiki, Debian GNU/Linux, viitattu 24.9.2013, http://linux.fi/wiki/debian_gnu/linux. 8. Linux-wiki, Ubuntu, viitattu 24.9.2013, http://linux.fi/wiki/ubuntu. 9. Linux-wiki, Fedora, viitattu 24.9.2013, http://linux.fi/wiki/fedora. 10. Linux-wiki, Red Hat Enterprise Linux, viitattu 24.9.2013, http://linux.fi/wiki/red_hat_enterprise_linux. 11. Linux-wiki, Slackware, viitattu 24.9.2013, http://linux.fi/wiki/slackware. 12. Linux-wiki, OpenSUSE, viitattu 24.9.2013, http://linux.fi/wiki/opensuse. 13. Linux-wiki, Gentoo, viitattu 24.9.2013, http://linux.fi/wiki/gentoo. 14. Linux-wiki, Mandriva, viitattu 24.9.2013, http://linux.fi/wiki/mandriva. 15. Linux-wiki, Arch Linux, viitattu 24.9.2013, http://linux.fi/wiki/arch_linux. 16. Miller, A., Open Source vs. Proprietary Software, viitattu 4.10.2013, http://www.academia.edu/777383/open_source_v._proprietary_software 17. Nikkanen, T., Linuxin tarina, Satku, Helsinki, 2000 18. Perens, B., Sroka, M., The Open Source Definition, viitattu 3.10.2013, http://kojp.mtf.stuba.sk/mironovova/lib/exe/fetch.php/2_semester:projects:glossary: 0708:glossary_2sem_0708_aia4_srokamichal_osdtext.pdf

19. Rantanen, A., Peruskirjat Linux, 1. painos, Docendo, Porvoo, 2003. 20. Steam, SteamOS, viitattu 07.10.2013, http://store.steampowered.com/livingroom/steamos/ 21. Vaughan-Nichols, Steven J., 20 great years of Linux and supercomputers, Heinäkuu 2013. <http://www.zdnet.com/20-great-years-of-linux-andsupercomputers-7000018681/>. Viitattu 5.10.2013 22. Wikipedia, Avoin lähdekoodi, viitattu 3.10.2013, http://fi.wikipedia.org/wiki/avoin_l%c3%a4hdekoodi 23. Wikipedia, Suljettu lähdekoodi, viitattu 4.10.2013, http://en.wikipedia.org/wiki/proprietary_software 24. Wikipedia, Käyttöjärjestelmien vertailu, viitattu 4.10.2013, http://en.wikipedia.org/wiki/comparison_of_operating_systems 25. Wikipedia, Käyttöjärjestelmien historia, viitattu 4.10.2013, http://en.wikipedia.org/wiki/history_of_operating_systems 26. Wikipedia, Avoimen ja suljetun lähdekoodin ohjelmistojen historia, viitattu 4.10.2013, http://en.wikipedia.org/wiki/history_of_free_and_open-source_software 27. Wikipedia, BSD, viitattu 6.10.2013, http://en.wikipedia.org/wiki/berkeley_software_distribution 28. Wikipedia, Chrome OS, viitattu 07.10.2013, http://en.wikipedia.org/wiki/chrome_os 29. Wikipedia, Chromebook, viitattu 07.10.2013, http://en.wikipedia.org/wiki/chromebook