UNIXIN JA LINUXIN VERTAILEMINEN

Koko: px
Aloita esitys sivulta:

Download "UNIXIN JA LINUXIN VERTAILEMINEN"

Transkriptio

1 Lappeenrannan teknillinen yliopisto Teknistaloudellinen tiedekunta Tietotekniikan koulutusohjelma CT50A2601 käyttöjärjestelmät kurssin seminaarityö Markus Melander, Antti Paarvio, Veli-Ensio Heiniluoto, Isto Sipilä UNIXIN JA LINUXIN VERTAILEMINEN Työn tarkastaja: Professori Heikki Kälviäinen Työn ohjaaja: Professori Heikki Kälviäinen

2 TIIVISTELMÄ Lappeenrannan teknillinen yliopisto Teknistaloudellinen tiedekunta Tietotekniikan koulutusohjelma Markus Melander, Antti Paarvio, Veli-Ensio Heiniluoto, Isto Sipilä UNIXIN JA LINUXIN VERTAILEMINEN Seminaarityö sivua, 7 kuvaa, 2 taulukkoa Työn tarkastaja: Professori Heikki Kälviäinen Hakusanat: Unix, Linux, Solaris, Ubuntu, Käyttöjärjestelmä Keywords: Unix, Linux, Solaris, Ubuntu, Operating System Seminaariraportissa tutkitaan kahden yleisesti käytössä olevan käyttöjärjestelmän, Linuxin ja Unixin keskeisiä toiminnallisia eroja. Raportin lähtökohtana on ollut käyttöjärjestelmät kurssin yhteydessä käsitellyt toiminnallisuudet. Tavoitteena on esitellä kirjoittajien mielestä keskeisimmät asiat. Työn johtopäätöksenä todetaan, että korkeammalla tasolla käyttöjärjestelmät ovat samankaltaisia. Eroja löytyy toteutusta syvemmin tarkasteltaessa, että käyttöjärjestelmien kehitystyöstä. ii

3 ABSTRACT Lappeenranta University of Technology Faculty of Technology Management Degree Program in Information Technology Markus Melander, Antti Paarvio, Veli-Ensio Heiniluoto, Isto Sipilä COMPARING UNIX AND LINUX Seminar Report 25 pages, 7 figures, 2 tables Examiner : Professor Heikki Kälviäinen Keywords: Unix, Linux, Solaris, Ubuntu, Operating System This report examines differences between representatives of two different operating systems. Focus is on Linux and Unix differences on major achievements. The context of the report are the fundamentals that were presented on lessons. Aim is to debate on the topics that writers identify to be important. According to research done during course the major conclusions are that differences on high level are minimal. More differences are found on low level architecture and in software development area. iii

4 ALKUSANAT Seminaariraportti on kirjoitettu neljän innokkaan tietotekniikan opiskelijan toimesta käyttöjärjestelmät kurssin aikana syksyllä Aiheen valintaa on ohjannut halu oppia Unix-käyttöjärjestelmän perusteita. Haluamme kiittää Lappeenrannan teknillistä yliopistoa saamastamme hyvästä opetuksesta. iv

5 SISÄLLYSLUETTELO 1 JOHDANTO TAUSTAA TAVOITTEET JA RAJAUKSET RAPORTIN RAKENNE SOLARIS-KÄYTTÖJÄRJESTELMÄN ESITTELY KÄYTTÖKOHTEET SOLARIS KÄYTTÖJÄRJESTELMÄN YDIN UBUNTU-KÄYTTÖJÄRJESTELMÄN ESITTELY LINUX-KÄYTTÖJÄRJESTELMÄN YDIN KÄYTTÖJÄRJESTELMIEN KESKEISTEN OSA-ALUEIDEN VERTAILU PROSESSIEN HALLINNAN VERTAILU TIEDOSTOJÄRJESTELMIEN VERTAILU Linuxin tiedostojärjestelmät Solariksen tiedostojärjestelmä ja vertailua KOMENTORAJAPINTOJEN VERTAILU Linuxin ja Solariksen komentorajapintojen toiminta MUISTINHALLINNAN VERTAILU Muistinhallinnan perusrakenteet Linuxin ja Solariksen käyttämiä algoritmeja Virtuaaliosoitteet ja heittovaihto YHTEENVETO LÄHTEET

6 SYMBOLI- JA LYHENNELUETTELO ARC ASM BBA CDDL COFF CPU EB ELF EXT FFS GNU GNU GPL HAT I/O kb LIFO LTS LRU NFS MMU MB PGD PMD RFS RISC SPARC TB VFS USB Adaptive Replacement Cache Address Space Management Binary Buddy Allocator Common Development and Distribution License Common Object File Format Central Processing Unit Eksatavu Executable and Linkable Format Extended File System Flash File System GNU's Not Unix GNU General Public License Hardware Address Translation Input/Output Kilotavu Last In, First Out Long Term Support Least Recently Used Network File System Memory Management Unit Megatavu Page Global Directory Page Middle Directory Remote File System Reduced Instruction Set Computing Scalable Processor Architecture Teratavu Virtual Filesystem Universal Serial Bus 2

7 1 JOHDANTO Tietokoneiden kehityskaari reikäkorttitekniikasta, reletekniikan ja elektroniputkien kautta transistoritekniikkaan sekä lopulta mikroprosessoreihin on mullistanut maailman. Teknologisen kehityksen rinnalla käyttöjärjestelmien kehittyminen on ollut yhtä merkityksellistä. Ilman käyttöjärjestelmää ei modernin tietokoneen ja sen erilaisten ohjelmien käyttö olisi mahdollista. Tämän seminaarityön tutkimuskohteena on kaksi eri käyttöjärjestelmää: Solaris Unix ja Ubuntu Linux. 1.1 Taustaa Puhuminen Unix käyttöjärjestelmästä yksikössä voi olla harhaanjohtavaa, koska alkuperäinen Bell Labs yhtiön työntekijöiden kehittämä käyttöjärjestelmä on jakautunut useiden yhtiöiden omiksi Unixiin pohjautuviksi käyttöjärjestelmiksi. Siksi usein puhutaankin Unix-perheestä [1]. Unixiin pohjautuvia käyttöjärjestelmiä löytyy useilta kaupallisilta toimijoilta ja se on pohjana laajan suosion saaneelle Linuxkäyttöjärjestelmälle. 1.2 Tavoitteet ja rajaukset Seminaarityössä pyrimme esittelemään Unixin ja Linuxin kehityskaaret yleisellä tasolla ja selvittämään käyttöjärjestelmien keskeiset eroavaisuudet kurssin aikana käsiteltyjen keskeisten toiminnallisuuksien näkökulmasta. Solaris on monipuolinen käyttöjärjestelmä, joka tunnetaan nykyään nimellä Oracle Solaris ja se on Oraclen ilmoituksen perusteella markkinajohtaja Unix-palvelimissa sekä arvostettu korkeaa tietoturvaa vaativissa käyttöympäristöissä [2]. Linux-perheestä tarkasteluun valitsimme laajan käyttäjäkunnan omaavan Ubuntun jakeluversion Tavoitteemme on esitellä käyttöjärjestelmien kehityskaaret sekä perustoiminnallisuuksien eroja valittujen kahden käyttöjärjestelmän välillä. 1.3 Raportin rakenne Raportissa esittelemme vertailun kohteeksi valitut järjestelmät yleisellä tasolla. Pääluvussa käsittelemme käyttöjärjestelmien keskeisiä ominaisuuksien toiminnallisuutta ja niiden eroja. Lopuksi kokoamme yhteenvedossa keskeiset vertailussa esille nousseet erot. 3

8 2 SOLARIS-KÄYTTÖJÄRJESTELMÄN ESITTELY Solaris on Unix-käyttöjärjestelmä, jonka kehitti alun perin Sun Microsystems. Nykyisin Solarista kehittää maailman suurimpiin ohjelmistokehittäjiin kuuluva Oracle Corporation. Oracle osti Sun Microsystemsin tammikuussa 2010 [3]. Sun Microsystemsin oston yhteydessä Oraclen valikoimiin liittyi Solaris-käyttöjärjestelmän lisäksi Javaohjelmistoalusta ja MySQL-tietokannan hallintajärjestelmä, sekä laiteosaamista SPARC (Scalable Processor Architecture) -prosessoreiden muodossa. [5] Yrityskauppojen jälkeen Oracle lakkautti Sun Microsystemsin aloittaman OpenSolarisprojektin ja sen mukana käytössä olleen avoimeen kehittäjä- ja käyttäjäyhteisöön perustuvan ohjelmistolinjan. Solaris käyttöjärjestelmän lähdekoodia ei enää julkaista reaaliajassa avoimena, vaan kehitystyötä tapahtuu rajatummalla periaatteella. OpenSolarisprojektin aikana käyttöjärjestelmän lähdekoodi julkaistiin CDDL:n (Common Development and Distribution License) alaisena ja täten myös huomattava osa nykyisen ja tulevien versioiden lähdekoodista on saman lisenssin alaisena kehitettyä. [3] Tällä hetkellä uusin versio on nimeltään Solaris 10, jonka valitsimme käsiteltäväksi versioksi vertailuun. Solaris 10:n perusjakelun voi ladata ja asentaa maksutta, mutta saadakseen tukea ja päivityksiä tulee käyttäjän solmia Oracle Corporationin kanssa maksullinen tukisopimus [4]. Käyttöjärjestelmän seuraava versio Oracle Solaris 11 tullaan julkaisemaan vuonna [5] 2.1 Käyttökohteet Solaris on menestyksekkäin ja kaikkein laajimmin käytetty kaupallinen Unix-järjestelmä. Solarista käytetään pääosin yrityksissä järeissä palvelinratkaisuissa, sekä jossakin määrin supertietokoneissa, vaikka pääosin supertietokoneita pyörittävät nykyään Linuxkäyttöjärjestelmät [7]. Solaris 10:n julkaisun myötä tavoitteena oli laajentaa Solariksen käyttöä laajemmalla esimerkiksi kevyempiin laitteisiin perustuviin järjestelmiin muun muassa laajentamalla ja parantamalla tukeaan erilaisille x86- ja AMD64-pohjaisille 4

