Etusivu | Materiaali | -- Luennot -- | Miksi | Ajatuksia |
ITKA203 K�ytt�j�rjestelm�t --- kes� 2007 --- Luennot ja muistiinpanot
Luennot on nyt pidetty. Alla on lista otsikoista ja k�sitellyist� aiheista. Luennoilla n�ytettiin k�yt�nn�n esimerkkej� auditorion tietokoneella, ja tuotettiin muistiinpanoja kurssimateriaalin pohjaksi.
Luento 1: Kurssi-info ja esitietojen varmistaminen
ti 22.5.
Yhteenveto luennolla puhutusta
- Kalvosarja: Kuka luennoi, kenelle, mit�, miksi ja mill� tavoin
- Arkihavaintoja k�ytt�j�rjestelm�st�:
- Auditorion tietokoneessa on Windows; k�ytt�j� voi klikkailla kuvakkeita ty�p�yd�ll� ja useita ohjelmia aukeaa eri ikkunoihin
- Digitaalikameran k�ytt�j� voi painella painikkeita; kamerassa on valikoita ja toimintoja; valos�hk�inen ilmi� tallentuu kameraan ja tulostuu sen LCD-n�yt�lle.
- Jalava-koneessa on monta k�ytt�j�� duunailemassa omia puuhiaan yht� aikaa. Pystyn n�kem��n muiden k�ytt�jien kotihakemistot ulkopuolelta, mutta niiden sis�ll�n listaaminen on kielletty�. "Permission Denied". Luotan, ett� vastaavasti muut eiv�t n�e minun tiedostojani.
- "Kertauksena" katsottiin l�pi kuvia Tietotekniikan Perusteet -monisteesta
(sivuilta 3,6,17,19,26,27,31,26,29,41,43,45):
- Tietokone on automaatti (v�h�n niinkuin juoma-automaatti mutta pienempi ja useampitilainen)
- Tietokone rakennetaan yksinkertaisista elektroniikkakomponenteista koostamalla
- Digitaalinen j�rjestelm� ottaa vastaan koodatun sy�tteen ja palauttaa koodatun vasteen
- Sy�tteen ja vasteen koodaus ykk�sin� ja nollina, jotka ilmenev�t s�hk�j�nnittein� niiss� pikkukomponenteissa
- Turingin kone on pieni, kuvitteellinen puksutin ��rett�m�n pitk�ll� nauhalla; toistaiseksi ei ole tietokonetta, joka tekisi sellaista mit� kyseinen puksutin ei saisi aikaan.
Lis�materiaalia
- "Esitieto:" Tietotekniikan perusteet -moniste
- Laskennan teoriasta jatkokurssi: Automaatit ja kieliopit
Luento 2: K�ytt�j�rjestelm� konepellin p��lt�, alta ja rajapinnasta
ke 23.5.
Monisteviitteet
- Luentomonisteen sivut 1-5
- Tulkittiin kuvia Tietotekniikan Perusteet -monisteesta (sivuilta 52,58-62,64,68,92-93,96);
Yhteenveto luennolla puhutusta
- Tietokonearkkitehtuuri: keskusyksikk�, muisti, v�yl�, I/O-laitteet
- Tunnetaan usein nimell� Von Neumann -arkkitehtuuri, vaikka John Von Neumann ei ollut ainoa keksij�
- V�yl�n rakenne:
ohjauslinja, osoitelinja, datalinja ("piuhoja" elektronisten
komponenttien v�lill�, yksi bitti per "piuha"; kukin linja
yhdistet��n tai katkaistaan tilanteen mukaisesti v�yl�n
ohjauskoneiston hoitamana.)
- Osoitev�yl�n leveys (bittipiuhojen lukum��r�) m��rittelee osoiteavaruuden laajuuden eli montako muistiosoitetta tietokoneessa voi olla
- Osoiteavaruus: V�yl�n kautta p��see k�siksi moniin paikkoihin, ja osoiteavaruus jaetaan usein (laitteistotasolla) osiin siten, ett� tietty osoitteiden joukko tavoittaa ROM-muistin (tehtaalla kiinnitetty), osa RAM-muistin (jota ohjelmat k�ytt�v�t), osa I/O-laitteet, osa prosessorin rekisterit.
- Datav�yl�n leveys (bittipiuhojen lukum��r�) m��rittelee kuinka paljon tietoa v�yl� korkeintaan voi siirt�� yhdell� siirto-operaatiolla
- Keskusyksik�n eli prosessorin
rakenne: ALU, kontrolliyksikk�, rekisterit, sis�inen v�yl�
- V�ltt�m�tt�m�t rekisterit:
- PC (program counter) kertoo, mist� haetaan (v�yl�n kautta) seuraava suoritettava k�sky
- IR (instruction register) tallentaa v�liaikaisesti t�ll� hetkell� suoritettavan k�skyn
- V�hint��n yksi datarekisteri laskutoimituksia varten
- V�hint��n yksi osoiterekisteri muistiosoitteiden tallentamista varten
- Lippurekisteri kertomaan suorituksen j�lkitilanteesta, esim. yhteenlaskun muistibitti
- K�skykanta: se joukko konekielisi� komentoja (bittijonoja) jotka joku tietty prosessorimalli osaa suorittaa; vaihtelee mallien v�lill�; yleens� k�skyj� on melko v�h�n ja ne tekev�t varsin pienen operaation kerrallaan (kuten yhteenlasku, kertolasku, bittien siirto rekisterist� toiseen, bittien siirto muistipaikan ja jonkun rekisterin v�lill�, suoritusj�rjestyken muuttaminen hypp��m�ll� eli k�skyosoiterekisterin arvon muuttaminen).
- Prosessoriarkkitehtuuri: Tietyn prosessorimallin k�skykanta ja lis�ksi ne tavat, joilla k�skyt muunnetaan biteiksi; t�h�n liittyy prosessorista l�ytyv�t rekisterit ja tavat, joilla rekistereit� voidaan k�ytt�� k�skyiss�
- V�ltt�m�tt�m�t rekisterit:
- Virtuaalikone virtuaalikonehierarkia k�sitteen�, esimerkkein� Emacs-editori ja Javalla tehty Fotoalbumi; kerrokset ja rajapinnat
- K�ytt�j�rjestelm�n tarkoitus ja teht�v�t: k�ytt�� fyysisen laitteiston rajapintaa, tarjoaa yleisemm�n (so. virtuaalisen) rajapinnan seuraavalle tasolle eli ohjelmointikielille ja niiden apukirjastoille. Ilmeisesti tarkoituksen toteuttamiseksi t�ytyy toteuttaa keinoja, joilla hallitaan useita ohjelmia, tietokonearkkitehtuurin osia, tiedostoja ja k�ytt�ji�
HUOM: Yksinkertaisuuden vuoksi ei mainittu ainakaan t�ss� kohtaa mit��n nykyprosessorien ominaisuuksista kuten ennakkonoudosta, liukuhihnoista, mikrokoodista tai v�limuisteista. Olennaisia toki, mutta eiv�t K�ytt�j�rjestelmien ymm�rt�misen kannalta. Moniprosessoriarkkitehtuureista puhutaan pari sanaa s�ikeiden yhteydess� parin viikon p��st�. Muistinhallintaan liittyv�st� prosessoriteknologiasta puhutaan hieman muistinhallinnan yhteydess�.
Lis�materiaalia
- "Esitieto:" Tietotekniikan perusteet -moniste
- Laitteistosta ja prosessoreista jatkokurssi: TIES523 Laitteistol�heinen ohjelmointi
- Intel Pentium -prosessorin manuaalit ("hardcore"...) -- Huolella kirjoitettua teknist� dokumentaatiota (lueskele, "jos j�� luppoaikaa"). T�t� aikansa silm�ilem�ll� ymm�rt�� jo aika paljon tietokoneen sielunel�m�st�. Muistit, prosessorin toimintatilat ja rekisterit, kaikki Intelin konekieliset k�skyt ja kuinka ne muutetaan bittikoodiksi...
-
SPARC -prosessoriarkkitehtuurin kuvaus
("hardcore"...)
-- vertailun vuoksi toinen manuaali. Ei prosessori vaan arkkitehtuuri sellaiselle.
N�k�j��n atk-keskuksen (edesmenneet) koneet
tukki
jakanto
olivat Sparceja. Mikroluokissa, t�iss� ja kotona meill� useimmilla lienee x86-prosessori kuten Pentium. - The Java Virtual Machine Specification kertoo miten Java-virtuaalikone toimii. (my�s hiukan HC, mutta ei liene paha hieman silm�ill� t�t�kin joskus kun kaipaa jotain kivaa tekemist�)
Luento 3: Ohjelmointi ja ohjelmointikieli ==> suoritus ja konekieli
to 24.5.
Monisteviitteet
- (Luentomonisteessa ei varsinaisesti ole vastaavaa kohtaa; kielij�rjestelm�t mainitaan sivulla 3, ja er��st� konekielest� on esimerkkej� s. 6-16)
Yhteenveto luennolla puhutusta
- Kalvosarja luennon p��kohdista
- Unix-shellit, interaktiivisen shellin k�ytt�, varoituksia
- P��teyhteys PuTTY SSH Clientilla
- Mikroluokkien U: -asema on sama asia kuin kotihakemistosi THK:n suorak�ytt�koneissa
- Joitakin unix-komentoja; demossa 1 tulee lis��.
- Tiedosto heksaeditorilla n�htyn�: 8-bittisi� tavuja per�kk�in
- Tekstitiedon koodaus; vaihtelevia k�yt�nt�j� mm. ��kk�set ja rivinvaihdot
- Ohjelmointikieli�: k��nt�mist� ja tulkkausta
- Java-ohjelman k��nt�minen, bin��rinen tavukoodi
- Luennolla tehty esimerkkiohjelma: MunOhjelma.java
- Komentorivi ja ohjelman argumentit; kaikille ohjelmille voi antaa argumentteja (toiselta nimelt��n komentoriviparametreja)
- C-ohjelman k��nt�minen, bin��rinen natiivi konekielikoodi
- Luennolla k�sitelty esimerkkiohjelma: bytes_to_bits.c
- em. esimerkki olettaa, ett� char-muuttujan pituus olisi aina 8 bitti�. Vaarallista :-(
- C:n ja Javan vertailua
- Varoituksia C:n vaaroista
- Miksi laitteita tai k�ytt�j�rjestelmi� ei ohjelmoida Javalla (ainakaan toistaiseksi)
- Demossa 2 on k�yt�nn�n harjoitteina C-kielen ja imperatiivisen paradigman pikakurssi Sinulle, joka olet toistaiseksi ohjelmoinut Java-kielell� olioita k�ytt�en
Lis�materiaalia
- Netist� l�ytyi t�llainen: Learning C from Java -- tuntuisi olevan ihan hyv� matsku C-kielen yksityiskohtiin Java-n�k�kulmasta
- Historiaa: Jonkinlainen kartta ohjelmointikielist� 1950-luvulta saakka
- 2500 muuta ohjelmointikielt�
Luento 4: Assembler, konekieli, aliohjelmat ja keskeytykset
ti 29.5.
Yhteenveto luennolla puhutusta
- Aiheotsikot (PDF)
- Ensimm�inen, h�rskisti asiavirheit� sis�lt�v� versio materiaalista, jolla t�ll� kertaa korvataan luentomonisteen sivut 6-21, kunhan teksti v�h�n aikuistuu nykyisest� -- toivottavasti reilusti ennen tentti�.
- Luentomonisteen sivut 6-17 ovat ihan hy�dyllist� lukemista; siin� esitelty arkkitehtuuri on Intel 8086 tai ehk� 80286 (80-luvun prosessoriteknologiaa; pohjimmiltaan nykyinen on samanlaista, vaikka prosessoreissa on enemm�n toiminnallisuutta pienemm�ss� fyysisess� tilassa.)
- Luentomonisteen sivut 18-21
Lis�materiaalia
T�ss� nykyaikaista lis�materiaalia ihmetelt�v�ksi. Ei todellakaan ole tarkoitus lukea 1500 sivua, vaan korkeintaan n�hd� v�h�n p��lt�, ett� millaisen k�ytt�ohjeen prosessorivalmistaja aina julkaisee. Intro-luvut (parikymment� ensimm�ist� sivua) kertovat dokkarien sis�ll�st� ja oletetusta kohderyhm�st�. Terminologian ja k�siteltyjen asioiden pit�isi tulla esille t�ll� kurssilla, eli t��ll� pit�isi synty� pohjat tuollaisten manuaalien lukemiseen jatkossa, tarvittaessa.
- AMD64-arkkitehtuuri
- Erityisesti AMD64 -arkkitehtuurin rekisterit ja k�skykanta (linkki)
- Intel 64 -- Intelin " kopio" kyseisest� arkkitehtuurista
- THK:mme Jalava-kone on 4-prosessorinen Intel Xeon -- olennaisesti yhdenlainen "x86-64".
- IT-porukan ty�- ja opintopalvelimena toimiva Charra puolestaan on 2-prosessorinen AMD Opteron -- siis my�s "x86-64".
Luento 5: Prosessit ja prosessien vuorottelu
ke 30.5.- Luentomonisteen sivut 22-34
- Muistiavaruudet (fyysinen ja prosessin oma virtuaalinen) luentotuhruna.
- Muistiosoitteet: mist� prosessori milloinkin noutaa k�skyj�.
- Alustus prosessin k�sitteeseen
- Lopullisempi versio nouto-suoritus -syklist�, sis�lt�en keskeytyksen k�sittelyn
- FLIH eli first level interrupt handling; prosessorin atomiset toimenpiteet ennen paluuta nouto-suoritus -sykliin
- Keskeytysvektori
- Moniajon idea, aikaviipale, prosessin tilat running, ready ja suspended
- Prosessorin siirtyminen keskeytysk�sittelij��n
- k�ytt�j�rjestelm�kutsu, "prosessin itse pyyt�m� keskeytys"
Luento 6: Prosessit ja prosessien vuorottelu, jatkoa
Prosessien synkronointi ja kommunikointi (IPC), alkua
to 31.5.
- Luentomonisteen sivut 22-34
- Luentomonisteen sivut 35-42
- Luentosuhrut t�ydennettyn�: prosessikasitteita.txt
- Lis�� prosessien tiloista ja vuorontamisesta
- Tilanvaihdokset keskeytysten ja k�ytt�j�rjestelm�kutsujen kohdalla
- Vuorontamismenettelyj�: er�ajo (yksi prosessi alusta loppuun, sitten seuraava ==> hukkaa prosessoriaikaa I/O-suorituksiin), kiertojono (round robin, yksi aika-annos Ready-jonon prosesseille aina samassa j�rjestyksess� paitsi I/O:ta odottavat prosessit Blocked-jonossa normaalikierron ulkopuolella), prioriteettimenettelyt (vuorontaja ratkaisee jollakin perusteilla, mik� prosessi tarvitsee juuri nyt seuraavan aika-annoksen)
- Prosessitaulu, prosessielementti (PCB)
- Konteksti ja kontekstin vaihto
- Prosessin luonti: Unixin fork() -kutsu. Koodiesimerkki: minish.c -- yksinkertainen shell-ohjelma Unixille
- Alustus prosessien v�liseen kommunikointiin (IPC)
- Viestijonot PCB:ssa
- Signaali. Koodiesimerkki: sigesim.c -- ohjelma, joka m��rittelee signaalien k�sittelyn itse.
- ensi viikolla lis��
Luento 7: Prosessien synkronointi ja kommunikointi, jatkoa. S�ikeet.
ti 5.6.- Luentomonisteen sivut 22-42
- Lis�� prosessien kommunikoinnista ja synkronoinnista
- Motivointia moniohjelmointiin: tausta-ajot ja GUIt yht�aikaa
- S�ikeet vs. prosessit
- ULT ja KLT -s�ikeistys. Pienet lis�huomiot: saie.txt
- Prosessien v�linen kommunikointi viestijonon avulla ("send()- ja receive()"). Esimerkkikoodi: chattomyself.c
- Moniohjelmoinnin ongelmakohtia, jotka pit�isi ratkaista, mm. poissulkeminen ja lukkiutumisen v�ltt�minen
- Esimerkkikoodi, jossa s�ikeet tulostavat coolisti
Matrix-elokuvatyyppisesti merkki kerrallaan yhteiseen
tulostusvirtaan:
Linkki
alkuper�iseen netist� l�ydettyyn esimerkkiin, joka
on siis ihan jonkun muun kurssimateriaalia, jonka p�llin
huolella t�ysin luvatta. K��nt�minen jalavassa vaati
pari muutosta; rohkenen laittaa t�h�n n�m�, vaikkeiv�t
ole omia tekeleit�ni: thread_nosem.c (ongelmallinen) ja
thread_sem.c (ongelma
ratkaistu). K��nn�s vaatii s�iekirjaston eli
k��nt�j�option
-lpthread
. - HUOM! Vaikka Java tarjoaa sovellusohjelmoijalle helpot tavat moniohjelmointiin, on n�k�kohdat otettava huomioon siell�kin! Katso esimerkiksi Deadlock.java (Sunin Java-s�ieohjelmointi -introsta)
- Em. intro muuten opastaa s�ieohjelmointiin
Java-n�k�kulmasta, joten siihen kannattaa jossain
vaiheessa tutustua, jos ei viel� ole ehtinyt. Ja
kirkkaana mieless� t�ll� kurssilla opitut yleiset
ongelmat perusteluineen! Ratkaisut vaan on tehty
Java-ohjelmoijan kannalta helpoiksi sill�, ett�
v�liss� on se virtuaalikone JVM ja ohjelmointikieli
tukee suoraan moniohjelmoinnin k�sitteit�, avainsana
synchronized
ym. S�ieohjelmien tekeminen ei siis ole t�m�n kurssin asiaa, mutta s�ikeiden toteutus, yleiset ongelmat, ratkaisut ja ratkaisuun osallistujat "konepellin alla, p��ll� ja rajapinnassa" ovat.
Yrit�n eksplikoida motivaatioajatuksen: Tietoj�rjestelm�n tekij�n (konepellin p��ll�) tulee ymm�rt�� j�rjestelm�ss� olevien ohjelmakomponenttien suorituksiin (konepellin alla) liittyv� pelikentt�, jotta h�n osaa tehd� tarvittavat suunnitteluratkaisut (abstraktisti). Lopputulos toteutuu rajapinnan avulla (mutta se on pikkujuttu em. yleiskuvaan verrattuna, ja se on ty�kalusta riippuen erilainen). T�m� kurssin puoliv�liin sijoittuva motivaatioajatus ei liity ainoastaan s�ikeisiin, vaan kaikkeen muuhunkin. Se nyt vaan tulee heitetty� sanoiksi t�ss� kohtaa.
Luento 8: Prosessien synkronointi ja kommunikointi loppuun
Pikkuhuomioita microkernel-mallista ja moniprosessorikoneista.
ke 6.6.
- Luentomonisteen sivut 22-42
- Jaettu muistialue kommunikointitapana, esimerkiksi rengaspuskuri
- Moniohjelmoinnin ongelmakohtia, jotka pit�isi ratkaista, mm. synkronointi eli vuoronnusj�rjestyksen hallinta, tuottaja-kuluttaja -ongelma
- Semafori: k�ytt�j�rjestelm�kutsujen ohjelmointi sovelluksen kriittisen alueen ymp�rille; kyseisten k�ytt�j�rjestelm�kutsujen toteutus ja toiminta KJ-tasolla
- Semaforin k�ytt� poissulkemiseen
- Semaforien k�ytt� synkronointiin, tuottaja-kuluttaja -ongelman ratkaiseminen kolmella semaforilla
- Luennolla kirjoitettu esimerkkiteksti: synkronointi.txt. (luennolla mulla tuli joku oikosulku logiikkaan, mm. unohdin mik� alkuper�inen ongelma olikaan; teksti on nyt koetettu t�ydent�� paremmaksi ja rautalankamaisemmaksi)
- Pari huomiota microkernel-toteutuksesta verrattuna monoliittiseen k�ytt�j�rjestelm��n
- Flynn-luokitus
- Moniprosessorit: Prosessoriteknologian nykytilanne ja tulevaisuus: rinnakkaiset prosessorit ja yksi keskusmuisti; haasteellinen k�ytt�j�rjestelm�n ja laitteiston toteutustavoille; k�ytt�j�n ja sovellusohjelmoijan kannalta moniohjelmoinnin hy�dyt (mm. ohjelmien moniajo, ohjelman sis�iset tausta-ajot, ohjelmien modulaarisuus) sek� ongelmakohdat (mm. lukkiutuminen, suoritteiden synkronointi, poissulun tarve) ihan samoja kuin yhden prosessorin moniajossa.
Luento 9: Muistinhallinta, virtuaalimuisti.
ti 12.6.- Luentomonisteen sivut 43-47
- Luentomonisteen sivut 48-57
- (ja osittain my�s alkup��n sivut korvaava lis�materiaali)
- muistit_sivutus.txt Tekstimuotoinen luentohuhru. Graafinen tulossa oikopiirrettyn�...
- Fyysinen muisti, muistin jakaminen prosesseille
- Yleisidea, oheismuistin (kovalevyn) k�ytt�
- Segmentointi, sivutus
- Toteutuksesta: K�ytt�j�rjestelm�n tietorakenteet, laitteistotason tuki prosessoreissa, TLB
- Sivuviittausvirhe ja sen k�sittely
- Muistin organisointi: v�limuistit
Luento 10: Oheislaitteet ja I/O. Tiedostoj�rjestelmist�
ke 13.6.- Luentomonisteen sivut 58-64
- Fyysinen laite, esim. moderni kovalevy (+huomioita muista laitteista; n�pp�imist�, hiiri, monitori, verkkoyhteys)
- V�yl� ja I/O -moduulit (t. kanavat, ohjaimet, kontrollerit)
- Keskeytykset, DMA
- K�ytt�j�rjestelm�n vastuut, tarvittavat ohjelmat ja tietorakenteet
- Laiteriippuva- ja laiteriippumaton ohjelmisto; abstraktiot
- Laiteajuri
- Kovalevyjen ja tiedostoj�rjestelmien kentt��: v�limuistit, RAID, journalointi
- (jatkuu/tarkennetaan luennolla 11 tai 12, jos j�� kesken)
Luento 11: Pieni syvennys shell-ohjelmointiin
to 14.6. (huomioi paikka: Beeta)Ensin k�yd��n eilinen aihe loppuun; ehk� n. 20 minuuttia tjsp. eli sivutaan aihetta "laiteajurin toteutuksesta"
- K�ytiin l�pi demo 1:n lisukkeena ollutta skripti�, joka mm. k�sittelee grafiikkaa komentoriveill� apuohjelmiston avulla
- Ohjelmoinnin perusrakenteita shelliss�: muuttujat, ehdot, toistot, aliohjelmat, argumentit, rekursio (k�sittely j�i hiukan lyhyeksi; lis�� demossa 4 tai sitten tulevat vastaan joskus my�hemmin)
- K�ytt�tarkoituksia: mm. login-asetukset, ajoitetut teht�v�t, usein toistuvat komentorimpsut
- Ymp�rist�muuttujat (ei ehditty k�sittelem��n; demossa 4 tai sitten tulevat vastaan joskus my�hemmin)
Luento 12: Valaistuneempi n�k�kulma tietokoneeseen
ti 19.6.- K�ytiin l�pi kertaavia poimintoja aiemmista luennoista, ja yritettiin liitt�� asioita toisiinsa; tuli v�h�n sellanen monologinpajattajaolo.
- Tietokone tietokoneessa: emulaattorit ja simulaattorit; toteutustapoja ja k�ytt�tarkoituksia
Lis�materiaalia
- Bochs -- yksi avoin toteutus "tietokoneelle tietokoneessa". T�llaisen kun asennat, voit kokeilla x86-64 -koneellasi (siis sill� asennetulla virtuaalisella Bochsilla) vaarattomasti ihan mit� vaan (eksoottiset k�ytt�j�rjestlm�t, oman k�ytt�j�rjestelm�n tekeminen, ohjelmalliset tietoturvahy�kk�ykset ...)
Luento 13: Linux Kernel
ke 20.6.- Linux Kernel l�hdekoodi ja dokumentaatio: n. 8M rivi� koodia (ja dokumentaatiota), n. 2% assembleria, loput C-kielt�. Paljon laitespesifisi� ajureita.
- Moduulijako toiminnallisen samuuden mukaan; p��tasolla suurin piirtein kurssillamme k�siteltyjen aihekokonaisuuksien nimet (ja pari sellaista, joita emme ehdi t�ll� kurssilla k�sitell�); monta kerrosta moduulihierarkiaa
- Prosessielementin toteutus Linuxissa:
task_struct
-tietorakenne - Initialisointi: Linuxin ensimm�iset toimenpiteet heti koneen k�ynnist�misen j�lkeen (itse asiassa ns. boot loaderin suorituksen j�lkeen); erilaisia konekieli�.
- Tiedostoj�rjestelm�n tietorakenteita k�yt�nn�n toteutuksena (n�ihin ei ehditty, mutta siell� ne tietenkin ytimess� olisivat, omassa moduulissaan)
Lis�materiaalia
- Linux kernel
- Pieni "kartta", josta voi ottaa suuntaa koodien tutkimisessa. T�m� on osa isompaa nettijulkaisua.
Luento 14: Kertaus, paikkaukset, loppukeskustelu, tenttit�rpit
to 21.6.- Kes�n 2007 tenttit�rpit (PDF)
- Mit� k�siteltiin, mik� oli t�rkeint�; mit� seuraavaksi
- Paikattu kirjallinen materiaali julkaistaan sivulla Materiaali. Luennoilla suusta p��sseihin sammakoihin ja asiavirheisiin on aika vaikea t�ss� vaiheessa puuttua muuten kuin kirjoittamalla ne niin kuin ne piti sanoa. Ja sekin on edelleen luennoitsijan (aina) ep�t�ydellinen ymm�rrys asioista. Kriittisyys ja kuulijan vastuu t�ss�kin ...
- Loppukeskustelu jopa tapahtui! Yhteenveto sivulla Ajatuksia.
- SUURI KIITOS luennoilla istuneille; teid�n edess� oli mukava yritt�� selvennell� t�rke�ksi n�kem��ni asiaa!
Viimeksi kajottu 2007-06-26.