Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Tietokoneen toiminta (2 ov)

Samankaltaiset esitykset


Esitys aiheesta: "Tietokoneen toiminta (2 ov)"— Esityksen transkriptio:

1 Tietokoneen toiminta (2 ov)
Liisa Marttinen Avoin yliopisto, kevät 2005 Kurssin kotisivu: Liisa Marttinen

2 Kurssin oppimistavoitteet:
käsitteellisellä tasolla ymmärtää, miten tietokone toimii suoritin, keskusmuisti, välimuisti, ohjain, väylät, oheislaitteet miten tietokone suorittaa ohjelmia ohjelman esitysmuoto ja sijainti tietokoneessa suoritussykli, konekieli usean ohjelman ’samanaikainen’ suoritus käyttöjärjestelmän rooli EI SIIS TÄTÄ! Liisa Marttinen

3 Miksi tarpeen? Mitä hyötyä tästä on?
suoritusnopeus ja koodin viemä tila Tietokone osaa suorittaa vain omalla konekielellään esitettyjä konekäskyjä. Suoritusnopeus riippuu näiden käskyjen suorittamisesta, ei suoraan korkean tason kielen (C, Java, C++) esitysmuodosta. tehokkaan kääntäjän tekeminen koodin optimointi käsin tehokkaammaksi ja tiiviimmäksi konetasoisen toiminnan ymmärtäminen alemman tason ymmärtäminen auttaa ymmärtämään ylemmän tason asioita Miksi Javan byte-koodi kannattaisi kääntää? Mitä Java-ohjelmien kääntäminen oikein tarkoittaa? Mitä Java-ohjelmien suorittaminen tarkoittaa? Entä C-ohjelmien? Liisa Marttinen

4 Tietokonejärjestelmä
Keskusyksikkö (CPU) prosessori eli suoritin keskusmuisti väylät ohjaimet oheislaitteet

5 Kurssin (alustava)sisältö
1. jakso: Johdanto, Tietojärjestelmän rakenne 2. jakso: TTK-91-tietokone 3. jakso: TTK-91-käskykanta 4. jakso:Konekielinen ohjelmointi. 5. jakso: Aliohjelmien toteutus konekielen tasolla 6. jakso: CPU ja väylä 7. jakso: Tiedon esitysmuodot Liisa Marttinen

6 Kurssin (alustava) sisältö jatkuu:
8. jakso: Tiedon muuttumattomuus; järjestelmän sisäinen muisti 9. jakso: Ohjelman toteutus järjestelmässä 10. jakso: Ulkoinen muisti, I/O:n toteutus, I/O-laitteet 11. jakso: Käännös, linkitys, lataus 12. jakso: Tulkinta ja emulointi Kertausta ja yhteenveto Liisa Marttinen

7 Erilaisia tietokoneita
superlaskimet reitittimet tietokoneverkoissa pöytätietokoneet ja kannettavat tietokoneet kämmentietokoneet puhelimet upotetut tietokoneet mm. autoissa, pesukoneissa, kameroissa jne Liisa Marttinen

8 Yhä nopeampia, yhä tehokkaampia!
Tehostumiskerroin 1000 500 muistin pakkaustiheys 200 100 50 20 10 5 2 prosessorin nopeus muistin saantiaika Aika Liisa Marttinen

9 Keskusyksikkö, keskusmuisti, ohjaimet
prosessori eli suoritin ohjelman suoritus keskusmuisti Ohjelmat + data käyttöjärjestelmä tiedonsiirtoa väylät ohjaimet suuria määriä dataa oheislaitteet

10 Suuret nopeuserot tiedonsaannissa
keskusyksikön omat rekisterit (5 ns) välimuistirekisterit (10 ns) keskusmuisti ( ns) levy (10-50 ms), CD-levy (300 ms) magneettinauha verkon kautta toiselta koneelta ihmisen antama syöte 1 s – 10 s Liisa Marttinen

11 Nopeuserojen vaikutus (1)
1 ns = 1000 mikros 1 mikros = 1000 ms 1 ms = s 1 s = 10 **9 ns ihmisen antaman syötteen (1 s) saaminen kestää noin 200 miljoona kertaa kauemmin kuin tiedonsaanti rekisteristä! levyltä haku noin 2 miljoonaa kertaa pitempään kuin tiedonsaanti rekisteristä Liisa Marttinen

12 Nopeuserot ihmisen aikaskaalassa
ravintolan kokin tarvikkeet kädessä (1 s) ~ tieto rekisterissä pöydällä (2 s) ~ tieto välimuistissa jääkaapissa ( 10 s) ~ tieto keskusmuistissa Mitä kokilla vastaa levyltä haku? noin sekuntia eli 23 päivää Entä ihmisen antama syöte? 4600 – päivää eli vuotta Liisa Marttinen

13 Nopeuserojen vaikutus (2)
prosessori voi suorittaa vain keskusmuistissa olevaa ohjelmaa jos ohjelma tarvitsee tietoa levyltä tai käyttäjältä, niin prosessori siirtyy suorittamaan jotain toista ohjelmaa samanaikaisesti suorituksessa voi olla usea ohjelma, mutta yksi prosessori suorittaa vain yhtä kerrallaan Liisa Marttinen

14 Suorittimen toteutushierarkkia
Konekieliarkkitehtuuri mitä konekäskyjä kone osaa suorittaa ADD r1, A Moduulit yhteenlaskin, rekisteri, ALU Loogiset portit AND, NOT NOR A B (A+B) A B F 0 0 1 0 1 0 1 0 0 1 1 0 A B F F= (A+B) Liisa Marttinen

