Tietokone

tietojenkäsittelyyn käytetty laite
Tämä artikkeli käsittelee laitetta. Tietokone (lehti) käsittelee lehteä.
Nasan supertietokone Columbia.

Tietokone on laite, joka käsittelee numeeris-loogista tietoa ohjelmointinsa mukaisesti. Arkikielessä tietokoneella tarkoitetaan yleensä yleiskäyttöistä laitetta, joka on tarkoitettu suorittamaan monenlaisia tietojenkäsittelytehtäviä. Myös esimerkiksi pelikonsolit ja matkapuhelimet ovat perusluonteeltaan tietokoneita, vaikka erikoistuneiden käyttötarkoitustensa takia niitä ei sellaisiksi yleensä kutsuta. Myös sulautetuissa järjestelmissä on laitteen sisällä tietokone, vaikka käyttäjä ei aina ole siitä edes tietoinen.

Tietokoneiden edeltäjinä voidaan pitää yhtäältä reikäkorttien käsittelyyn tarkoitettuja reikäkorttikoneita ja toisaalta esimerkiksi mekaanisia laskimia. Ensimmäiset varsinaiset ohjelmoitavat tietokoneet rakennettiin 1940-luvulla ja niitä käytettiin muun muassa toisen maailmansodan aikaan salakirjoitusten murtamiseen (brittiläinen Colossus), tykistön ammusten ratojen laskentaan (amerikkalainen ENIAC) ja lentokonesuunnittelun lujuuslaskentoihin (saksalainen Z3).

Sisällysluettelo

Tietokoneen toimintaMuokkaa

Matematiikan professori Charles Babbage kehitti jo 1800-luvulla mekaanisen tietokoneen nimeltä Analyyttinen kone. Yksi tunnetuimmista tietokoneen matemaattisista malleista on Turingin kone, jonka kehitti englantilainen matemaatikko Alan Turing. Tietojenkäsittelyn ekvivalenssiperiaatteen mukaan kaikki tietokoneet pystyvät suoriutumaan samoista tehtävistä, mikäli käytössä on riittävästi tallennustilaa ja aikaa. Jos siis koneella tai formaalilla järjestelmällä (esimerkiksi ohjelmointikielellä) voi toteuttaa Turingin koneen, sillä voi toteuttaa myös minkä tahansa algoritmin tai ohjelman, jonka Turingin kone pystyy ratkaisemaan. Nykyaikaiset yleistietokoneet perustuvat elektroniikkaan ja John von Neumannin mallin mukaiseen rakenteeseen, ja Turingin kone esiintyy vain tietojenkäsittelyteorian oppikirjoissa. Erikoissovelluksissa voi olla käytössä Neumannin mallista poikkeavia tietokoneita. Esimerkiksi signaalinkäsittelyyn tarkoitetut suorittimet ovat usein Harvard-arkkitehtuurin mukaisia. Useimmat tietokoneet toteuttavat John von Neumannin mallia, jossa sekä ohjelma että sen käsittelemä tieto ovat samaan muistiin tallennettua dataa. Harvinaisemmassa Harvard-arkkitehtuurissa ohjelma ja sen käsittelemä tieto ovat omissa muisteissaan.[1]

Tietokoneen toimintaa ohjaa suoritin eli prosessori, joka tulkitsee konekielisiä käskyjä ja ohjaa niiden mukaan tietokoneen eri toimintoja. Suoritin suorittaa ohjelmaa lukemalla peräkkäisiä muistipaikkoja alueelta johon ohjelmakoodi on tallennettu, ja tulkitsemalla lukemansa bittijonot konekielisiksi käskyiksi. Käsky suorittaa yleensä jonkin yksinkertaisen alkeisoperaation, kuten luvun lukemisen muistipaikasta, kahden luvun välisen laskutoimituksen tai ohjelman suoritusosoitteen ehdollisen vaihtamisen. Käskyn suorituksen päätteeksi suorittimen sisäisissä muistipaikoissa, ns. rekistereissä sijaitsevat laskennan lopputulokset tallennetaan toisella käskyllä takaisin muistiin.

Vaikka tietokoneen pystyykin toteuttamaan eri tekniikoilla, nykyiset tietokoneet perustuvat elektronisiin mikropiireihin, joiden alkeellisimmat perusosat suorittavat Boolen algebraan kuuluvia perusoperaatioita.[2] Koska Boolen algebra perustuu kahteen totuusarvoon, on luontevaa käyttää niitä kaiken käsiteltävän tiedon ilmaisemiseen: esimerkiksi lukuja on teknisesti yksinkertaisinta käsitellä, jos ne on esitetty binäärijärjestelmän avulla. Yksittäisestä totuusarvosta (binäärijärjestelmän numerosta 1 tai 0) käytetään nimitystä bitti (lyhenne englannin sanoista binary digit, binääriluku).[3]