9 palvelimille. Yleisesti Solaris on hyvin skaalautuva käyttöjärjestelmä, jonka tuki erilaisille laitealustoille on kattava. [6, 8] Oracle Corporationin tuotteissa Solarista käytetään runsaasti SPARC-prosessoreilla (Scalable Processor Architecture) varustetuissa tietokoneissa. SPARC on Sun Microsystemsin kehittämä RISC-suoritinarkkitehtuuri (Reduced Instruction Set Computing). Oracle tarjoaa SPARC-prosessoreita aikakriittisiin järjestelmiin, joita käyttävät esimerkiksi maailman suurimmat teleoperaattorit ja pankit. [9, 10] 2.2 Solaris käyttöjärjestelmän ydin Solaris pohjautuu Sun Microsystemsin ja AT&T:n yhdessä kehittämään SVR4 (System V Release 4) Unix-järjestelmään. SVR4:ään yhdistettiin ominaisuuksia SVR3, 4.3BSD, Microsoft Xenis System V ja SunOS järjestelmistä. SVR4 oli lähes kokonaan uusiksi kirjoitettu versio System V:n ytimestä. Solaris tarjoaa kaikki SVR4:n ominaisuudet, sekä lisäksi paljon muita kehittyneitä ominaisuuksia, kuten täysin monisäikeistä ajoa tukevan ytimen. [6] Solariksen monoliittinen ydin sisältää kaikki käyttöjärjestelmän keskeiset toiminnot samassa ajomoduulissa. Monoliittisen ytimen etuna on sen nopeus. Jokaisella toiminnallisella komponentilla on yhteys kaikkeen ytimen tietorakenteisiin ja rutiineihin. Heikkoudeksi voi muodostua keskeisten komponenttien riippuvaisuus toisistaan yhteisen osoiteavaruuden kautta. Tästä seuraa, että vika yhdessä komponentissa voi lamaannuttaa koko järjestelmän. Toinen haaste on kehitystyön ja ylläpidon vaikeutuminen ytimen kasvaessa suureksi. Ytimen rakenne voi olla modulaarinen, vaikka itse ydin on monoliittinen. Käyttöjärjestelmämoduulit on kuitenkin sovitettava tarkasti toimimaan yhteen. Tyypillisessä monoliittisessa ytimessä jokainen moduuli ja rutiini joudutaan yhdistämään ja asentamaan uudestaan, jos yhteen tehdään muutoksia. Kuvassa 1 on kerroksittain rakentuvan monoliittisen ytimen periaatteellinen rakenne. [6, 11] Modernien Unix-järjestelmien, kuten myös Solariksen, ydin on rakenteeltaan modulaarinen. Ydin rakentuu pienistä komponenteista, jotka tarjoavat käyttöjärjestelmän prosesseille toimintoja ja palveluja. Kuva 2 selventää modulaarisen ytimen rakennetta 5

10 johon kuuluu pieni toiminnallisuuksia sisältävä ydin, joka on koodattu modulaarisesti. Yksinkertaisesti koodattu ydin tarjoaa vain tärkeimmät tehtävät ulkokehän toiminnoille ja rajapinnoille. [6] Kuva 1: Monoliittisen ytimen perusrakenne [11] Kuva 2: Unix-ytimen arkkitehtuuri [6] 3 UBUNTU-KÄYTTÖJÄRJESTELMÄN ESITTELY Ubuntu on vapaaseen lähdekoodiin perustuva vapaa käyttöjärjestelmä. Se on ilmainen ja sen lähdekoodi on kaikkien saatavilla. Ubuntun päämääränä on olla helppokäyttöinen ja helposti omaksuttava, nopea, monikäyttöinen ja turvallinen käyttöjärjestelmä. Ubuntu pohjautuu Debian GNU/Linux (GNU s Not Unix) -jakelupakettiin. Ensimmäinen versio julkaistiin lokakuussa Ubuntun kehitystyötä rahoittaa eteläafrikkalaisen Mark Shuttleworthin perustama Canonical Ltd, joka perusti vuonna Ubuntu Foundation nimisen järjestön Ubuntun kehittämisen ja tuen jatkumisen turvaamiseksi. [12,13] Ubuntu koostuu useasta vapaan lähdekoodin ohjelmistopaketista. Ohjelmapakettien lisensointi vaihtelee, mutta valtaosa on julkaistu GNU GPL (GNU General Public License) -lisenssillä. Järjestelmän ytimenä toimiva Linux-ydin on julkaistu myös GNU GPL lisenssillä (versio 2). Linux ydintä kehittää jatkuvasti lukuisat ihmiset ympäri maailmaa. [13] 6

11 Uusi versio Ubuntusta julkaistaan kuuden kuukauden välein. Kirjoitushetkellä uusin versio on (Maverick Meerkat). Raportin vertailuun valittu (Lucid Lynx) on uusin LTS-versio (Long Term Support). LTS-versioita tuetaan työpöytäkäytössä kolme vuotta ja palvelinkäytössä viisi vuotta. [13] Linux-järjestelmät ovat saavuttaneet parinkymmenen vuoden aikana laajan suosion erityyppisissä käyttöympäristöissä, sillä ne ovat modulaarisuutensa ja avoimen lähdekoodinsa ansiosta helposti optimoitavissa toimimaan tehokkaasti lähes millä vain eri laitealustalla. Ubuntu Linuxin saa palvelin-, työpöytä- ja netbook käyttöön. Työpöytäkäytössä Ubuntu on Linux jakeluista suosituin ja Web-palvelimilla Ubuntun osuus on tällä hetkellä noin 3-4 % kaikista käyttöjärjestelmistä. [14, 15] 3.1 Linux-käyttöjärjestelmän ydin Linux oli alkujaan Unix-variantti IBM PC (Intel 80386) alustalle, joka tarjosi vaihtoehdon muille Unix-järjestelmille. Kuten suurimmassa osassa Unix-järjestelmiä, on myös Unixiin pohjautuvassa Linuxissa monoliittinen ydin, jonka tyyppinen ydin löytyy myös aiemmin mainitusta Solariksesta. Lukuisat alan asiantuntijat pitävät Linux ydintä teknisesti vakuuttavana. [6] Solariksen ytimen tavoin myös Linuxin ydin on rakenteeltaan modulaarinen. Linuxin ydintä kehitettäessä on onnistuttu välttämään monoliittisuuden aiheuttamia ongelmia ja heikkouksia, kuten esimerkiksi kehitystyön työläyttä. Linux rakentuu kokoelmasta moduuleita, joita voidaan ladata ja poistaa käytöstä tarpeen vaatiessa. [6] Linuxissa ytimen käyttöön ladattavat moduulit omaavat kaksi erityispiirrettä, jotka ovat dynaaminen linkitys ja moduulien pinottavuus. Dynaaminen linkitys tarkoittaa sitä, että moduuli voidaan ladata ja yhdistää ytimeen sen ollessa käynnissä ja ladattuna muistiin. Moduuli voidaan myös irrottaa ja poistaa muistista milloin tahansa. Dynaaminen linkitys helpottaa muokkaamista ja säästää muistia. Pinottavuuden ansiosta moduulit voidaan järjestää hierarkisesti ja moduulien väliset riippuvuudet voidaan määritellä. Usealle moduulille tyypillinen samanlainen koodi voidaan siirtää yhteen moduuliin ja vähentää täten replikoiden määrää. Toisena etuna ydin voi varmistaa, ettei se poista toisen moduulin 7

12 tarvitsemaa moduulia käytöstä ja ydin voi ladata uuden ladatun moduulin vaatimat moduulit käyttöön. [6] Linux-ytimen mukautuvuuden vuoksi sen sisältämät moduulit voivat vaihdella hyvinkin runsaasti kokoonpanosta riippuen. Kuva 3 esittää IA-64-arkkitehtuurille (Intel Itanium) rakennetun Linux-ytimen pääkomponentit ja prosessien sekä komponenttien suhteet. [6] Kuva 3: Linux käyttöjärjestelmän (IA-64) pääkomponentit [6] 4 KÄYTTÖJÄRJESTELMIEN KESKEISTEN OSA-ALUEIDEN VERTAILU Olemme valinneet vertailun kohteeksi ne käyttöjärjestelmien keskeiset osa-alueet, joita pidämme merkityksellisinä verrattaessa Solarista ja Ubuntua. Tavoitteena on keskittyä oppitunneilla esille tulleisiin käyttöjärjestelmien toiminnallisuuksiin. 4.1 Prosessien hallinnan vertailu Solariksessa ja Linuxissa on paljon samaa, kuten lähtökohtainen jako käyttäjätilassa ajettaviin käyttäjän prosesseihin (ohjelmat ja apuohjelmat) ja ydintilassa ajettaviin järjestelmää ylläpitäviin järjestelmäprosesseihin (esim. muistin allokointi, prosessien 8

13 vaihto). Käyttäjäprosessi menee ydintilaan antamalla järjestelmäkutsun poikkeuksen syntyessä, tai keskeytyksen sattuessa. [16] Yleisesti prosessit tunnistetaan prosessinumeroilla, jotka käyttöjärjestelmä antaa. Tämä säilyy koko prosessin elinkaaren ajan samana, jonka jälkeen se voidaan antaa seuraavalle. Prosesseja voidaan luoda monella eri tavalla. Voidaan luoda uusi prosessi, aiemmin luodulle prosessille lapsiprosessi tai korvata olemassa oleva prosessi toisella. [17] Aiemmin kaikki prosessit (käyttäjäprosessit ym.) lähtivät yhdestä käynnistyksen yhteydessä luotavasta emoprosessista, init:istä. Yleisesti vanhemmissa Unix-järjestelmissä ja monissa Linux-jakeluissakin käytetään System V:n tyylisiä init-ohjelmia. Koska inittyyppinen ratkaisu on vanhanaikainen ja estää muun muassa joustavamman laitteiden vaihdon ilman prosessin uudelleen käynnistämistä, on uudemmissa käyttöjärjestelmissä kehitetty erilaisia ratkaisuja prosessien hallintaan. Ubuntun käyttää Upstart nimistä init:n korvaajaa, joka on taaksepäin yhteensopiva init-skriptien kanssa. Siinä idea perustuu tapahtumapohjaiseen palveluiden hallintaan, jolloin esimerkiksi laitteen lisäys (tapahtuma) saa aikaan sen valmistelemisen käytettäväksi, vaikkei sitä olisikaan merkitty tehtäväksi järjestelmän käynnistämisen yhteydessä. Yleisesti tapahtuma on yksinkertainen merkkijono, jossa on tietoa muutoksesta sitä hoitavalle prosessille. Suoritettavat tehtävät jaetaan järjestelmässä kahteen osaan, skripteihin (tai binääreihin), jotka ajetaan tapahtuman sattuessa ja palveluihin, jotka aloitetaan ja keskeytetään tapahtumien ilmaantuessa. Tapahtumat laukaisevat usein uusia tapahtumia, jolloin esimerkiksi USB-mokkulan (Universal Serial Bus) liittäminen koneeseen saa ytimen havaitsemaan sen, muokkaamaan verkon asetukset sopiviksi ja IPosoitteen (Interner Protocol) saatuaan yhdistämään palvelimeen ja käynnistämään erilaisia palveluita. Eli aina kun järjestelmä sammutetaan, suljetaan tai tehtävän tila muuttuu, Upstart alkaa toimia. [18] Solariksen versiosta 10 lähtien init-skriptit korvattiin SMF:llä (Service Management Facility), joka luo yhtenäisemmän mallin palveluille ja niiden tiloille aiempaan verrattuna. Tavoitteena on palveluiden hallinnan ongelmien vähentäminen ja parantaa 9

