Luento 1 (verkkoluento 1) Tietokonejärjestelmä

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

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

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

Tietokoneen toiminta (Computer Organization I)

Aihepiiri Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Aihepiiri Tietokoneen toiminta (Computer Organization I) Tavoitteet (4) Mitä hyötyä tästä on? (4) Kurssien välisiä riippuvuuksia

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I) Mitä hyötyä tästä on? (4) Kurssien välisiä riippuvuuksia. Aihepiiri.

Aihepiiri Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I) Aihepiiri. Mitä hyötyä tästä on? (3) Tavoitteet. Kurssien välisiä riippuvuuksia

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Kertausluento 1 (lu01, lu02, lu03) Tietokonejärjestelmän rakenne ttk-91 ja sillä ohjelmointi

Tietokoneen toiminta, Kevät Copyright Teemu Kerola Järjestelmän eri tasot Laitteiston nopeus

Kertausluento luennoista 1-3 1

Teemun juustokakku Rekisterien, välimuistin, muistin, levymuistin ja magneettinauhan nopeudet suhteutettuna juuston hakuaikaan juustokakkua tehdessä?

Tietokoneen toiminta, K Tavoitteet (4)

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000

Luento 3 (verkkoluento 3) Ttk-91 konekielinen ohjelmointi. Ohjelman esitysmuoto Konekielinen ohjelmointi ttk-91:llä (Titokone, TitoTrainer)

Tietokoneen toiminta (Computer Organization I)

Muistihierarkia Kiintolevyt I/O:n toteutus

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta, K Tavoitteet (4)

Luento 12 Yhteenveto. Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat? Teemu Kerola, K2000

Jakso 2 TTK-91 -tietokone ja sen KOKSI -simulaattori

Luento 12 Yhteenveto. Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat? 29/01/2001 Teemu Kerola, Copyright 2001

Teemu Kerola Orientointi Syksy 2018

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

Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori

Luento 4 (verkkoluento 4) Aliohjelmien toteutus

Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori

Luento 4 (verkkoluento 4) Aliohjelmien toteutus

Luento 12 Yhteenveto

Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori

Jakso 2 TTK-91 -tietokone ja sen KOKSI -simulaattori

Luento 12 Yhteenveto

Tietokoneen toiminta Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat? Teemu Kerola, Copyright 2010

Luento 2 (verkkoluento 2) Ttk-91 järjestelmä

Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori

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

Luento 12 Yhteenveto. Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat?

Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat? Teemu Kerola, Copyright Tavoitteet (4)

Luento 12 Yhteenveto

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

1. Keskusyksikön rakenne

Luento 12 Yhteenveto. Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat? Teemu Kerola, Copyright 2010

Tavoitteet (4) Luento 12 Yhteenveto. Keskeisiä asioita. Mitä hyötyä tästä on? (2) Esimerkkikone: TTK-91 laitteisto suoritin - CPU

Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori. Miksi konekieltä? Tietokone TTK-91. Miksi ei oikeaa konekieltä?

Järjestelmän ulkoinen muisti I/O

Pikaintro käyttöjärjestelmiin

Miksi konekieltä? Jakso 2 TTK-91-tietokone ja sen KOKSI-simulaattori. Tietokone TTK-91. Miksi ei oikeaa konekieltä?

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

Luento 2 TTK-91 tietokone ja sen simulaattori. Miksi konekieltä? Tietokone TTK-91. Miksi ei oikeaa konekieltä? TTK-91 (1) TTK-91 laitteisto

Miksi konekieltä? Jakso 2 TTK-91-tietokone ja sen KOKSI-simulaattori. Tietokone TTK-91. Miksi ei oikeaa konekieltä? TTK-91: rekisterit

Jakso 2 TTK-91-tietokone ja sen KOKSI-simulaattori

4. Lausekielinen ohjelmointi 4.1

Jakso 2 TTK-91-tietokone ja sen KOKSI-simulaattori

Miksi konekieltä? Jakso 2 TTK-91-tietokone ja sen KOKSI-simulaattori. Tietokone TTK-91. Miksi ei oikeaa konekieltä? TTK-91: tietotyypit (2)

Luento 2 (verkkoluento 2) Ttk-91 järjestelmä

Ongelma(t): Miten mikro-ohjelmoitavaa tietokonetta voisi ohjelmoida kirjoittamatta binääristä (mikro)koodia? Voisiko samalla algoritmin esitystavalla