Suorittimet on jo pitkään toteutettu yhtenä integroituna piirinä. Nykyään yksi piiri voi sisältää monta suoritinta – puhutaan suoritinytimistä tai vain ytimistä. Henkilökohtaisissa tietokoneissa on tyypillisesti 1–8 suoritinydintä yhdellä integroidulla piirillä. Suurissa palvelimissa ja supertietokoneissa suoritinytimiä on tuhansia.[4]

Suorittimien lisäksi tietokoneessa on yleensä myös muita piirejä tai apusuorittimia, jotka suorittavat erikoistuneempia tietojenkäsittelytehtäviä ja vapauttavat siten varsinaiset suorittimet näistä tehtävistä. Esimerkiksi:

  • näytönohjain muuttaa näyttömuistiin tallennetun kuvan näyttölaitteelle sopivaksi ajoitetuksi signaaliksi; monet näytönohjaimet osaavat myös itse piirtää grafiikkaa näyttömuistiin. Käytännössä tällaiset laitteet sisältävät oman suorittimensa, ja monien grafiikkaohjainten suorittimia voidaankin käyttää myös muun laskennan tukena silloin, kun niitä ei tarvita grafiikan muodostamiseen.
  • Digitaalinen signaaliprosessori on erityisesti matkapuhelimissa ja verkkolaitteissa yleinen erikoispiiri, joka käsittelee jatkuvaa datavirtaa ja tekee sille operaatioita, esim. salauksen tai pakatun äänen purkamisen.

Vaikka kaikki tietokoneet pystyvätkin periaatteessa suorittamaan samat tehtävät, jotkin ovat huomattavasti soveltuvampia joihinkin tehtäviin kuin toiset. Suorituskykyä erityyppisissä tehtävissä mitataan vertaillen niin sanotuilla benchmarking-testeillä. Riittävän suorituskyvyn lisäksi merkittäviä tekijöitä ovat muun muassa koneen vakaus, vikasietoisuus, virrankulutus, fyysinen koko, ohjelmistoyhteensopivuus sekä hankinta- ja käyttökustannukset.

Arkipuheessa tietokoneita asetetaan usein paremmuusjärjestykseen vertailemalla suoraan esimerkiksi suorittimien kellotaajuuksia. Kellotaajuus voi antaa suurpiirteisen vihjeen esimerkiksi PC-työaseman teknisestä iästä ja siten sen yleisestä suorituskyvystä ja luotettavuudesta useimmissa tehtävissä, mutta pelkkiin numeerisiin suureisiin katsominen voi esimerkiksi koneen ominaisuuksia arvioitaessa olla hyvinkin harhaanjohtavaa. Suorittimen arkkitehtuurilla on käytännössä erittäin suuri vaikutus siihen miten paljon työtä prosessori saa yhden kellojakson aikana tehtyä, ja mikä lopullinen suorituskyky tulee olemaan.

Tietokoneiden luokitteluMuokkaa

Historiallisesti tietokoneet on luokiteltu kokoluokan mukaan usein eri tavoin:

Myös käyttötarkoituksen mukaan voidaan luokitella usein eri tavoin:

Tietokoneiden historiaMuokkaa

 
Z3-tietokoneen jäljennös.

Tietokoneen kehitys vuosikymmenittäin

  • 1940-luvulla tietokone kehitetään ja niitä käyttävät vain valtiot, käyttötarkoituksena oli lähinnä sotilaskäyttö. Elektroniputki on yleinen tekniikka.
  • 1950-luku oli tietokoneen perustekniikan ja teorian kehityskautta, IBM julkistaa ensimmäisen sarjavalmisteisen tietokoneen. Transistori yleistyy.
  • 1960-luvulla puolijohteet alkoivat pienentää ja nopeuttaa tietokonetta Mooren lain mukaan. Mikropiiri yleistyy. Ensimmäiset minitietokoneet kuten PDP-8.
  • 1970-luvulla tietokonetta käytetään lähinnä tekniseen laskentaan. Mikroprosessori yleistyy. "Vuoden 1977 kolmikko" Apple II, Commodore PET ja TRS-80 ja ensimmäiset mikrotietokoneet esitellään. Unix ja Berkeley Software Distribution julkaistaan.
  • 1980-luvulla mikrotietokoneet yleistyvät voimakkaasti. Isotkin tietokoneet olivat enää huonekalun kokoisia ja kirjoituskone korvautuu henkilökohtaisella tietokoneella.
  • 1990-luvulla tietokone muuttuu jokaisen pienyrityksen päivittäiseksi apuvälineeksi ja tietoliikenteen kehitys laajentaa käyttötapoja. Tietokone siirtyy myös osaksi autoja ja kodinkoneita.
  • 2000-luvulla tietokoneita käytetään työssä ja kotona päivittäin, kannettavat tietokoneet riittävät vaativiinkin työtehtäviin ja tietokoneen rikkoutuminen estää työnteon konttoritöissä.