14 järjestelmänvalvojan mahdollisuuksia tarkastella ja hallita käynnissä olevia palveluita sekä tutkia mahdollisia ohjelmistovirheitä. [19] Keskeisenä erona käyttöjärjestelmien välillä prosessien hallinnassa on Upstartin painottuminen helpottamaan kotikäyttäjän ongelmien ratkaisua (laitteiden tunnistus ja automatisointi) ja Solaris palvelinpuolen ohjelmana keskittyy seurantajärjestelmän ja diagnostiikkatyökalujen tasaiseen ja virheettömään toimintaan. 4.2 Tiedostojärjestelmien vertailu Tiedostojärjestelmän tehtävänä on tarjota alusta tiedon tallennukselle, muokkaamiselle ja poistamiselle erilaisilla tallennusmedioilla. Koska tiedostojärjestelmä muodostaa usein järjestelmän pullonkaulan, on sen pystyttävä käsittelemään tiedostoja nopeasti ja luotettavasti. Taulukosta 1 voimme nähdä Solariksen ja Ubuntun tiedostojärjestelmien perustietoja. Tiedostojärjestelmä Linux (Ext4) Solaris (ZFS) Suurin järjestelmän koko 1 EB (16 TB) 16 EB Suurin tiedoston koko 16 TB 16 EB Suurin tiedostojen määrä 4*10^9 2,8*10^14 Suurin alikansioiden määrä ,8*10^14 Tuetut käyttöjärjestelmät Linux Solaris, OpenSolaris, FreeBSD, Mac OS X Server 10.5, Linux Taulukko 1: Tiedostojärjestelmien tunnuslukuja [20, 21] Linuxin tiedostojärjestelmät Linuxin tiedostojärjestelmä on rakennettu mahdollisimman joustavaksi. Valitsimme vertailun kohteeksi tässä yhteydessä Ext-perheen (Extended filesystem) uusimman vuonna 2006 julkaistun version Ext4. 10

15 Linuxin tiedostojärjestelmä koostuu kuvan 4 esittämällä tavalla kolmesta osasta. Virtuaalinen tiedostojärjestelmä (VFS, Virtual File System), joka toimii tulkkina käyttöjärjestelmän ja yksilöllisen tiedostojärjestelmän (individual filesystem) välillä. Puskurivälimuisti (buffer cache) tallettaa tiedostojärjestelmän hakemia tietoja nopeuttaakseen tiedon hakua vähentämällä fyysisen levyn käyttöä. [22] VFS toimii tulkkina käyttöjärjestelmän ja tiedostojärjestelmän välillä, sekä mahdollistaa tiedostojärjestelmän joustavuuden. Se myös takaa Ext4:n taaksepäin yhteensopivuuden vanhempien Ext-versioiden kanssa. Tiedostojärjestelmien on toimitettava tarvittavat rajapinnat VFS:lle. Jokainen tiedostojärjestelmään liitetty laite tai osio mallinnetaan superblock-tietorakenteella. Tämä rakenne sisältää tiedot käytettävästä laitteesta. [22] Kuva 4: Linuxin tiedostojärjestelmän rakenne, suhteessa käyttöjärjestelmään [22] Ext4 on ns. kirjaa pitävä tiedostojärjestelmä (journaling filesystem) eli kaikista tiedostoihin tehdyistä muutoksista pidetään kirjaa. Tämä helpottaa tietojen palautusta järjestelmän kaatuessa. Lisää turvaa tuo kirjanpidosta (journal) laskettu tarkistussumma. Blokkeja käsitellään suurempina yksikköinä. Yksiköt ovat nimeltään extenttejä ja voivat olla kooltaan esimerkiksi 100 MB (megatavu). Tämä vähentää levykartan kokoa, sillä vapaa tila voidaan vapaiden blokkien sijasta listata vapaina extentteinä. Blokkien jako suuremmiksi yksiköiksi pienentää tiedon sirpaloitumista. Ext4 tukee myöhäistä allokointia eli tiedosto kirjataan ensin välimuistiin ja vasta, kun on luultavaa, ettei tiedostoa enää muuteta, se kirjoitetaan levylle. Tämä mahdollistaa usean blokin allokoinnin yhdellä 11

16 funktion kutsuntakerralla, joka nopeuttaa järjestelmää. Ext4 on myös edeltäjiään kehittyneempi, koska se mahdollistaa allokointialgoritmin valinnan tiedostokoon mukaan. [23, 24, 25] Tiedostojärjestelmän ja ajureiden välissä on tiedostopuskuri, joka tallentaa usein haettuja tiedostoja välimuistiin. Tämä nopeuttaa tiedonhakua, sillä levyltä tarvitsee lukea harvemmin. Kaikki laitteet jakavat saman välimuistin, mutta laitteilla voi olla omat puskurinsa. Puskureita hallitaan lajittelemalla data käytön mukaan. Tiedon poistaminen puskurista tapahtuu LRU listan (Least Recently Used) perusteella. [22] Solariksen tiedostojärjestelmä ja vertailua Solariksen tiedostojärjestelmä käyttää VFS:ää kuten Linuxikin. Vertailuun olemme valinneet ZFS:n, joka ei käsittele laitteita Linuxin tapaan erillisinä vaan kaikki laitteet liitetään samaan tiedostojärjestelmään eli Z-pooliin. Data yritetään jakaa kaikille laitteille tasaisesti, ja näin varmistetaan mahdollisimman suuri kaistannopeus siirroissa. [27] Datan oikeellisuutta pyritään Ext4:ssä varmistamaan tiedostojärjestelmän muutosten kirjaamisella (journaling). Järjestely lisää tukevaa dataa (overhead) ja siksi Solariksessa tiedon oikeellisuutta pyritään varmistamaan erityisellä siirron käsittelyllä (transactional filesystem). ZFS:ssä tiedosto joko siirretään täydellisesti tai ei ollenkaan. Tämän ansiosta järjestelmän kaatuessa osittaista dataa ei voi jäädä levylle. Datan palautukseen ZFS esittää vain lukuoikeudella varustettuja kopioita (snapshot) tiedostojärjestelmästä. Ext4:ssä tällaista toiminnallisuutta ei ole. [27] Z-pool on jaettu laitekohtaisiin osioihin (metaslab). Jokainen metaslab sisältää tiedon vapaista blokeistaan. Sopivan sektorin löydyttyä data jaetaan blokkeihin first fit - algoritmillä. Tämän menettely on periaatteessa Ext4:n extent -jakoa nopeampi. [28, 29] Linuxin puskuroinnista vastaa ydin ja Solariksessa ZFS hoitaa tiedostojen puskuroinnin. ZFS:n puskureita hallitaan lajittelemalla tiedostot ARC-menetelmällä (Adaptive Replacement Cache). ARC sisältää listan eniten sekä vähiten käytetyille tiedostoille. Tiedon pudotessa pois listoilta, se lisätään vastaavalle haamulistalle. [28, 29] 12

17 Taulukossa 2 on esitetty tiedostojärjestelmien nopeuksia ja voimme havaita, että Ext4 peittoaa ZFS:n suoritettaessa I/O-operaatioita (Input/Output) peräkkäiselle datalle. Kun siirrytään kirjoittamaan satunnaisia I/O-operaatioita on ZFS nopeampi. Lisäksi on huomioitava, että ZFS kuluttaa enemmän prosessorin tehoa kuin ext4. [30] Taulukko 2: Vertailu tietoa (Solaris Ubuntu) [30] Peräkkäiset I/O-operaatiot EXT (MB/sec) (MB/sec) ZFS 69.9 (MB/sec) 72.1 (MB/sec) Satunnaiset I/O-operaatiot EXT4 2.1 (MB/sec) 1.45 (MB/sec) ZFS 3.3 (MB/sec) 1.95 (MB/sec) Tehokkuus tehtäessä sekä kirjoitusta että lukua EXT (MB/sec) 5700 (op/%cpu) ZFS 2241 (MB/sec) 1955 (op/%cpu) 4.3 Komentorajapintojen vertailu Prosessorilla on mahdollista ajaa käskyjä useissa eri tiloissa rajatuilla tai täysillä oikeuksilla. Järjestelmäkutsurajapinnan tarkoituksena on antaa käyttäjälle tai ohjelmalle mahdollisuus käyttää käyttöjärjestelmän tarjoamia palveluita. Tällaisia palveluja ovat esimerkiksi tiedostojärjestelmiin liittyvät komennot. Ytimen sisässä olevia toimintoja ei voida kutsua suoraan, siksi väliin tarvitaan komentorajapinta [31]. Käyttöjärjestelmät voivat sisältää satoja systeemi kutsuja, esimerkiksi Linuxissa niitä on yli 300. Rajapinnat systeemikutsuille ovat usein prosessoriarkkitehtuurikohtaisia. Keskeisin haaste rajapinnalle onkin saada eri prosessitiloissa ajettavat komennot toimimaan yhteistyössä. [32] Linuxin ja Solariksen komentorajapintojen toiminta Linuxilla C-kirjasto toimii yleensä selkärankana. Käyttäjän ohjelma kutsuu C-kirjastoa, kirjasto siirtää argumentit ytimelle ja kutsuu haluttua toiminnallisuutta. Kuvan 5 13

18 mukaisesti: rekisterin avulla tunnistetaan mitä funktiota tulisi käyttää. Rekisteristä löytyy komennon tunniste, nimi sekä funktion sijainti. Ydin palauttaa tiedon c-funktion kautta käyttäjälle. [32] Kuva 5: Komentorajapinnan rakenne Linuxissa [32] Koska käyttäjä pääsee käsiksi vain tasolle 3, tarvitaan menetelmä kutsua 0-tasolla liikkuvaa ytimen koodia ylemmiltä tasoilta. Aikaisemmin käytettiin pelkästään hidasta keskeytyskomentoa, johon liitettiin halutun käskyn tunnus. Nykyään käytössä on SysEnterkomento, joka vie komennon 0-alueelle ja SysExit-komento suorittaa siirtymän toisinpäin. [33] Näiden kahden menetelmän lisäksi voidaan käyttää /proc tiedostojärjestelmää. Tämä menetelmä käyttää virtuaalisia tiedostoja kommunikointiin käyttäjäalueen ja ytimen välillä. Tiedoston avulla voidaan sekä siirtää tietoa ytimelle näyttää tietoa [34]. Solariksen rajapinta toimii pääosin samalla tavalla kuin Linuxissa. Rajapinta onkin enemmän arkkitehtuuri riippuvainen kuin käyttöjärjestelmä. Solariksessa voidaan myös käyttää /proc-tiedostojärjestelmää tai ohjelmointikirjastoa komentorajapintana. [35] 4.4 Muistinhallinnan vertailu Muistinhallinnaksi kutsutaan järjestelmää, jolla käyttöjärjestelmä jakaa muistikapasiteettia suoritettavien prosessien kesken. Muistinhallinnalla on seuraavat viisi keskeistä päämäärää muistin käsittelyn suhteen. Nämä ovat uudelleensijoitus, suojaus, jako, looginen järjestely ja fyysinen järjestely. Käytännössä useinkaan samanaikaisia prosesseja ja tietorakenteita ei 14