Muistihierarkia Kiintolevyt I/O:n toteutus

Tietokoneen rakenne (2 ov / 4 op) Syksy 2006

Tiedon sijainti suoritusaikana (3) Luento 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Miten tietoon viitataan? (4)

Luento 3 Konekielinen ohjelmointi (TTK-91, KOKSI)

Tietokoneen rakenne (2 ov / 4 op) Syksy 2007 Liisa Marttinen. Helsingin yliopisto Tietojenkäsittelytieteen laitos

Luento 3 Konekielinen ohjelmointi (TTK-91, KOKSI)

Luento 4 Aliohjelmien toteutus

Jakso 4 Aliohjelmien toteutus

Luento 4 Aliohjelmien toteutus

Luento 4 Aliohjelmien toteutus

Luento 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Muuttujat Tietorakenteet Kontrolli Optimointi Tarkistukset

Tiedon sijainti suoritusaikana. Luento 3 Konekielinen ohjelmointi (TTK-91, KOKSI)

Käännös, linkitys ja lataus

Oppimistavoitteet kurssilla Tietokoneen toiminta

Tiedon esitysmuodot. Luento 6 (verkkoluento 6) Lukujärjestelmät Kokonaisluvut, liukuluvut Merkit, merkkijonot Äänet, kuvat, muu tieto

Luento 4 Aliohjelmien toteutus. Tyypit Parametrit Aktivointitietue (AT) AT-pino Rekursio

Luento 0: Kurssihallinto Tietokoneen rakenne (2 ov / 4 op) Syksy 2006

Luento 3 Konekielinen ohjelmointi (TTK-91, KOKSI)

Luento 9 Järjestelmän ulkoinen muisti

Jakso 4 Aliohjelmien toteutus

Aliohjelmatyypit (2) Jakso 4 Aliohjelmien toteutus

Käyttöjärjestelmän rakenne

Suoritin. Jakso 5 Suoritin ja väylä. TTK-91 muistin rakenne. TTK-91 suorittimen rakenne

Tietokoneen toiminta Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat? Teemu Kerola, Copyright 2003

Suoritin. Luento 5 Suoritin ja väylä. TTK-91 muistin rakenne. TTK-91 suorittimen rakenne

Tieto ja sen osoite (3) Jakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Osoitinmuuttujat. Tieto ja sen osoite (5)

Luento 3 Konekielinen ohjelmointi (TTK-91, KOKSI)

Jakso 3 Konekielinen ohjelmointi (TTK-91, KOKSI)

Luento 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Muuttujat Tietorakenteet Kontrolli Optimointi Tarkistukset

Luento 9 Järjestelmän ulkoinen muisti

Luento 3 Konekielinen ohjelmointi (TTK-91, KOKSI) Muuttujat Tietorakenteet Kontrolli Optimointi Tarkistukset

Transkriptio:

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. Tietokonelaitteisto Oheislaitteet (peripheral or I/O devices) Tietokone (computer) 2

Tietokone suoritin (CPU) muisti väylä tai väylät laiteohjaimet Liitännät muiden koneiden kanssa wifi, modeemi,... Liitännät laitteiden kanssa Levy, DVD, CD, Tulostin, Liitännät ihmisten kanssa Hiiri, näyttö, Peliohjain, Keskustele 3

Tietokoneohjelman sijainti ja esitysmuoto Käyttäjän kannalta jossain tietokonelaitteistossa jossain muodossa helppo suorittaa napauta ikonia hiirellä anna ohjelman nimi ja parametrit tekstuaaliselle käyttöliittymälle DOS, UNIX tai Linux kehotteen jälkeen laita DVD-levy DVD-asemaan Laita muistitikku USB-liittimeen 4

Tietokoneohjelman sijainti ja esitysmuoto (jatkuu) Pitkäaikainen talletus jollain laitteella, jossa tieto säilyy myös ilman sähkövirtaa kovalevy, magneettinauha, CD, DVD, SSD-muisti jollain kielellä kuvattuna ohjelmointikielet: Java, Fortran, C, tietokannan kuvauskielet: SQL, SQL*Forms, suorittimen konekieli: x86, MIPS, PA-RISC,... pakattuna ehkä jollain tavoin zip, tar, gz,... 5

