【春分养生】养好你的“小心肝”
Varhainen elektroniputkia k?ytt?v? tietokone (ENIAC)
Suurtietokone (IBM System/360)
P?yt?tietokone (IBM ThinkCentre S50 ja n?ytt?)
Supertietokone (IBM Summit)
Pelikonsoli (Nintendo GameCube)
?lypuhelin (LYF Water 2)

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 (yhdysvaltalainen ENIAC) ja lentokonesuunnittelun lujuuslaskentoihin (saksalainen Z3).
Tietokoneen toiminta
[muokkaa | muokkaa wikiteksti?]
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 yleisk?ytt?iset tietokoneet perustuvat John von Neumannin mallin mukaiseen rakenteeseen. 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]
Varhaisissa tietokoneissa k?ytettiin kymmenj?rjestelm?? ennen bin??rij?rjestelm?n yleistymist?, jota von Neumann ehdotti EDVAC:in ratkaisuna. Nyky??n suorittimien 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]
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.
Mekaanisten tietokoneiden (kuten Babbagen Analyyttinen tietokone) sijaan elektroniikkaan perustuvat tietokoneet yleistyiv?t. Digitaalinen tietokone korvasi analogiset tietokoneet. 1940-luvulla tietokoneet olivat releisiin tai elektroniputkiin perustuvia. N?iden j?lkeen tulivat transistoritietokoneet, joita seurasivat useita transistoreja integroivat mikropiireihin perustuvat tietokoneet. Nykyiset tietokoneet perustuvat integroituihin piireihin eli mikropiireihin.
Nyky??n yhdelle mikropiirille integroitu mikroprosessori voi sis?lt?? monta suoritinta – puhutaan suoritinytimist? tai vain ytimist?. Henkil?kohtaisissa tietokoneissa on tyypillisesti 4–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 grafiikkaprosessorin ja monien n?yt?naohjainten grafiikkaprosessoreita 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 profiloimalla ja suorituskykymittauksilla. 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 henkil?kohtaisen tietokoneen 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. Suurtietokoneiden painopiste on transaktioprosessoinnissa, jossa laitteisto I/O-nopeus voi olla merkitt?v?mpi tekij? kuin suorittimen nopeus. Virran kulutus voi olla sulautetuissa j?rjestelmiss? ja mobiililaitteissa merkitt?v?mpi tekij? kuin suoritusnopeus.
Tietokoneiden luokittelu
[muokkaa | muokkaa wikiteksti?]- P??artikkeli: Tietokonetyypit
Historiallisesti tietokoneet on luokiteltu kokoluokan mukaan usein eri tavoin:
- Suurtietokone (mainframe)
- Minitietokone
- Mikrotietokone
Supertietokoneella tarkoitetaan tietokonetta, joka valmistuessaan on tehokkaimpien tietokoneiden joukossa.
Muita luokitteluja ovat muun muassa k?ytt?tavan (mm. henkil?kohtainen tietokone) ja teknisen ratkaisun mukaan.
Tietokoneet on jaoteltu tekniikan mukaan eri sukupolviin.[5] Tietokoneluokat syntyiv?t ensimm?isen ja toisen sukupolven tietokoneiden my?t? ja kehittyiv?t kolmannen sukupolven suoritintekniikan my?t?.[5] Mikroprosessoreista on tullut yksitt?inen m??ritt?v? teknologia kaikissa tietokoneluokissa.[5]
Tietokoneiden historia
[muokkaa | muokkaa wikiteksti?]- P??artikkeli: Tietokonetekniikan historia
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. Havainto Mooren laista julkaistaan. Mikropiiri yleistyy. Ensimm?iset minitietokoneet kuten PDP-8.
- 1970-luvulla tietokonetta k?ytettiin l?hinn? tekniseen laskentaan. Mikroprosessori yleistyi. "Vuoden 1977 kolmikko" Apple II, Commodore PET ja TRS-80 ja ensimm?iset mikrotietokoneet esiteltiin. Unix ja Berkeley Software Distribution julkaistiin.
- 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. Tietokone on olennainen v?line monessa ty?ss? ja tietokoneen rikkoutuminen est?? ty?nteon konttorit?iss?.
- 2010-luvulla taulutietokoneet eli tabletit yleistyv?t. My?s ?lypuhelimet kehittyv?t voimakkaasti muuttuen k?yt?nn?ss? mobiilitietokoneiksi.
- Katso my?s: Sulautettu j?rjestelm?
Ohjelmoitavuus
[muokkaa | muokkaa wikiteksti?]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?. Kyseinen ohjelma laskee kokonaislukujen 1 – 1000 summan:
begin:
addi $8, $0, 0 # summa on alussa nolla
addi $9, $0, 1 # ensimm?inen yhteenlaskettava luku on 1
loop:
slti $10, $9, 1000 # tarkista, onko luku v?hemm?n kuin 1000
bne $10, $0, finish # jos luku on 1000 tai yli, lopeta laskeminen
# (mutta MIPSiss? seuraava k?sky ehdit??n viel? suorittaa)
add $8, $8, $9 # laske yhteen summaan
addi $9, $9, 1 # siirry seuraavaan lukuun
j loop # aloita silmukka alusta (slti-k?skyn kohdalta)
finish:
add $2, $8, $0 # sijoita summa tulosrekisteriin
Tietokonearkkitehtuuri
[muokkaa | muokkaa wikiteksti?]- P??artikkeli: Tietokonearkkitehtuuri
Tietokonearkkitehtuureista yleisimm?t ovat Von Neumannin arkkitehtuuri ja Harvardin arkkitehtuuri. N?iden lis?ksi on muita luokitteluja.
Tietokoneen osat
[muokkaa | muokkaa wikiteksti?]
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?
11. K?ytt?j?rjestelm?
12. Sovellusohjelmisto
13. N?pp?imist?
14. Hiiri
15. Ulkoinen kiintolevy
16. Tulostin
Tietokonej?rjestelm??n kuuluvat
- ohjelmisto (”softa”, engl. software)
- laitteisto (”rauta”, engl. hardware).
Ohjelmisto
[muokkaa | muokkaa wikiteksti?]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
Laitteisto
[muokkaa | muokkaa wikiteksti?]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 tulevaisuudesta
[muokkaa | muokkaa wikiteksti?]Mooren lakina tunnettu kehitys on ollut voimassa useita vuosikymmeni?, mutta kehitys on hidastunut.[6] Painopiste on siirtynyt suurempaan rinnakkaisuuteen ja t?m? vaikuttaa my?s ohjelmistojen kehitystapaan.[7]
T?m? kehitys merkitsee:l?hde?
- 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 tietokoneverkoissa. Mullistusta tietokonetekniikassa on esitetty kvanttitietokoneista.
Katso my?s
[muokkaa | muokkaa wikiteksti?]- Luettelo k?ytt?j?rjestelmist?
- Oheislaiteliit?nn?t
- Tietotekniikka
- Kannettava tietokone
- Minitietokone
- Tietokoneverkot
- Supertietokone
- Sulautettu j?rjestelm?
- Tietokonesimuloinnin keinot
- Tietokoneet ja mallintaminen
- Suomen ensimm?iset tietokoneet
- Henkil?kohtainen tietokone
- Puolijohdeteollisuus
- Viihde-elektroniikka
L?hteet
[muokkaa | muokkaa wikiteksti?]- ↑ Harvard vs Von Neumann (Arkistoitu – Internet Archive) Microcontroller Architectures
- ↑ Gillies, Duncan Fyfe: Lecture 1: An Introduction to Boolean Algebra Imperial College London. Arkistoitu 5.9.2012. Viitattu 1.4.2012.
- ↑ MBinary Digits Math is Fun
- ↑ CSC:n Louhi-supertietokone paisuu yli kaksinkertaiseksi syyskuussa 5 376 laskentaydint? lis?? Digitoday 2008
- ↑ a b c Gordon Bell: Bell’s Law For The Birth And Death Of Computer Classes (PDF) gordonbell.azurewebsites.net. Viitattu 14.8.2021. (englanniksi)
- ↑ Adam Dove: Moore’s Law is ending. What’s next? engineering.cmu.edu. Viitattu 24.9.2021. (englanniksi)
- ↑ Maurice Herlihy & Nir Shavit: The Art of Multiprocessor Programming, s. 1. Morgan-Kaufmann, 2018. ISBN 978-0-12-370591-4 (englanniksi)
Kirjallisuutta
[muokkaa | muokkaa wikiteksti?]- Davis, Martin: Tietokoneen esihistoria Leibnizista Turingiin. Helsinki: Art House, 2003. ISBN 951-884-364-3
- R. Pekka Malinen: Tietojenk?sittelyoppi. Tiedon portaat (8. osa). Porvoo: Werner S?derstr?m Oy, 1970.
Aiheesta muualla
[muokkaa | muokkaa wikiteksti?]