19 saa mahdutettua nopeaan keskusmuistiin. Koska prosessori on hyvin nopea ja muistit yleensä hitaampia, nopeusero aiheuttaa jatkuvan suoritinajan vajaakäytön, jos sujuvaa tietojen vaihtoa muistien välillä ei ole toteutettu kunnolla. Yleinen ratkaisu ongelmaan on virtuaalimuisti, jossa annetaan prosesseille näennäisesti yhtenäinen ja rajaton muistiavaruus levylle. [36] Todellisuudessa hitaammalla muistilla (esimerkiksi kiintolevy) sijaitseva virtuaalimuistin osa tuodaan aina tarvittaessa keskusmuistiin. Tällöin itse prosessin ajo nopeutuu sen tietämättä varsinaisista laitetasolla tapahtuneista käyttöjärjestelmän tekemistä muistinhallintaan liittyvistä toimista. Muistinhallinta toteutetaan yleensä sivutuksella, segmentoinnilla tai näiden yhdistelmällä. [36] Linuxin virtuaalisessa muistin sivutuksessa keskusmuisti jaetaan samankokoisiin kehyksiin. Kukin prosessi jaetaan edelleen samankokoisiin sivuihin kuin keskusmuistin kehykset. Näin toimittaessa prosessia ei tarvitse viedä tarvittaessa kuin sivu kerrallaan keskusmuistiin (demand paging). [36] Muistinhallinnan perusrakenteet Solariksen objektit hallitsevat fyysisiä tauluja (jokaisella prosessilla oma sivutaulu), jotka on helppo liittää niitä hallitsevaan objektiin. Kaikkien tiedosto-objektien perustana oleva virtuaalinen tiedosto, vnode tarjoaa tiedostojärjestelmä- ja laitteistoriippumattoman pinnan ytimelle. Se voi kuvata siis riippumattomasti monia fyysisiä ja loogisia laitteita ja allokoituja fyysisiä sivuja. [37] Linuxin muistinhallinta perustuu kolmikerroksiseen sivutaulukkojärjestelmään. Jos järjestelmä arkkitehtuuri ei tue sitä, taulukkojärjestelmää emuloidaan. Prosessissa sivujen tunnistus tapahtuu enemmän niiden listojen mukaan, millä ne esiintyvät ja niillä lipuilla, millä ne on merkitty. Muistinhallinnan perusyksikkönä ovat solmut joiden alapuolella sijaitsevat käyttötarkoitusten mukaiset alueet, jotka sisältävät tiedon varsinaisista fyysisistä sivuista (struct pages). [38] 15

20 Kuvassa 6. on periaate Solariksen muistinhallinnasta. Solariksessa Hardware Address Translation -kerros (HAT) toimii fyysisen keskusmuistin ja sivujärjestelmän välillä. HAT on laitteistoriippuvainen kerros, jonka yläpuolella Address Space Management kerros (ASM) huolehtii osoiteavaruuden hallinnasta. Sivujen ja lineaarisen osoiteavaruuden välinen vaihto on muistisegmenttien hallinnassa, jotka ovat muistiosoitteen ja sen pituuden kuvauksia laitteelle. Oliopohjaisia segmenttirajapintoja käytettäessä segmenttiajurit tarjoavat laitteistosta riippumattoman näkymän laitteelle, josta segmentti on kuvattu. Kuva 7: Solariksen virtuaalimuistin kerrokset [38] Linux-käyttöjärjestelmässä käytännössä jokainen prosessi on osoitin omaan PGD:hen (Page Global Directory). PGD:n jokainen aktiivinen merkintä viittaa sivuun (PMD, Page Middle Directory), joka sisältää ryhmän merkintöjä. PMD-merkinnät viittaavat useisiin sivutauluihin, jotka viittaavat varsinaista tietoa sisältäviin sivuihin. Jokainen osoite voidaan siis jakaa osiin niin, että sieltä löytyvät kaikkien kolmen kerroksen ja varsinaisen datan sisältävän sivun sijainnit (Offset). Viittauksissa on omat bittinsä suojaukselle ja esimerkiksi yli 4Gb:n muistimäärän kohdistamiselle. [38] Linuxin ja Solariksen käyttämiä algoritmeja Solariksen muistinhallinnan tyypillinen komponentti on sivunpoisto-skanneri (page scanner). Sen tehtävänä on etsiä ja päättää, mitkä sivut vapautetaan muistin lisäämiseksi, kun muistin määrä alittaa määrätyn raja-arvon. Skanneri käy läpi sivuja ja siirtää edellisen 16

21 ja uuden tarkastelun välissä käyttämättömäksi jääneitä sivuja hitaaseen muistiin. Skanneri käynnistyy myös pyydettäessä muistia käyttöön ja kun vapaiden paikkojen lista on määrätyn kynnyksen alapuolella. [39] Linuxin pääalgoritmia fyysisten sivujen hallintaan ja sijoitteluun kutsutaan Binary Buddy Allocatoriksi (BBA). Sen ideana on jakaa muisti moneen sivuista koostuvaan ryhmään, joissa olevien sivujen määrä on aina jokin toisen potenssi. Jos halutun kokoista ryhmää ei ole saatavilla, suuri ryhmä jaetaan kahtia, kunnes saadaan tarvitun kokoinen. [38] Yleissijoitusalgoritmina toimii kummassakin käyttöjärjestelmässä samantyyppinen Slab Allocator algoritmi. Sen ideana on usein käytettyjen objektien pitäminen alustetussa tilassa ytimen käytettävissä. Tällöin ei tuhlata aikaa saman tiedon sijoittamiseen, alustamiseen ja vapauttamiseen uudelleen ja uudelleen sekä pidetään muistin sisäinen hajautuminen minimissä. [38] Linuxin monikerrosjärjestelmän rakenteesta johtuen sivujen vapautus vie paljon (suoritin)aikaa ja sitä tehdään usein. Prosessia pyritään nopeuttamaan erilaisten sivutauluja sisältävien sivujen käytöllä (ns. pikalistat). Yksi menetelmä on esimerkiksi LIFO (Last In, First Out). [40] Virtuaaliosoitteet ja heittovaihto Linuxin ydin on yleensä kokonaan ladattu keskusmuistiin (Low memory), jossa sille osoitetusta tilasta virtuaaliosoitteiden sivutaulut vievät eniten. Ydin ei voi suoraan muokata muistia (High memory), joka ei ole kartoitettuna sen osoiterekisteriin. Toisin sanoen se tarvitsee jokaiselle muistille oman virtuaaliosoitteen, johon sen täytyy olla suoraan yhteydessä. Siksi 32-bittinen prosessori voi kyllä käyttää Linuxin osoitelaajennuksilla suurempaa kuin 1GB:n fyysistä muistia, mutta sen täytyy aina tarvittaessa kartoittaa tilapäinen virtuaaliosoite ytimen virtuaaliosoitteistoon ja vapauttaa se käytön päätyttyä seuraaville väliaikaisille virtuaaliosoitteille. Solariksella on käytössään 64-bittinen osoiteavaruus, jolloin se pystyy hyödyntämään paljon suurempaa muistimäärää. Siksi yleensä sen kaikki fyysiset osoitteet on voitu kääntää pysyvästi virtuaalisiksi. [41] 17

22 Swap-osio on tarpeellinen keskusmuistin suuruudesta riippumatta, koska huomattava osaa prosessien alkuvaiheessa käyttämistä sivuista jää usein myöhemmin käyttämättä. Nämä passiiviset osat on tarkoituksenmukaista siirtää swap-osiolle ja vapauttaa näin tilaa keskusmuistista. Kun sivu on siirretty hitaammalle muistille, Linux käyttää vastaavaa sivutaulua löytääkseen sen myöhemmin uudelleen levyltä. [42] Ubuntu 10.04:ssa aluetta, johon sivut varmuuskopioidaan kutsutaan ns. swap-osioksi. On hyvin tärkeää, että aina oikea sivu siirretään swap-osioon, koska hitaaseen muistiin siirrot vievät paljon aikaa. Linux käyttää nimestä huolimatta sivutusta, eikä siirrä kerralla koko prosessia swap-osiolle. [42] Kun Solariksen skannerin toiminta ei riitä, käytetään myös swappausta (hieman eri merkityksessä, kuin Linuxin tapauksessa). Kaikki prosessin rakenteet ja sille varatut sivut siirretään keskusmuistista ja vaihdetaan liput vapaan tilan merkiksi. Tämä on edullinen tapa säästää keskusmuistia, mutta vaikuttaa dramaattisesti prosessien toimintaan. [37] 5 YHTEENVETO Solaris Unixia kehittää pörssiyhtiö Oracle Corporation, kun taas Ubuntu Linuxia harrastajayhteisö, jota rahoittaa voittoa tavoittelematon Canonical Ltd. Tämä on näkyvin ero Ubuntun ja Solariksen välillä. Solariksen kehitystyössä on keskitytty Ubuntua enemmän yrityskäytössä tarvittaviin ominaisuuksiin, kuten esimerkiksi prosessinhallinnan diagnostiikkatyökaluihin. Solariksen ja Ubuntun rakenne on pääosin samankaltainen. Molemmissa on esimerkiksi samantyyppinen ydin, samanlainen tiedostojärjestelmärajapinta, samantyylinen komentorajapinta ja muistinhallinnan pääpiirteet. Toimintojen suorittamiseksi on löydetty yleiset hyvät käytännöt, joita molemmat käyttöjärjestelmät hyödyntävät. Yleisesti ottaen Solaris käyttää uudenaikaisempia ratkaisuja kuin Ubuntu. Syvemmälle mentäessä löytyy enemmän eroavaisuuksia, kuten tiedostojärjestelmien tapa käsitellä laitteita, mutta niihin ei työn pituuden puitteissa kyetty syventymään. 18

23 6 LÄHTEET 1. Paasiala Liisa, UNIX:n historia miten ja miksi UNIX syntyi? /tkhist/k2000/alustukset/unix_hist/unix_historia.htm, viitattu Oracle, Overview and Frequently Asked Questions, 2010, viitattu Wikipedia, Solaris (operating system), viitattu Oracle, Solaris Operating System Licensing Policies, viitattu Oracle, Oracle Outlines Next Major Release of Oracle Solaris, Oracle Press Release, Oracle Openworld, San Francisco Sept. 20, 2010, saatavilla /us/corporate/press/173478, viitattu Stallings W., Operating Systems: Internals and Design Principles (6th edition), Pearson Education, 2008, sivut Leidenius K., Linux jyrää supertietokoneissa, Tietokone , linux_jyraa_supertietokoneissa, viitattu Lipschutz R.,Solaris 10, PC Magazine, saatavilla viitattu Leidenius K., 16 ytimen prosessorilla vauhtia Oraclen palvelimiin, _palvelimiin, viitattu Wikipedia, SPARC, viitattu Stallings W., Operating Systems: Internals and Design Principles (6th edition), Pearson Education, 2008, sivut Ubuntun kehittäjän sivut, Canonical Ltd., viitattu Wikipedia, Ubuntu (operating system), (operating_system), viitattu