Tietokoneohjelman sijainti Suoritusaikana muistissa Muuna aikana esim. levyllä, verkossa, tms. suoritin (CPU) muisti väylä tai väylät Suoritusaikainen talletus pitkäaikainen talletus Keskustele 6

Konekieli Suorittimen konekielen käskykanta määrittelee tietokoneen käskykanta-arkkitehtuurin ISA - Instruction Set Architecture Kukin käsky on esim. 10-numeroinen kokonaisluku Usein esitetty symbolisella konekielellä käsky jaettu osiin (kenttiin) joidenkin kenttien arvot kuvattu symboleilla helpompi ihmisten lukea ja kirjoittaa Helppo kääntää konekielelle 2234563212 5437658756 LOAD R1, Summa 7

Symbolinen konekieli Yleinen esitystapa konekielisille ohjelmille luettavassa muodossa oleva konekieli Helppo muuttaa konekieleksi suora vastaavuus konekieleen usein mielletään (vähän väärin, muttei paljon): 129543876 439874387 544399765» LOAD R2, Summa ; R2 Mem(Summa) ADD R2, =5 ; R2 R2 + 5 JUMP Loop ; PC Loop (koodi) (; kommentti) symbolinen konekieli» konekieli 8

Ohjelman toteutus symbolisella konekielellä (assemblerilla) Margaret Hamilton ja AGC:n (Apollo Guidance Computer) lähdekoodin listaus AGC ohjelmoitiin assemblerilla Margaret Hamilton Otti käyttöön termin ohjelmistotuotanto käyttämiensä ohjelmointiperiaatteiden kuvaamiseen vuonna 1968 Augusta Ada Lovelace Award, 1986 https://en.wikipedia.org/wiki/apollo_guidance_computer 9

Korkean tason ohjelma vs. Ongelma: konekieli Ohjelma on talletettu korkean tason ohjelmointikielellä (esim. Java) pitkäaikaismuistiin (esim. kovalevy), mutta suoritusta varten sen tulee olla suoritettavan tietokonelaitteiston prosessorin konekielellä laitteiston muistissa. Ratkaisu: esitysmuodon muunnokset käännös linkitys lataus ohjelmointikieli fi konekieli paketoidaan kirjasto-ohjelmat mukaan sijoitetaan ohjelma muistiin suoritettavaksi 10

Ohjelman esitysmuodot (4) Sum := Sum+1; Print (Sum); LOAD R1,40542 ADD R1,=1 STORE R1,40542 PUSH SP,R1 CALL 86488 muistissa käännös määritelty muualla eri moduulissa linkitys lataus samassa moduulissa LOAD R1, Sum ADD R1,=1 STORE R1, Sum PUSH SP, R1 CALL IOMod.Print LOAD R1, Sum ADD R1, =1 STORE R1, Sum PUSH SP, R1 CALL PrintRoutine PrintRoutine... levyllä 11

Central Processor Unit Arithmetic and Logic Unit Control Unit TTK-91 laitteisto suoritin - CPU ALU CU muisti (kirjastorutiinit) rekisterit MMU (käyttöjärjestelmä) (sisältää välimuistin) ohjelma data Memory Management Unit Cache väylä laiteohjaimet 12 Copyright Teemu Kerola 2016 23.9.2016

Laitteiston nopeus Järjestelmän eri komponenteilla on hyvin suuret nopeuserot laiterekisterit kaikkein nopeimmat välimuisti lähes yhtä nopea muisti jo aika hidasa laitteet hyvin hitaita kovalevy, SSD eräät laitteet todella hitaita magneettinauha, ihmisen käyttöliittymät muut tietokoneet todella hyvin hitaita pilvipalvelut 13

Teemun juustokakku Rekisterien, välimuistin, muistin, levymuistin ja magneettinauhan nopeudet suhteutettuna juuston hakuaikaan juustokakkua tehdessä? käsi pöytä jääkaappi kuu Europa (Jupiter) 0.5 sek (rekisteri) 1 sek (välimuisti) 10 sek (muisti) 12 pv (levy) 4 v (pilvi, ihminen) Keskustele 14

-- loppu -- Konrad Zuse: Z1 (1938 Saksa) mekaaninen laskin, kellotaajuus 1 Hz (käännä kampea!) kertolasku 5 s datamuisti 64W à 24b ohjelma reikänauhalta (filmiltä) http://irb.cs.tu-berlin.de/~zuse/konrad_zuse/en/rechner_z1.html 15