OhjelmoitavuusMuokkaa

Tietokoneen merkittävin etu taskulaskimeen verrattuna on mahdollisuus ohjelmoitavuuteen ja mahdollisuus suorittaa eri ohjelmia. Taskulaskimella on helppo laskea muutama luku yhteen, mutta tuhansien lukujen laskeminen on työlästä. Tietokoneohjelma suoriutuu tehtävästä lyhyellä komentosarjalla. Churchin–Turingin teesin mukaan "kaikki laskettavissa oleva on laskettavissa Turingin koneella."

Seuraava esimerkki on kirjoitettu MIPS-suorittimen assembly-kielellä:

  begin:
  addi $8, $0, 0           # initialize sum to 0
  addi $9, $0, 1           # set first number to add = 1
  loop:
  slti $10, $9, 1000       # check if the number is less than 1000
  beq $10, $0, finish      # if odd number is greater than n then exit
  add $8, $8, $9           # update sum
  addi $9, $9, 1           # get next number
  j loop                   # repeat the summing process
  finish:
  add $2, $8, $0           # put sum in output register

TietokonearkkitehtuuriMuokkaa

Pääartikkeli: Tietokonearkkitehtuuri

Tietokonearkkitehtuureista yleisimmät ovat Von Neumannin arkkitehtuuri ja Harvardin arkkitehtuuri. Näiden lisäksi on muita luokitteluja.

Tietokoneen osatMuokkaa

 
Läpileikkaus tyypillisestä torni-mallisesta henkilökohtaisesta tietokoneesta ja sen oheislaitteista:
1. Skanneri
2. Keskussuoritin
3. Keskusmuisti
4. Laajennuskortit (näytönohjain, äänikortti, jne.)
5. Virtalähde
6. Optinen asema
7. Kiintolevy
8. Emolevy
9. Kaiuttimet
10. Näyttöpääte
11. Käyttöjärjestelmä
12. Sovellusohjelmisto
13. Näppäimistö
14. Hiiri
15. Ulkoinen kiintolevy
16. Tulostin

Tietokonejärjestelmään kuuluvat

Ohjelmisto jaetaan edelleen

  • kiinteisiin laiteohjelmiin (engl. firmware), jotka kytkeytyvät laitteistoon ja säätelevät muun muassa tietokoneen käynnistymisen alkuvaiheita
  • käyttöjärjestelmään, joka käsittelee laitteistoa ja useita muita toimintoja sovellusohjelmien puolesta
  • käyttöjärjestelmän päällä toimiviin sovellusohjelmiin

Tietokoneen laitteiston perusrakenne (niin sanottu Von Neumannin arkkitehtuuri) on säilynyt suunnilleen samana aina 1940-luvulta asti. Laitteistoon kuuluvat

  • suoritin (prosessori, engl. processor), joka suorittaa ohjelmaa
  • muisti (engl. data storage), johon tallentuvat sekä ohjelmat että niiden käyttämät tiedot
  • oheislaitteet (engl. peripheral device), joita voidaan käyttää tiedon syöttöön ja tulostukseen

Tietokoneen tulevaisuudestaMuokkaa

Mooren laki pätenee vielä jonkin aikaa, eli tietokoneiden kehitys jatkuu ainakin nykyisenlaisena.kenen mukaan? Tämä kehitys merkitsee:

  • teknisen älykkyyden radikaalin kasvun jatkumista (ks. Epistemologia: Tekninen ja inhimillinen tieto)
  • yhä älykkäämpien, suurempien ja ajantasaisempien tehtävien siirtymistä tietokoneille
  • tekniikan ja ihmiskunnan tietokoneistumista.

Tietokoneiden tulevaisuus on tietokoneverkoissakenen mukaan?. Mullistusta tietokonetekniikassa on esitetty kvanttitietokoneista.

Katso myösMuokkaa

LähteetMuokkaa

  1. Harvard vs Von Neumann Microcontroller Architectures
  2. Gillies, Duncan Fyfe: Lecture 1: An Introduction to Boolean Algebra Imperial College London.
  3. MBinary Digits Math is Fun
  4. CSC:n Louhi-supertietokone paisuu yli kaksinkertaiseksi syyskuussa 5 376 laskentaydintä lisää Digitoday 2008

KirjallisuuttaMuokkaa

  • Davis, Martin: Tietokoneen esihistoria Leibnizista Turingiin. Helsinki: Art House, 2003. ISBN 951-884-364-3.

Aiheesta muuallaMuokkaa

Wikisitaateissa on kokoelma sitaatteja aiheesta Tietokone.
 
Wikimedia Commonsissa on kuvia tai muita tiedostoja aiheesta Tietokone.