24 14. Digitoday, Nokian Maemosta tulee Meego, , viitattu Built With, Ubuntu Usage Statistics, Marraskuu 2010, viitattu Stallings W., Operating Systems: Internals and Design Principles (6th edition), Pearson Education, 2008, sivu Jones, M.Tim, Anatomy of Linux Process Management, viitattu Remnant S. J., Replacing init with Upstart, , viitattu Wikipedia, Service Management Facility, viitattu Wikipedia, ZFS, viitattu Wikipedia, Ext4, viitattu Jones M Tim, Anatomy of Linux Filesystem, saatavilla, /developerworks/linux/library/l-linux-filesystem/,viitattu Jones M Tim, Anatomy of Linux Journaling Filesystem viitattu Jones M Tim, anatomy of ext 4 viitattu M.Cao ext4: The Next Generation of Ext2/3 Filesystem Jones M Tim, Anatomy of Linux Filesystem, viitattu Oracle, Oracle Solaris ZFS Administration guide, 2010, luvut 1 ja Jeff B., ZFS Block Allocation, viitattu McDougall R., Mauro J., Solaris Internals: Solaris 10 and OpenSolaris Kernel Architecture, Second Edition, luvut 14.1 ja

25 30. Dominique, A Heger, Workload Dependent performance evaluation of BTRFS and ZFS filesystems, DHTechnologies, CMG09DHT.pdf, viitattu Wikipedia, System call, viitattu Jones M. Tim, Kernel command using Linux system calls, developerworks/linux/library/l-system-calls/, viitattu Grag M., Sysenter Based System Call Mechanism in Linux 2.6, viitattu Jones M. Tim, Access the Linux kernel using the /proc filesystem, viitattu McDougall R., Mauro J., SolarisTM Internals: Solaris 10 and OpenSolaris Kernel Architecture, 2006, Second Edition, Prentice Hall, Appendix B&C 36. Stallings, W.: Operating systems, internals and design principles, 6th ed., Prentice Hall, Luku Sun Microsystems, The Solaris Memory Systems, viitattu Mel Gorman, Understanding the Linux Virtual Memory Manager, 1st ed, Prentice Hall, 2004, kappaleet 3, McDougall R., Mauro J., SolarisTM Internals: Solaris 10 and OpenSolaris Kernel Architecture, 2006, Second Edition, Prentice Hall, luku Wikipedia, LIFO, viitattu Shulyupin, C., Memory Management in Linux, 15-sect-1.shtml, viitattu The Linux Documentation Project, MANAGEMET, viitattu

Jouko Nielsen. Ubuntu Linux

Jouko Nielsen. Ubuntu Linux Jouko Nielsen Ubuntu Linux 19.4.2017 SISÄLLYS 1 UBUNTU... 3 2 LUETTELO VERSIOISTA... 4 3 OMINAISUUDET... 4 4 ASENNUS... 5 5 UBUNTU SERVER... 9 LÄHTEET... 10 3 1 UBUNTU Ubuntu on debian pohjainen Linux

Lisätiedot

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

Historiaa. Unix kirjoitettiin kokonaan uudestaan C-kielellä 1973. Unix jakautui myöhemmin System V ja BSDnimisiin. Kuutti, Rantala: Linux Historiaa Linux on Unix-yhteensopiva käyttöjärjestelmä. Unixin perusta luotiin 1964 MIT:ssa aloitetussa MULTICS-projektissa (http://www.cs.helsinki.fi/u/kerola/tkhist/k2000/alustukset/unix_hist/unix_historia.htm)

Lisätiedot

Käyttöjärjestelmät: prosessit

Käyttöjärjestelmät: prosessit Käyttöjärjestelmät: prosessit Teemu Saarelainen Tietotekniikka teemu.saarelainen@kyamk.fi Lähteet Stallings, W. Operating Systems Haikala, Järvinen, Käyttöjärjestelmät Eri Web-lähteet Käyttöjärjestelmä

Lisätiedot

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

Linux. 00 Keskeiset piirteet. Unix ja Linux Helsingin ammattikorkeakoulu Stadia Vesa Ollikainen (muokannut M.Mäki-Uuro) Kysymyksiä Linux 00 Keskeiset piirteet Tux-pingviinin kuva: Larry Ewing, Simon Budig ja Anja Gerwinski Kysymyksiä 1. Mikä Linux on? 2. Kuinka Linux syntyi ja kehittyy? 3. Mitkä ovat Linuxin vahvuudet? 2 1 Linux on

Lisätiedot

Linuxissa uusi elämä 1

Linuxissa uusi elämä 1 17.06.19 Linuxissa uusi elämä 1 Linux on hyvä vaihtoehto Windowsille Uusiin tai vanhempiin tietokoneisiin Miksi käyttäisin Linuxia Tekniikan Maailman Linux vinkki Siirtyisinkö Linuxiin? 17.06.19 Linuxissa

Lisätiedot

KYMENLAAKSON AMMATTIKORKEAKOULU. Ubuntu. Yukun Zhou

KYMENLAAKSON AMMATTIKORKEAKOULU. Ubuntu. Yukun Zhou KYMENLAAKSON AMMATTIKORKEAKOULU Ubuntu Yukun Zhou 2014 Yukun Zhou Harjoitustyö 1 SISÄLLYSLUETTELO 1. YLEISTÄ... 2 2. JULKAISUT... 3 3. SUOSIO... 4 4. ASENNUS... 4 5. TURVALLISUUS... 4 6. PAKETTIENHALLINTA...

Lisätiedot

Käyttöjärjestelmän rakenne

Käyttöjärjestelmän rakenne Käyttöjärjestelmän rakenne Tietokonejärjestelmä = Laitteisto + ohjelmisto Sovellus saa laitteiston käyttöönsä kj:n avustuksella CPU ja muisti Oheislaitteet KJ tarjoaa laitteiston käytössä tarvittavat palvelunsa

Lisätiedot

Pertti Pennanen DOKUMENTTI 1 (5) EDUPOLI ICTPro1 29.10.2013

Pertti Pennanen DOKUMENTTI 1 (5) EDUPOLI ICTPro1 29.10.2013 Virtualisointi Pertti Pennanen DOKUMENTTI 1 (5) SISÄLLYSLUETTELO Virtualisointi... 2 Virtualisointiohjelmia... 2 Virtualisointitapoja... 2 Verkkovirtualisointi... 2 Pertti Pennanen DOKUMENTTI 2 (5) Virtualisointi

Lisätiedot

CT50A2602 Käyttöjärjestelmät Seminaarityö. Tietokoneen muisti nyt ja tulevaisuudessa

CT50A2602 Käyttöjärjestelmät Seminaarityö. Tietokoneen muisti nyt ja tulevaisuudessa CT50A2602 Käyttöjärjestelmät Seminaarityö Tietokoneen muisti nyt ja tulevaisuudessa Jyrki Eurén Raimo Asikainen Janne Laitinen Teppo Lapinkoski Manu Toivanen Pasi Ruuth Johdanto Taustaa Työn taustana ryhmän

Lisätiedot

WINE API ja Virtualisointiohjelmistot

WINE API ja Virtualisointiohjelmistot WINE API ja Virtualisointiohjelmistot Yleistä Winestä Ohjelmisto, joka mahdollistaa Windows -pohjaisten ohjelmien käytön kuissa käyttöjärjestelmissä Toimii yhteensopivuuskerroksena ohjelman ja käyttöjärjestelmän

Lisätiedot

Käyttöjärjestelmät. Teemu Saarelainen Tietotekniikka teemu.saarelainen@kyamk.fi

Käyttöjärjestelmät. Teemu Saarelainen Tietotekniikka teemu.saarelainen@kyamk.fi Käyttöjärjestelmät Teemu Saarelainen Tietotekniikka teemu.saarelainen@kyamk.fi Lähteet Stallings, W. Operating Systems Haikala, Järvinen, Käyttöjärjestelmät Eri Web-lähteet Kurssin sisältö Johdanto, historiaa

Lisätiedot

Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS

Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS Käyttöjärjestelmät t I Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS Stallings, Luku 7 KJ-I S2005 / Tiina Niklander; kalvot Auvo Häkkinen 5-1 Sisält ltöä (Luennot 5&6) Yleistä muistinhallinnasta (luku

Lisätiedot

Tietojenkäsittelyn perusteet 2. Lisää käyttöjärjestelmistä

Tietojenkäsittelyn perusteet 2. Lisää käyttöjärjestelmistä Tietojenkäsittelyn perusteet 2 Lisää käyttöjärjestelmistä 2011-02-09 Leena Ikonen 1 Systeemiohjelmat Systeemiohjelmiin kuuluvat Kääntäjät ja tulkit (+debuggerit) Käyttöjärjestelmä Linkittäjät Lataajat

Lisätiedot

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

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka. Joni Korjala APACHE WWW-PALVELIN Seminaarityö 2012 KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka Joni Korjala APACHE WWW-PALVELIN Seminaarityö 2012 SISÄLLYS 1 JOHDANTO 3 2 WWW-PALVELIMEN TOIMINTA 4 3 OMINAISUUDET

Lisätiedot

Ongelma(t): Miten tietokoneen käyttöjärjestelmä toimii sisäisesti, jotta resurssit saadaan tehokkaaseen käyttöön?

Ongelma(t): Miten tietokoneen käyttöjärjestelmä toimii sisäisesti, jotta resurssit saadaan tehokkaaseen käyttöön? Ongelma(t): Miten tietokoneen käyttöjärjestelmä toimii sisäisesti, jotta resurssit saadaan tehokkaaseen käyttöön? 2013-2014 Lasse Lensu 2 Systeemiohjelmat ovat tietokoneen laitteistoa lähellä olevia ohjelmia,

Lisätiedot

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka Kristopher Vuorela UBUNTUN ASENNUS JA ALKEET 206101312 Linux järjestelmät Lukukausi: Kevät 2015 Työ valmistui: 15.04.2015

Lisätiedot

Ongelma(t): Jotta tietokone olisi mahdollisimman yleiskäyttöinen ja suorituskykyinen, niin miten tietokoneen resurssit tulisi tarjota ohjelmoijalle,

Ongelma(t): Jotta tietokone olisi mahdollisimman yleiskäyttöinen ja suorituskykyinen, niin miten tietokoneen resurssit tulisi tarjota ohjelmoijalle, Ongelma(t): Jotta tietokone olisi mahdollisimman yleiskäyttöinen ja suorituskykyinen, niin miten tietokoneen resurssit tulisi tarjota ohjelmoijalle, sovellusohjelmille ja käyttäjille? 2012-2013 Lasse Lensu

Lisätiedot

Pikaintro käyttöjärjestelmiin

Pikaintro käyttöjärjestelmiin Tietotekniikan laitos Jyväskylän yliopisto TIES406 Tietotekniikan opintojen aktivointi, luento 17.8.2011 Outline Tietokonelaitteisto 1 Tietokonelaitteisto 2 3 4 Outline Tietokonelaitteisto 1 Tietokonelaitteisto

Lisätiedot

Luento 1 (verkkoluento 1) Tietokonejärjestelmä

Luento 1 (verkkoluento 1) Tietokonejärjestelmä Luento 1 (verkkoluento 1) Tietokonejärjestelmä Järjestelmän eri tasot Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä This image cannot currently be displayed.

Lisätiedot

ltöä (Luennot 5&6) Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS Pikakertaus: : a) b) c) Dyn.. part.: sijoitus Kuva Buddy System: esimerkki

ltöä (Luennot 5&6) Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS Pikakertaus: : a) b) c) Dyn.. part.: sijoitus Kuva Buddy System: esimerkki Käyttöjärjestelmät t I Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS Stallings, Luku 7 Sisält ltöä (Luennot 5&6) Yleistä muistinhallinnasta (luku 7.1) Yksinkertainen muistinhallinta a) kiinteät partitiokoot