15 Käskykanta-arkkitehtuuri ISA (Instruction set architecture)
käskykanta = niiden konekäskyjen joukko, jotka kone osaa suorittaa tyypillisiä konekäskyjä ADD R1, 100 STORE R4, 20 COMP R3, R2 arkkitehtuuri? mitä käskyjä, mikä on käskyn rakenne miten osoittaminen hoidetaan? TTK-91: bittiä käskykoodi rekisteri muistinoudot indeksirekisteri osoiteosa Liisa Marttinen

16 Konekieli Suoritin osaa suorittaa vain omalla konekielellään esitettyä ohjelmakoodia! => suoritettavan ohjelman täytyy olla konekielisessä muodossa suoritin on hyvin nopea => ohjelman täytyy olla nopeasti saatavilla => oltava jo valmiina keskusmuistissa levyltä hakeminen on liian hidasta Liisa Marttinen

17 Ohjelma konekielelle Lausekielellä kirjoitettu ohjelma on joko käännettävä konekielelle kääntäjä korvaa lausekielen lauseet konekielen käskyillä, jotka suorittavat halutut toimenpiteet => konekielinen ohjelma, joka talletetaan muistiin suorittamista varten tai ohjelma on tulkittava tulkkiohjelma käy läpi ohjelman lauseita yksi kerrallaan ja generoi lauseen suorittamiseen tarvittavat konekieliset käskyt, jotka heti suoritetaan Liisa Marttinen

18 Kääntäminen Suoritin eli prosessori Keskusmuisti
kääntäjä (konekielinen ohjelma) suorittaa kääntäjä- ohjelman käskyjä. Tuloksena on C-ohjelma konekielisenä C-ohjelma (dataa kääntäjälle) C-ohjelma konekielisenä Liisa Marttinen

19 Käännetyn ohjelman suorittaminen
Suoritin eli prosessori Keskusmuisti suorittaa konekielisen C-ohjelman käskyjä. C-ohjelma konekielisenä Liisa Marttinen

20 Ohjelman tulkkaaminen
Suoritin eli prosessori Keskusmuisti tulkki (konekielinen ohjelma) suorittaa tulkki- ohjelman käskyjä datana tutkittava C-ohjelma. Tuloksena on aina yhden lauseen konekäskyt, jotka heti suoritetaan tulkin yhdestä lauseesta generoimat konekieliset käskyt C-ohjelma (dataa tulkille) Suoritin vuorottelee tulkin omien käskyjen ja sen generoimien konekäskyjen suorittamista Liisa Marttinen

21 Käyttöjärjestelmä ja prosessi
Käyttöjärjestelmä on ohjelma, joka valvoo koko tietokonejärjestelmän toimintaa jakaa koneen resursseja prosesseille prosessori, muisti, … toimii käyttöliittymänä laitteistoon Prosessi on suoritettava ohjelma työsuoritus käyttöjärjestelmä pitää kirjaa prosessien tiloista Liisa Marttinen

22 Prosessin kuvaaja (process control block)
sisältää kirjanpitotiedot prosessista mm. prosessin tunniste, ohjelmakoodin ja datan sijainti, avoinna olevat tiedostot ja niiden luku- ja kirjoituskohdat tiedot prosessin suoritusympäristöstä (= eri rekisterien arvot), jotta keskeytetty prosessi pystyy jatkamaan samasta tilasta, johon se keskeytettiin Liisa Marttinen

23 Moniajojärjestelmä suorituksessa on monta prosessia
suoritetaan vuorotellen yhtä kerrallaan joko kutakin tietyn maksimiajan kerrallaan tai vaihdetaan, kun suoritettava prosessi joutuu odottamaan esim. levyltä lukua suoritetaan samanaikaisesti useita prosesseja vain moniprosessorikoneessa käyttöjärjestelmä huolehtii prosessien vuorottamisesta (skeduloinnista) Liisa Marttinen

24 Käyttöjärjestelmä Vaikka suorituksessa on monta prosessia, niin ne eivät saa sotkea toistensa suoritusta kullakin prosessilla omat muistialueet, joita ne saavat käyttää Käyttöjärjestelmä on ohjelma, jolla on erityisoikeuksia etuoikeutettuja käskyjä, joita tavalliset ohjelmat eivät saa suorittaa voi viitata kaikkialle muistiin Liisa Marttinen

25 Esimerkkikone: TTK-91 Laitteisto, hardware (HW)
suoritin, muisti, väylät, oheislaitteiden liitännät Käskykanta - konekieliarkkitehtuuri konekäskyt, tiedon esitysmuodot, tietotyypit Symbolinen konekieli luettavampi muoto konekielestä Liisa Marttinen

26 CPU eli suoritin MUISTI MMU käyttöjärjestelmä rekisterit
muistinhallinta yksikkö käyttöjärjestelmä rekisterit kirjastorutiinit ohjausyksikkö CPU aritmeettis-looginen yksikkö ALU data ohjelma väylä Laiteohjaimet

27 Titokone-simulaattori KOKSI-simulattori
ohjelmia, jotka simuloivat hypoteettisen TTK-91-koneen laitteistoa symbolisen konekielen kääntäjä graafinen käyttöliittymä, virheenjäljitysympäristö (debugger) Liisa Marttinen


Lataa ppt "Tietokoneen toiminta (2 ov)"

Samankaltaiset esitykset


Iklan oleh Google