Lisätiedot

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

SISÄLLYS 1 YLEISTÄ VERSIOT Tukiaika Variaatiot OHJELMISTO Paketinhallinta Komentorivisyntaksi Niko Junnila (1501883 TI15SPELI) Ubuntu Seminaarikooste Linux-järjestelmät Marraskuu 2016 SISÄLLYS 1 YLEISTÄ... 3 2 VERSIOT... 3 2.1 Tukiaika... 3 2.2 Variaatiot... 4 3 OHJELMISTO...4 3.1 Paketinhallinta...4

Lisätiedot

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

Linux rakenne. Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat Linux rakenne Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat Linux ydin Ytimen (kernel) päätehtävä on tarjota rajapinta

Lisätiedot

KYMENLAAKSON AMMATTIKORKEAKOULU

KYMENLAAKSON AMMATTIKORKEAKOULU 1 KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka Ole Halonen GNU-ohjelmointityökalut Linux-järjestelmät 206101310 Seminaarityö 22.11.2012 2 Sisällysluettelo 2 1 Johdanto

Lisätiedot

CUDA. Moniydinohjelmointi 17.4.2012 Mikko Honkonen

CUDA. Moniydinohjelmointi 17.4.2012 Mikko Honkonen CUDA Moniydinohjelmointi 17.4.2012 Mikko Honkonen Yleisesti Compute Unified Device Architecture Ideana GPGPU eli grafiikkaprosessorin käyttö yleiseen laskentaan. Nvidian täysin suljetusti kehittämä. Vuoden

Lisätiedot

Avoimen lähdekoodin kehitysmallit

Avoimen lähdekoodin kehitysmallit Avoimen lähdekoodin kehitysmallit Arto Teräs Avoimen lähdekoodin ohjelmistot teknisessä laskennassa -työpaja CSC, 25.5.2009 Avoimen lähdekoodin kehitysmallit / Arto Teräs 2009-05-25

Lisätiedot

TI10 Joni Hämäläinen & Jan Lampikari

TI10 Joni Hämäläinen & Jan Lampikari Seminaarityön raportti 1(11) Opintojakso: Linux Perusteet Opettaja: Tomi Pahula Opintojakson toteutus: Syksy 2012 Opintojakson seminaarityö: 21.11.2012 Opiskelijaryhmä: Opiskelijat: Raportti palautettu:

Lisätiedot

Concurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo

Concurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo Concurrency - Rinnakkaisuus Group: 9 Joni Laine Juho Vähätalo Sisällysluettelo 1. Johdanto... 3 2. C++ thread... 4 3. Python multiprocessing... 6 4. Java ExecutorService... 8 5. Yhteenveto... 9 6. Lähteet...

Lisätiedot

Tietokoneen rakenne: Harjoitustyö. Motorola MC68030 -prosessori

Tietokoneen rakenne: Harjoitustyö. Motorola MC68030 -prosessori kevät 2004 TP02S-D Tietokoneen rakenne: Harjoitustyö Motorola MC68030 -prosessori Työn valvojat: Seppo Haltsonen Pasi Lankinen RAPORTTI 13.5.2004 Sisällysluettelo sivu Tiivistelmä... 1 Lohkokaavio... 2

Lisätiedot

Backup Exec 3600 Appliance

Backup Exec 3600 Appliance Backup Exec 3600 Appliance Markku A Suistola Principal Presales Consultant Parempaa varmistusta kaikille! Ohjelmisto Appliance Pilvi Virtuaalisen ja fyysisen ympäristön suojaus 2 Perinteinen ratkaisu usein

Lisätiedot

Osio 2: Luennot 4-7 Muistinhallinta

Osio 2: Luennot 4-7 Muistinhallinta Käyttöjärjestelmät I Osio 2: Luennot 4-7 Muistinhallinta Tiina Niklander; kalvot Auvo Häkkinen Tietojenkäsittelytieteen laitos Helsingin yliopisto Käyttöjärjestelmät t I YKSINKERTAINEN MUISTINHALLINTA

Lisätiedot

Onko sinun yritykselläsi jo tietotekniikka Palveluksessa? vtoasp -palvelun avulla siirrät tietojärjestelmäsi haasteet ammattilaisten hoidettaviksi.

Onko sinun yritykselläsi jo tietotekniikka Palveluksessa? vtoasp -palvelun avulla siirrät tietojärjestelmäsi haasteet ammattilaisten hoidettaviksi. Onko sinun yritykselläsi jo tietotekniikka Palveluksessa? vtoasp -palvelun avulla siirrät tietojärjestelmäsi haasteet ammattilaisten hoidettaviksi. vtoasp -palvelu 1) Huolehtii yrityksesi tietojärjestelmän

Lisätiedot

Käyttöjärjestelmät: Virtuaalimuisti

Käyttöjärjestelmät: Virtuaalimuisti Käyttöjärjestelmät: Virtuaalimuisti Teemu Saarelainen Tietotekniikka teemu.saarelainen@kyamk.fi Lähteet Stallings, W. Operating Systems Haikala, Järvinen, Käyttöjärjestelmät Eri Web-lähteet Muistinhallinta

Lisätiedot

MultiBoot. Käyttöopas

MultiBoot. Käyttöopas MultiBoot Käyttöopas Copyright 2006 Hewlett-Packard Development Company, L.P. Tässä olevat tiedot voivat muuttua ilman ennakkoilmoitusta. Ainoat HP:n tuotteita ja palveluja koskevat takuut mainitaan erikseen

Lisätiedot

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14 Arkkitehtuurikuvaus Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy Ryhmä 14 Muutoshistoria Versio Pvm Päivittäjä Muutos 0.4 1.11.2007 Matti Eerola 0.3 18.10.2007 Matti Eerola 0.2

Lisätiedot

POWER analytiikka-alustana

POWER analytiikka-alustana POWER analytiikka-alustana Teppo Seesto Solution Architect Infrastructure matters SAPS/core 5000 4000 SAP 2-tier SD-benchmark SAP ERP 6.0 3765 3000 2000 2204 70% nopeampi 1000 Intel IvyBridge E7-4890v2

Lisätiedot

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

LINUX LINUX. Viisi hyvää syytä käyttää Linuxia MUISTA! GNU Free Documentation License GNU Free Documentation License LINUX Lähde: http://www.ubuntufi.org/ LINUX Linux-käyttöjärjestelmäydin on saanut alkunsa suomalaisen Linus Torvaldsin ansiosta Linux (GNU+Linux) on levinnyt maailmalla nopeasti

Lisätiedot

Luento 1 (verkkoluento 1) Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus

Luento 1 (verkkoluento 1) Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus Luento 1 (verkkoluento 1) Tietokonejärjestelmä Järjestelmän e eri tasot Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus 1 Tietokone- järjestelmäj ä Käyttäjä Tietokonelaitteisto Oheislaitteet

Lisätiedot

Linux palomuurina (iptables) sekä squid-proxy

Linux palomuurina (iptables) sekä squid-proxy Linux palomuurina (iptables) sekä squid-proxy Linux-järjestelmät Winai Prathumwong TI10HJ 06.11.2012 2 Iptables (Netfilter) Johdanto Iptables on Linux-kernelin sisäänrakennetun palomuurin, Netfilter:in

Lisätiedot

Näin asennat MS-DOS käyttöjärjestelmän virtuaalikoneeseen

Näin asennat MS-DOS käyttöjärjestelmän virtuaalikoneeseen Näissä ohjeissa käydään läpi Microsoftin MS-DOS 6.22 -käyttöjärjestelmän asennus Microsoftin Virtual PC 2007 -virtuaalikoneeseen. Asennusta varten sinulla on oltava Virtual PC 2007 asennettuna tietokoneellasi

Lisätiedot

Luento 1 Tietokonejärjestelmän rakenne

Luento 1 Tietokonejärjestelmän rakenne Luento 1 Tietokonejärjestelmän rakenne Järjestelmän eri tasot Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä Tietokonelaitteisto Oheislaitteet (peripheral or I/O devices) Tietokone (computer) 2 Tietokone

Lisätiedot

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus Luento 1 Tietokonejärjestelmän rakenne Järjestelmän eri tasot Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä Tietokonelaitteisto Oheislaitteet (peripheral or I/O devices) Tietokone (computer) 2 Tietokone

Lisätiedot

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka Linux pohjaiset pilvipalvelut Linux järjestelmät TI 11/12 TIVE Santeri Kangaskolkka TI 12 Janne Enroos TI 12 Mikä on

Lisätiedot

Muistihierarkia Kiintolevyt I/O:n toteutus

Muistihierarkia Kiintolevyt I/O:n toteutus Luento 8 (verkkoluento 9) Järjestelmän ulkoinen muisti I/O Muistihierarkia Kiintolevyt I/O:n toteutus 1 Muistihierarkia Ulkoinen muisti (levymuisti) on halvempaa toteuttaa per tavu Ulkoinen muisti on paljon

Lisätiedot

Menetelmäraportti - Konfiguraationhallinta

Menetelmäraportti - Konfiguraationhallinta Menetelmäraportti - Konfiguraationhallinta Päiväys Tekijä 22.03.02 Ville Vaittinen Sisällysluettelo 1. Johdanto... 3 1.1 Tärkeimmät lyhenteet... 3 2. Konfiguraationhallinnan tärkeimmät välineet... 4 2.1

Lisätiedot

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintolevyt Muut pyörivät levyt 1 Muistihierarkia (4) Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen muisti on hyvin paljon

Lisätiedot

Action Request System

Action Request System Action Request System Manu Karjalainen Ohjelmistotuotantovälineet seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 25.10.2000 Action Request System (ARS) Manu Karjalainen Ohjelmistotuotantovälineet

Lisätiedot

Sisältöä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja TITO-kurssista. Tietokonejärjestelmä

Sisältöä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja TITO-kurssista. Tietokonejärjestelmä Tietokoneen rakenne Luento 1 Tietokonejärjestelmä Ch 1 - Ch 8 [Sta06] Valikoituja paloja TITO-kurssista John von Neumann ja EDVAC, 1949 Luento 1-1 Sisältöä Tietokonejärjestelmä KJ:n näkökulma laitteistoon

Lisätiedot

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti. Ohjelman muistiosoitteet (3) Virtuaalimuisti (3) Virtuaalimuistin toteutus.

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti. Ohjelman muistiosoitteet (3) Virtuaalimuisti (3) Virtuaalimuistin toteutus. Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintolevyt Muut pyörivät levyt Muistihierarkia (4) ks. Fig. 2-18 [Tane99] Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen

Lisätiedot

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintolevyt Muut pyörivät levyt 1 Muistihierarkia (4) ks. Fig. 2-18 [Tane99] Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen

Lisätiedot

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintolevyt Muut pyörivät levyt 1 Muistihierarkia (4) Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen muisti on hyvin paljon

Lisätiedot

Luento 1 Tietokonejärjestelmän rakenne

Luento 1 Tietokonejärjestelmän rakenne Luento 1 Tietokonejärjestelmän rakenne Järjestelmän eri tasot Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä Tietokonelaitteisto Oheislaitteet (peripheral or I/O devices) Tietokone (computer) 2 Luento

Lisätiedot

GNU/Linux kotikäytössä

GNU/Linux kotikäytössä GNU/Linux kotikäytössä Perttu Ahola Kempeleen Lukio harjoitustutkielma Syksy 2006 Sisällysluettelo 1. Johdanto 2. Käyttöjärjestelmä 2.1. Käyttöjärjestelmän vaatimukset työpöytäkäytössä 3. Linux 3.1. Historia

Lisätiedot

24.9.2015. Työasema- ja palvelinarkkitehtuurit (IC130301) Apumuistit. Kiintolevyt. 5 opintopistettä. Petri Nuutinen

24.9.2015. Työasema- ja palvelinarkkitehtuurit (IC130301) Apumuistit. Kiintolevyt. 5 opintopistettä. Petri Nuutinen Työasema- ja palvelinarkkitehtuurit (IC130301) 5 opintopistettä Petri Nuutinen 5 opintopistettä Petri Nuutinen Apumuistit Tarvitaan ohjelmien ja dokumenttien tallentamiseen, kiintolevyjen varmuuskopiointiin,

Lisätiedot

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus Luento 1 Tietokonejärjestelmän rakenne Järjestelmän eri tasot Laitteiston nopeus 1 Tietokonejärjestelmä Käyttäjä Tietokonelaitteisto Oheislaitteet (peripheral or I/O devices) Tietokone (computer) 2 Tietokone

Lisätiedot

MP3 Manager Software for Sony Network Walkman

MP3 Manager Software for Sony Network Walkman MP3 Manager Software for Sony Network Walkman Käyttöohje WALKMAN on Sony Corporationin kuulokestereotuotteisiin liittyvä rekisteröity tavaramerkki. on Sony Corporationin tavaramerkki. NW- E55/75 2004 Sony

Lisätiedot

ltö Luento 6: VIRTUAALIMUISTI Luento 7: Segmentointi Segmentointi ja sivutus yhdistettynä Yhteiskäytöstä Suoritus virtuaalimuistissa

ltö Luento 6: VIRTUAALIMUISTI Luento 7: Segmentointi Segmentointi ja sivutus yhdistettynä Yhteiskäytöstä Suoritus virtuaalimuistissa Käyttöjärjestelmät t I Luento 6: VIRTUAALIMUISTI Stallings, Luku 8.1 Sisält ltö Ohjelman suoritus virtuaalimuistissa Sivutus Osoitemuunnospuskuri TLB Lisää sivutauluista Luento 7: Segmentointi Segmentointi

Lisätiedot

Kymenlaakson Ammattikorkeakoulu

Kymenlaakson Ammattikorkeakoulu Kymenlaakson Ammattikorkeakoulu Tietotekniikka/Tietoverkkotekniikka Jussi Toivakka ja Juha Törö MySQL & PostGRE 1 Sisällysluettelo 2 Yleistä tietokannoista... 3 3 MySQL... 4 3.1 Historiaa... 4 3.2 Käyttö...

Lisätiedot

Maiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi)

Maiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi) Maiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi) Tietokannan hallinta-opintojakson selvitysraportti Huhtikuu 2010 Mediatekniikka ICT/Teknologia Tämän teosteoksen käyttöoikeutta koskee Creative

Lisätiedot

Tietokoneen muisti nyt ja tulevaisuudessa. Ryhmä: Mikko Haavisto Ilari Pihlajisto Marko Vesala Joona Hasu

Tietokoneen muisti nyt ja tulevaisuudessa. Ryhmä: Mikko Haavisto Ilari Pihlajisto Marko Vesala Joona Hasu Tietokoneen muisti nyt ja tulevaisuudessa Ryhmä: Mikko Haavisto Ilari Pihlajisto Marko Vesala Joona Hasu Yleisesti Muisti on yksi keskeisimmistä tietokoneen komponenteista Random Access Memory on yleistynyt

Lisätiedot

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

Unix-perusteet. Unix/Linux-käyttöjärjestelmä ja sen ominaisuudet Unix-perusteet Unix/Linux-käyttöjärjestelmä ja sen ominaisuudet Mikä on unix? Monen käyttäjän käyttöjärjestelmä Siis monta käyttäjää ja monta ohjelmaa jokaisella Kaikkiin koneisiin mikrosta supertietokoneeseen

Lisätiedot

Virtualisoi viisaasti paranna palvelua. Iikka Taanila Systems Architect IBM Systems and Technology Group

Virtualisoi viisaasti paranna palvelua. Iikka Taanila Systems Architect IBM Systems and Technology Group Virtualisoi viisaasti paranna palvelua Iikka Taanila Systems Architect IBM Systems and Technology Group Älykkäämpi IT Web Servers App Servers End Users App Servers App Servers App/DB Server App/DB Servers

Lisätiedot

Osio 2: Luennot 4-7 Muistinhallinta YKSINKERTAINEN MUISTINHALLINTA. ltöä YLEISTÄ MUISTINHALLINNASTA. Looginen muisti.

Osio 2: Luennot 4-7 Muistinhallinta YKSINKERTAINEN MUISTINHALLINTA. ltöä YLEISTÄ MUISTINHALLINNASTA. Looginen muisti. Käyttöjärjestelmät t I Osio 2: Luennot 4-7 Muistinhallinta Tiina Niklander; kalvot Auvo Häkkinen YKSINKERTAINEN MUISTINHALLINTA Stallings, Luku 7 Tietojenkäsittelytieteen laitos Helsingin yliopisto KJ-I

Lisätiedot

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

Miten voin selvittää säästömahdollisuuteni ja pääsen hyötymään niistä? Se edullisempi tietokanta Miten voin selvittää säästömahdollisuuteni ja pääsen hyötymään niistä? Rasmus Johansson rasmus.johansson@microsoft.com Ratkaisumyyntipäällikkö (Sovellusalusta) Microsoft Oy Miten

Lisätiedot

2 Konekieli, aliohjelmat, keskeytykset

2 Konekieli, aliohjelmat, keskeytykset ITK145 Käyttöjärjestelmät, kesä 2005 Tenttitärppejä Tässä on lueteltu suurin piirtein kaikki vuosina 2003-2005 kurssin tenteissä kysytyt kysymykset, ja mukana on myös muutama uusi. Jokaisessa kysymyksessä

Lisätiedot

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

Kim Vuorela TIVE09 0901342 Linux-järjestelmät 1(12) Kim Vuorela TIVE09 0901342 Linux-järjestelmät 1(12) Sisällys 2(12) 1 Johdanto 3 2 Käsitteitä 4 3 Yleistä 5 4 Historia 6 5 Jakeluversiot 7 5.1 Kubuntu 7 5.2 Edubuntu 7 5.3 Xubuntu 7 5.4 Lubuntu 7 5.5 Ubuntu

Lisätiedot

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintolevyt Muut pyörivät levyt 1 Muistihierarkia (4) ks. Fig. 4-1 [Stal99] Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen

Lisätiedot

D B. Levykön rakenne. pyöriviä levyjä ura. lohko. Hakuvarsi. sektori. luku-/kirjoituspää

D B. Levykön rakenne. pyöriviä levyjä ura. lohko. Hakuvarsi. sektori. luku-/kirjoituspää Levyn rakenne Levykössä (disk drive) on useita samankeskisiä levyjä (disk) Levyissä on magneettinen pinta (disk surface) kummallakin puolella levyä Levyllä on osoitettavissa olevia uria (track), muutamasta

Lisätiedot

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintolevyt Muut pyörivät levyt 1 Muistihierarkia (4) ks. Fig. 4-1 [Stal99] Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen

Lisätiedot

PRINCIPLES OF PROGRAMMING LANGUAGES - DEBUGGER

PRINCIPLES OF PROGRAMMING LANGUAGES - DEBUGGER PRINCIPLES OF PROGRAMMING LANGUAGES - DEBUGGER Group 16 Ville Laatu Henri Myllyoja - i SISÄLLYSLUETTELO 1. DEBUGGERI YLEISESTI... II 1.1 Debuggerin käyttämien... ii 1.2 Debuggerin käynnistäminen... ii

Lisätiedot

Luento 6: VIRTUAALIMUISTI

Luento 6: VIRTUAALIMUISTI Käyttöjärjestelmät t I Luento 6: VIRTUAALIMUISTI Stallings, Luku 8.1 KJ-I S2005 / Tiina Niklander; kalvot Auvo Häkkinen 6-1 Sisält ltö Ohjelman suoritus virtuaalimuistissa Sivutus Osoitemuunnospuskuri

Lisätiedot

Tietokonejärjestelmä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja. TITO-kurssista. John von Neumann ja EDVAC, 1949.

Tietokonejärjestelmä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja. TITO-kurssista. John von Neumann ja EDVAC, 1949. Tietokoneen rakenne Luento 1 Tietokonejärjestelmä Ch 1 - Ch 8 [Sta06] Valikoituja paloja John von Neumann ja EDVAC, 1949 TITO-kurssista Luento 1-1 Sisältöä Tietokonejärjestelmä KJ:n näkökulma laitteistoon

Lisätiedot

Ohjelmistopäivitykset

Ohjelmistopäivitykset Ohjelmistopäivitykset Käyttöopas Copyright 2007 Hewlett-Packard Development Company, L.P. Windows on Microsoft Corporationin Yhdysvalloissa rekisteröimä tavaramerkki. Tässä olevat tiedot voivat muuttua

Lisätiedot

Sivu 1/5 Mitä CD- tai DVD-muotoa tulisi käyttää? Tässä artikkelissa Tarpeita vastaavan levyn ja muodon valinta Tietoja Live File Systemin ja masteroidun levymuodon eroista Miksi Live File System -muodosta

Lisätiedot

Windows ja Linux. Lappeenrannan teknillinen yliopisto Teknistaloudellinen tiedekunta Tietotekniikan koulutusohjelma

Windows ja Linux. Lappeenrannan teknillinen yliopisto Teknistaloudellinen tiedekunta Tietotekniikan koulutusohjelma Lappeenrannan teknillinen yliopisto Teknistaloudellinen tiedekunta Tietotekniikan koulutusohjelma Opintojakson Käyttöjärjestelmät seminaarityö Joonas Blomberg, Arttu Hanska, Harri Laine, Markku Painomaa

Lisätiedot

Ulkoiset mediakortit. Käyttöopas

Ulkoiset mediakortit. Käyttöopas Ulkoiset mediakortit Käyttöopas Copyright 2006 Hewlett-Packard Development Company, L.P. Java on Sun Microsystems, Inc:n tavaramerkki Yhdysvalloissa. Tässä olevat tiedot voivat muuttua ilman ennakkoilmoitusta.

Lisätiedot

Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Johdanto & yleistä Harri Laine 1. Tietokanta. Tiedosto

Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Johdanto & yleistä Harri Laine 1. Tietokanta. Tiedosto Tietokanta Tiedosto Tietokanta (database) jotakin käyttötarkoitusta varten laadittu kokoelma toisiinsa liittyviä säilytettäviä tietoja Ohjelmointikielissä apumuistiin tallennettuja tietoja käsitellään

Lisätiedot

Varmuuskopiointi ja palauttaminen Käyttöopas

Varmuuskopiointi ja palauttaminen Käyttöopas Varmuuskopiointi ja palauttaminen Käyttöopas Copyright 2008 Hewlett-Packard Development Company, L.P. Windows on Microsoft Corporationin Yhdysvalloissa rekisteröimä tavaramerkki. Tässä olevat tiedot voivat

Lisätiedot

SALITE.fi -Verkon pääkäyttäjän ohje

SALITE.fi -Verkon pääkäyttäjän ohje SALITE.fi -Verkon pääkäyttäjän ohje Sisältö 1 Verkon pääkäyttäjä (Network Admin)...3 2 Verkonhallinta...3 2.1 Navigointi verkonhallintaan...3 2.2 Sivustot...3 2.1 Sivustojen toiminnot...4 2.3 Sivuston

Lisätiedot

Javan asennus ja ohjeita ongelmatilanteisiin

Javan asennus ja ohjeita ongelmatilanteisiin Javan asennus ja ohjeita ongelmatilanteisiin Javaa tarvitaan Fivaldin Sovellusikkunan alaisiin sovelluksiin, jotka käyttävät Oracle Forms -tekniikkaa. Visma Fivaldin osalta suosittelemme aina käyttämään

Lisätiedot

Muistimoduulit. Käyttöopas

Muistimoduulit. Käyttöopas Muistimoduulit Käyttöopas Copyright 2006 Hewlett-Packard Development Company, L.P. Näitä tietoja voidaan muuttaa ilman etukäteisilmoitusta. HP-tuotteiden ja - palvelujen ainoat takuut määritetään tuotteiden

Lisätiedot

MUISTINHALLINTA. Stallings, Luku 7

MUISTINHALLINTA. Stallings, Luku 7 LUENTO 7 MUISTINHALLINTA Stallings, Luku 7 1 Sisältöä Yleistä muistinhallinnasta (luku 7.1) Yksinkertainen muistinhallinta a) kiinteät partitiokoot (luku 7.2) b) dynaamiset partitiokoot (luku 7.2) c) Buddy

Lisätiedot

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

SQLite selvitysraportti. Juha Veijonen, Ari Laukkanen, Matti Eronen. Maaliskuu 2010 SQLite selvitysraportti Juha Veijonen, Ari Laukkanen, Matti Eronen Maaliskuu 2010 Opinnäytetyö Kuukausi Vuosi 1 SISÄLTÖ 1. YLEISTÄ SQLITE:STA... 2 2. HISTORIA... 2 3. SQLITEN KÄYTTÖ... 3 3.1 SQLiten asennus

Lisätiedot

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

Demo 13. Aihe: Linux. Opettaja: Antti Ekonoja. Tekijä: Heini Puuska Demo 13 Aihe: Linux Opettaja: Antti Ekonoja Tekijä: Heini Puuska Päiväys: 30.5.2011 Sisällys 1 Linux... 1 2 Jakelupaketit... 1 2.1 Debian... 1 2.2 Ubuntu... 1 2.3 Red Hat... 1 2.4 Fedora... 2 2.5 SUSE...

Lisätiedot

Luento 7: VIRTUAALIMUISTIN SIVUTUS JA SEGMENTOINTI

Luento 7: VIRTUAALIMUISTIN SIVUTUS JA SEGMENTOINTI Käyttöjärjestelmät t I Luento 7: VIRTUAALIMUISTIN SIVUTUS JA SEGMENTOINTI Stallings, Luku 8.1 KJ-I S2005 / Tiina Niklander; kalvot Auvo Häkkinen 7-1 Sisält ltö Käänteinen sivutaulu Segmentointi Segmentointi

Lisätiedot

Kuva 8.7. u Muunnos prosessin sivunumerosta sivutilanumeroksi u Kussakin alkiossa: u Katenoimalla. u MMU:ssa; juuri äsken käytettyjä muunnoksia

Kuva 8.7. u Muunnos prosessin sivunumerosta sivutilanumeroksi u Kussakin alkiossa: u Katenoimalla. u MMU:ssa; juuri äsken käytettyjä muunnoksia Käyttöjärjestelmät t I Luento 7: VIRTUAALIMUISTIN SIVUTUS JA SEGMENTOINTI Stallings, Luku 8.1 Sisält ltö Käänteinen sivutaulu Segmentointi Segmentointi ja sivutus yhdistettynä Yhteiskäytöstä KJ-I S2005

Lisätiedot

HYÖDYNNÄ SUBSCRIPTION-ETUSI

HYÖDYNNÄ SUBSCRIPTION-ETUSI HYÖDYNNÄ SUBSCRIPTION-ETUSI LISENSSIN KÄYTTÖOIKEUKSIEN LAAJENTAMINEN Autodesk Subscription sisältää paljon etuja, kuten joustavammat mahdollisuudet käyttää Autodesk-ohjelmistoja. Tässä ohjeessa käydään

Lisätiedot

PC-LAITTEEN TESTAAMINEN

PC-LAITTEEN TESTAAMINEN PC-LAITTEEN TESTAAMINEN PC-Check-ohjelma Kun laite on koottu, on perusteltua testata sen toiminta ennen käyttöönottoa. Tätä varten on luotu erilaisia ohjelmia, joilla voi laitteen eri osat testata. Yksi

Lisätiedot

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti. Ohjelman muistiosoitteet (3) Virtuaalimuisti (3) Virtuaalimuistin toteutus (2)

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti. Ohjelman muistiosoitteet (3) Virtuaalimuisti (3) Virtuaalimuistin toteutus (2) Luento 9 Järjestelmän ulkoinen muisti Muistihierarkia Virtuaalimuisti Kiintot Muut pyörivät t Muistihierarkia (4) ks. Fig. 4-1 [Stal99] Ulkoinen muisti on halvempaa toteuttaa per tavu Ulkoinen muisti on

Lisätiedot

Ei raportteja roskiin

Ei raportteja roskiin Ei raportteja roskiin Wikit ja blogit opetuksessa Sosiaalinen media koulutuksessa Tietotekniikan liitto - Helia 2006-11-16 Ei raportteja roskiin Vanha ja uusi tapa Käytännön kokemuksia Lisenssit Tekniikka

Lisätiedot

Tulostimen hallintaohjelmisto MarkVision

Tulostimen hallintaohjelmisto MarkVision Tulostinohjelmisto ja apuohjelmat 1 Tulostimen hallintaohjelmisto MarkVision Windows 95/98/2000-, Windows NT 4.0- ja Macintosh-käyttöjärjestelmien MarkVision toimitetaan tulostimen mukana Drivers, MarkVision

Lisätiedot

Kahden virtualisointiohjelmiston suorituskyvyn testaus (valmiin työn esittely)

Kahden virtualisointiohjelmiston suorituskyvyn testaus (valmiin työn esittely) Kahden virtualisointiohjelmiston suorituskyvyn testaus (valmiin työn esittely) Jani Laine 31.10.2017 Ohjaaja: DI Jimmy Kjällman Valvoja: Prof. Kai Virtanen Työn saa tallentaa ja julkistaa Aalto-yliopiston

Lisätiedot

Tietokonearkkitehtuuri 2 TKT-3201 (5 op)

Tietokonearkkitehtuuri 2 TKT-3201 (5 op) Tietokonearkkitehtuuri 2 (5 op) syksyllä 2012 periodit I & II (viikot 35-41 & 43-49) luennot tiistaisin klo 14-16 (periodi I: sali S4, periodi II: sali TB109) Kurssin tavoite Käydään läpi tietokoneen toimintaa

Lisätiedot

Digikamera. Perustietoa digikamerasta ja kuvien siirtämisestä tietokoneelle

Digikamera. Perustietoa digikamerasta ja kuvien siirtämisestä tietokoneelle TEEMA 1 Tietokoneen peruskäyttö Digikamera Perustietoa digikamerasta ja kuvien siirtämisestä tietokoneelle Tämä tietopaketti hahmottaa lukijalle, millä tavalla kuvat voidaan siirtää kamerakännykästä tai

Lisätiedot

Tekninen suunnitelma - StatbeatMOBILE

Tekninen suunnitelma - StatbeatMOBILE Tekninen suunnitelma - StatbeatMOBILE Versio Päivämäärä Henkilö Kuvaus 1.0 13.12.2013 Pöyry Alustava rakenne ja sisältö 1.1 22.12.2013 Pöyry Lisätty tekstiä ilmoituksiin, turvallisuuteen ja sisäiseen API:in

Lisätiedot

Väylät. Prosessorin tie ulkomaailmaan Pienissä järjestelmissä vain yksi väylä. Osoite, data ja ohjaussignaalit Prosessori ainoa herra (master)

Väylät. Prosessorin tie ulkomaailmaan Pienissä järjestelmissä vain yksi väylä. Osoite, data ja ohjaussignaalit Prosessori ainoa herra (master) Prosessorin tie ulkomaailmaan Pienissä järjestelmissä vain yksi väylä Prosessoriväylä Osoite, data ja ohjaussignaalit Prosessori ainoa herra (master) Suuremmissa erillisiä väyliä Muistiväylä Oheislaiteväylät

Lisätiedot

HELIA 1 (16) Outi Virkki Tietokantasuunnittelu

HELIA 1 (16) Outi Virkki Tietokantasuunnittelu HELIA 1 (16) Luento 3.2 Suorituskyvyn optimointi jatkuu...... 2 Tietojen tallennusratkaisut... 2 Tiedon tallennuksen yksiköitä... 3 Loogiset... 3 Fyysiset... 3 Tallennusmäärittelyt Oraclessa... 5 Loogiset

Lisätiedot

Android ohjelmointi. Mobiiliohjelmointi 2-3T5245

Android ohjelmointi. Mobiiliohjelmointi 2-3T5245 Android ohjelmointi Mobiiliohjelmointi 2-3T5245 Mikä on Android? Linux kernelin päälle rakennettu, Googlen kehittämä sovelluspino mobiilisovelluksiin Erillinen versio puhelimelle ja taulutietokoneille

Lisätiedot

D B. Tiedostojen käsittely

D B. Tiedostojen käsittely Tietokantojen tietoja säilytetään yleensä apumuistissa, lähinnä levymuisteissa Apumuistiin tallentamisen merkittäviä etuja keskusmuistiin nähden ovat tiedon säilyvyys (virtakatkon yli) säilytyskapasiteetin

Lisätiedot

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000 Jakso 12 Yhteenveto Keskeiset asiat 1 Tavoitteet (4) Ymmärtää tietokonejärjestelmän keskeiset piirteet sillä suoritettavan ohjelman näkökulmasta Miten tietokonejärjestelmä suorittaa sille annettua ohjelmaa?

Lisätiedot

Tietokoneen toiminta, K Tavoitteet (4)

Tietokoneen toiminta, K Tavoitteet (4) Jakso 12 Yhteenveto Keskeiset asiat 1 Tavoitteet (4) Ymmärtää tietokonejärjestelmän keskeiset piirteet sillä suoritettavan ohjelman näkökulmasta Miten tietokonejärjestelmä suorittaa sille annettua ohjelmaa?

Lisätiedot