From a31a9cc31b78b75cf39c053253a23d2183054fe1 Mon Sep 17 00:00:00 2001
From: Paavo Nieminen <paavo.j.nieminen@jyu.fi>
Date: Fri, 3 May 2024 16:22:15 +0300
Subject: [PATCH] Luennon 12 tulemaa tuoreeltaan.

---
 luentosuunnitelma_2024.org | 543 ++++++++++++++++++++++++++++++++-----
 1 file changed, 479 insertions(+), 64 deletions(-)

diff --git a/luentosuunnitelma_2024.org b/luentosuunnitelma_2024.org
index ca5ac61..561dd5f 100644
--- a/luentosuunnitelma_2024.org
+++ b/luentosuunnitelma_2024.org
@@ -1778,6 +1778,316 @@ ollut pakko, kun oltiin ensimmäistä kertaa tärpin parissa ja osa
 porukasta jäi vielä vapaaehtoisesti yliajalle käsittelemään sitä)
 
 
+** Luento 12: (pe 3.5.2024) (P/J) Tärppejä lisää
+*** Tämän päivän agenda
+
+Ryhmätyöpainotus: tenttitärppejä, muistiinpanojen vertailua ja kysymyksiä .
+
+*** Infot keväälle 2024
+
+- Demo 4 tarkastettu kaikilta palauttaneilta tämän päivän mittaan
+
+- Käyttäkää ensi viikon Open labrapäivät hyödyksi. Kysymyksiä ylös,
+  niin muistat kysyä! Tekemisen haasteita on paras näyttää käytännössä
+  ruutujaolla tai mikroluokassa ruudulta.
+  
+*** Seuraava ennakkotehtävä (sama kuin eilen todettiin)
+
+Lukemista:
+
+- Demo 5 ohjeteksti
+
+- Monisteen luvut 9-10
+
+Katselemista:
+
+- Aihepiirivideot monisteen koodiliitteessä olevista
+  esimerkeistä. Näiden tavoite on tukea teoriaosuuden ymmärtämistä.
+
+Tekemistä:
+
+- Demo 4b valmiiksi ja palautus + asioiden sisäistäminen tähän
+  astisesta.
+
+- Demo 5 työn alle. *HUOMAUTUS:* Demo 5:n katselu voi auttaa myös demo
+  4b:n ymmärtämistä! Eli niiden tekemisjärjestystä voi koettaa vaihtaa
+  tai yhdistää toisiinsa, jos tuntuisi olevan hyödyksi itselle.
+
+- Omatoimisia kokeiluja, havainnekuvien piirtelyä ja niiden kautta
+  yhteyksien etsimistä teorian, käytännön ja
+  rajapintadokumentaatioiden välille.
+
+- Tarkennusta tai rautalankaa vaativien kysymysten listaamista ylös,
+  jotta voidaan vääntää rautalankaa niistä.
+
+Kestomuistutus: 5 opintopistettä 8 viikossa tarkoittaa keskimäärin
+16-17 tuntia viikossa tehokasta tekemistä. Muista tauot ja lepo, koska
+muuten ne varsinaiset tekemisen hetketkään eivät ole niin tehokkaita
+kuin voisivat olla!
+
+
+
+
+
+
+*** Aihepiiri: Tsemppausta kevään 2024 toteutuksen tekijöille
+
+Paikan päällä pienryhmien lämmittely fiiliskierroksen merkeissä
+
+Kerätään vähän fiiliksiä yhteen myös koko porukan kesken:
+
+- Joku ryhmä hyppäsi jo asiaankiin.
+
+- Toisella ryhmällä itse asia vaikutti tunteisiinkin.
+
+- Kurssista puhuttiin kolmannessakin ryhmässä
+
+Havaintoja:
+
+- Demo 4b aiheutti päänvaivaa aamulla
+
+- Monisteen luku 4 tuli aiemmin luettua huolella, mutta tuntuu, että
+  ilmeisesti ei tullut syväopittua sitä. MUTTA on MAHTAVAA päästä
+  vetämään tuskassa epämukavuusalueella!
+
+- Linkkivinkki: GNU Assembler examples
+  ( https://cs.lmu.edu/~ray/notes/gasexamples/ )
+
+
+*** Tauko 14 minuuttia.
+
+Jatketaan tasan 11:10
+
+*** Tenttitärppi nro 2
+
+Tässä kohtaa kevään 2024 toinen tenttitärppi.
+
+**** Kevään 2024 menettely
+
+"Näätäilyä" eli luentotilaisuuteen kytkettyä ryhmäkeskustelua on
+kokeiltu erilaisin tavoin useiden vuosien ajan inkrementaalisti.
+
+Keksitään pyörä uudelleen jollain tähän kevääseen sopivalla
+tavalla. Raamit:
+
+- Yksin-ryhmissä-kaikki -menettely; sama sukka sopii joskus moniinkin
+  jalkoihin.
+
+- Saadaan kuvaa omasta ja kaverien oppimisen vaiheesta *ilman
+  suorituspaineita*; kokonaiskuva välittyy tallennettujen osioiden
+  kautta myös kotikatsomoihin
+
+- Simuloidaan tenttiä, jolla kevään 2024 opintojaksosta tulee lopuksi
+  arvosana.
+
+**** Protokolla:
+
+  - Kolmen hengen ryhmät lähellä istuvien kanssa.
+
+  - 3*30 sekunnin nimi- ja fiiliskierros, jotta keskustelu lämpenee.
+    (voidaan tehdä myös session aluksi, ei tarvitse joka kysymyksen
+    kohdalla lämmitellä uudelleen)
+
+  - Päivän tenttitärppi yksin-ryhmissä-kaikki -menettelyllä (seuraava
+    kohta).
+
+  - Oikean vastauksen takana oleva ajatuksenkulku
+
+**** Tehtävä
+
+- Kysymys on... Moodlesta aiemman vuoden tentistä joku kysymys
+  (kysymys 6/48 kevään 2021 tentistä)
+
+- Kellotetaan 1 minuutti aikaa tehtävän lukemiseen.
+  
+- Kellotetaan 1 minuutti aikaa siihen, että jokainen miettii hiljaa
+  itselleen vastaukset
+
+- Ryhmäkeskustelu 2 minuuttia: Käykää läpi kaikkien omat vastaukset.
+
+  Neuvotelkaa siitä, mikä niistä ehkä on eniten oikein.
+
+- Yhteinen koonti: Kerätään luentotallenteelle ehdotuksia
+  vastauksista.
+
+  Varmistaan myös oikea vastaus ja että lopulta kaikki osaisivat tehdä
+  tällaisen tehtävän tentissä täysillä pisteillä.
+
+Tässä on täydellisyyden vuoksi tehtävä ja siihen liittyvä ohjeteksti
+kopioituna:
+
+Ohje tehtävään: Yhdistä lauseen loppua vastaava kirjain
+numeroituun alkuun siten, että lause on totta. Alkuihin on yksi,
+yksikäsitteinen, oikea loppu. Jokainen loppu voi sopia useampaan
+alkuun tai ei yhteenkään. Tutkitaan prosessien tilasiirtymiä.
+
+Valitse oikea vaihtoehto:
+
+Prosessi siirtyy User running -tilasta Kernel running -tilaan, ...
+
+A) kun prosessori siirtyy keskeytyksen tai käyttöjärjestelmäkutsun
+käsittelyyn.
+
+B) kun tapahtuu paluu käyttöjärjestelmäkutsun tai keskeytyksen
+käsittelijästä (esim. AMD64:n konekielikäsky sysret tai iret).
+
+C) kun prosessi on tehnyt pyynnön esim. lukeakseen merkkejä
+tiedostosta, eikä luettava data ole vielä saapunut fyysiseltä
+laitteelta toimitettavaksi prosessille saakka.
+
+D) kun käyttöjärjestelmän vuorontaja siirtää suoritukseen toisen
+prosessin, vaikka nykyinenkin prosessi pystyisi jatkamaan laskemista
+jo seuraavassa konekielikäskyssään.
+
+**** Ryhmien vastaukset ja keskustelu
+
+Muistiinpanot ryhmäkoonnista:
+
+- Oltiin a-vaihtoehdossa, mutta ei 100%-varmasti. Mielessä kävi myös b
+  ja d.
+
+- Vahvin arvaus a, mutta muitakin vaihtoehtoja oli; joku mainitsi
+  d:n. Aggressiivista puolustamista ei vielä nähty.
+
+- Yhtä mieltä a:sta, koska "Kernel Running" on käyttöjärjestelmätila,
+  ja a- ja b-vaihtoehdoissa puhutaan käyttöjärjestelmäkutsusta, muissa
+  ei. Ja a ja b ovat eri suuntaan meneviä. (a:ssa "siirtyminen", b:ssä
+  "paluu")
+  
+**** Oikeaksi tarkoitettu vastaus ja logiikka sen takana
+
+Luentotallenteelle selitys ja logiikka, jolla tavoiteltu oikea vastaus
+on selvitettävissä.
+
+(Yritetään muistaa ja toteuttaa aiempien vuosien palaute:
+Mallivastauksen käsittely voidaan tehdä nopeasti.)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+P
+*** Tenttitärppi nro 3
+
+Tässä kohtaa kevään 2024 kolmas tenttitärppi.
+
+**** Kevään 2024 menettely
+
+"Näätäilyä" eli luentotilaisuuteen kytkettyä ryhmäkeskustelua on
+kokeiltu erilaisin tavoin useiden vuosien ajan inkrementaalisti.
+
+Keksitään pyörä uudelleen jollain tähän kevääseen sopivalla
+tavalla. Raamit:
+
+- Yksin-ryhmissä-kaikki -menettely; sama sukka sopii joskus moniinkin
+  jalkoihin.
+
+- Saadaan kuvaa omasta ja kaverien oppimisen vaiheesta *ilman
+  suorituspaineita*; kokonaiskuva välittyy tallennettujen osioiden
+  kautta myös kotikatsomoihin
+
+- Simuloidaan tenttiä, jolla kevään 2024 opintojaksosta tulee lopuksi
+  arvosana.
+
+**** Protokolla:
+
+  - Kolmen hengen ryhmät lähellä istuvien kanssa.
+
+  - 3*30 sekunnin nimi- ja fiiliskierros, jotta keskustelu lämpenee.
+    (voidaan tehdä myös session aluksi, ei tarvitse joka kysymyksen
+    kohdalla lämmitellä uudelleen)
+
+  - Päivän tenttitärppi yksin-ryhmissä-kaikki -menettelyllä (seuraava
+    kohta).
+
+  - Oikean vastauksen takana oleva ajatuksenkulku
+
+**** Tehtävä
+
+- Kysymys on... Moodlesta aiemman vuoden tentistä joku kysymys
+  (kysymys 25/48 kevään 2021 tentistä)
+
+- Kellotetaan 1 minuutti aikaa tehtävän lukemiseen.
+  
+- Kellotetaan 1 minuutti aikaa siihen, että jokainen miettii hiljaa
+  itselleen vastaukset
+
+- Ryhmäkeskustelu 2 minuuttia: Käykää läpi kaikkien omat vastaukset.
+
+  Neuvotelkaa siitä, mikä niistä ehkä on eniten oikein.
+
+- Yhteinen koonti: Kerätään luentotallenteelle ehdotuksia
+  vastauksista.
+
+  Varmistaan myös oikea vastaus ja että lopulta kaikki osaisivat tehdä
+  tällaisen tehtävän tentissä täysillä pisteillä.
+
+Tässä on täydellisyyden vuoksi tehtävä ja siihen liittyvä ohjeteksti
+kopioituna:
+
+Ryhmäkeskustelu 3 minuuttia.
+
+Ohje tehtävään: Yhdistä lauseen loppua vastaavat kirjaimet (vähintään
+yksi, mutta mahdollisesti useita) lauseenalun perään siten, että
+muodostuvat lauseet vastaavat todellisuutta. Vastauksessa on oltava
+listattuna kaikki todellisuutta vastaavat vaihtoehdot.
+
+Valitse oikea vaihtoehto (mahdollisesti useita sopivia):
+
+Kurssilla käsitelty käyttöjärjestelmän rajapintastandardi POSIX
+(vuoden 2018 versio) määrää, että ...
+
+A) Konekielisen aliohjelman ensimmäinen parametri välitetään
+rekisterissä RDI, jos se on tyypiltään kokonaisluku.
+
+B) shell-komento echo tulostaa argumenttinsa.
+
+C) järjestelmäkutsu exit() tapahtuu sijoittamalla rekisteriin RAX luku 60 ja suorittamalla syscall-konekielikäsky.
+
+D) shell-komennolla kill voi lähettää prosessille signaalin.
+
+**** Ryhmien vastaukset ja keskustelu
+
+Muistiinpanot ryhmäkoonnista:
+
+- bd  TAI b,d 
+
+- bd toiseltakin ryhmältä 
+
+- bd kolmanneltakin ryhmältä
+
+- Perusteluina: kahdessa muussa enemmän konekielitason toteutusta, kun
+  POSIX määrää sitä, mitä tapahtuu eikä että miten.
+  
+**** Oikeaksi tarkoitettu vastaus ja logiikka sen takana
+
+Luentotallenteelle selitys ja logiikka, jolla tavoiteltu oikea vastaus
+on selvitettävissä.
+
+(Yritetään muistaa ja toteuttaa aiempien vuosien palaute:
+Mallivastauksen käsittely voidaan tehdä nopeasti.)
+
+
+
+
+
+
+
+
+
+
 * Suunnitelmaa kevään 2024 lähitulevaisuuteen
 
 ** Ideapankkia aihepiirivideoiksi 2024
@@ -1910,70 +2220,7 @@ esitiedoista. Vaikuttaisi toteutuneen ainakin havaintopiiriin tulleen
 tiedon perusteella (todettu 2.5.2024).
 
 
-** Luento 12: (pe 3.5.2024) (P/J) +Karhuluento+ Rusinanteluento
-*** Infot keväälle 2023
-- Ei mitään uutta - homma rullaa, kun rullataan vaan!
-- Paitsi jos yleisöllä on mielessä kysymyksiä tämän kevään käytännön
-  toimenpiteistä?
-*** +Tämän luennon tavoite+
-- Karhu ei jää kyselemään pitkäksi aikaa. Karhu vaan painaa menemään,
-  selittää kovasti mennessään ja vääntää rautalankaa niin paljon kuin
-  pystyy.
-- Päivän lopuksi tiedetään, mitä seuraavaksi pitää tehdä ennen
-  seuraavia yhteisiä tapaamisia: Seuraavaksi demo 5
-  ohjeteksteineen, monisteen luvut 9-10.
-- Little man computer ja käydään läpi monistetta varmistaen ja kysellen,
-  eli pattika-pattika ja pakkia-pakkia, sano Rusinante.
-  
-*** Seuraava ennakkotehtävä (käsiteltiin jo luennolla 11)
-
-Lukemista:
-
-- Demo 5 ohjeteksti
-
-- Monisteen luvut 9-10
-
-Tekemistä:
-
-- Demo 4b valmiiksi ja palautus + asioiden sisäistäminen
-
-- Demo 5 työn alle. HUOMAUTUS: Demo 5:n katselu voi auttaa myös demo
-  4b:n ymmärtämistä!
-
-Kestomuistutus: 5 opintopistettä 8 viikossa tarkoittaa keskimäärin
-16-17 tuntia viikossa tehokasta tekemistä. Muista tauot ja lepo, koska
-muuten ne varsinaiset tekemisen hetketkään eivät ole niin tehokkaita
-kuin voisivat olla!
-
-
-*** Aihepiiri: "Little man computer" avuksi koneen toiminnan ymmärrykseen
-
-Elävää animaatiota minimalistisen tietokoneen toiminnasta. Näytetään
-luennolla vähäsen:
-
-http://peterhigginson.co.uk/LMC/
-
-Samalta kaverilta karsittu ARM-prosessorisimulaatio:
-
-http://peterhigginson.co.uk/ARMlite/
-
-Kun perusidea on hahmottunut, me opettelemme käyttämään gdb:tä aivan
-todellisen tietokoneen kanssa!
-
-*** Tauko oli sopivassa kohdassa
-
-*** Aihepiiri (ei videojulkaisua): Luentomonisteen selailua
-
-Luentomonistetta alusta läpikäyden eri kohtia korostaen:
- - Kerrosrakenne käyttöjärjestelmässä.
- - Tietokoneen rakenne: teoreettinen, eli kurssilla riittävä ja
-   todellinen, eli jatkokurssien asia.
- - Prosessorin teoreettinen, yksinkertaistettu rakenne.  Nykyprosessorit
-   käsitellään muilla kursseilla.
- - Lista, pino ja puu tietorakenteena.
- - Binääri-, heksa- ja oktaaliluvut.
-
-** Luento 13: (ke 8.5.2024)  (P/J) Aihepiirejä
+** Luento 13: (ke 8.5.2024)  (P/J) Muistiinpanojen vertailua ja olan yli havaittua
 
 Aletaan tykittää tasan 14:15! Ainakin yritetään taas.
 
@@ -2056,6 +2303,174 @@ ym. muistetaan taas..
 
 Otetaan esimerkiksi "Hei maailma assemblerilla" ja käpistellään.
 
+
+*** Vertaillaan muistiinpanoja, jos aikaa on
+
+*** Tenttitärppi (tyhjä sapluuna copy-paste-modifyä varten)
+
+Tässä kohtaa kevään 2024 tenttitärppi.
+
+**** Kevään 2024 menettely
+
+"Näätäilyä" eli luentotilaisuuteen kytkettyä ryhmäkeskustelua on
+kokeiltu erilaisin tavoin useiden vuosien ajan inkrementaalisti.
+
+Keksitään pyörä uudelleen jollain tähän kevääseen sopivalla
+tavalla. Raamit:
+
+- Yksin-ryhmissä-kaikki -menettely; sama sukka sopii joskus moniinkin
+  jalkoihin.
+
+- Saadaan kuvaa omasta ja kaverien oppimisen vaiheesta *ilman
+  suorituspaineita*; kokonaiskuva välittyy tallennettujen osioiden
+  kautta myös kotikatsomoihin
+
+- Simuloidaan tenttiä, jolla kevään 2024 opintojaksosta tulee lopuksi
+  arvosana.
+
+**** Protokolla:
+
+  - Kolmen hengen ryhmät lähellä istuvien kanssa.
+
+  - 3*30 sekunnin nimi- ja fiiliskierros, jotta keskustelu lämpenee.
+    (voidaan tehdä myös session aluksi, ei tarvitse joka kysymyksen
+    kohdalla lämmitellä uudelleen)
+
+  - Päivän tenttitärppi yksin-ryhmissä-kaikki -menettelyllä (seuraava
+    kohta).
+
+  - Oikean vastauksen takana oleva ajatuksenkulku
+
+**** Tehtävä
+
+- Kysymys on... Moodlesta aiemman vuoden tentistä joku kysymys
+  (kysymys xx/48 kevään 2021 tentistä)
+
+- Kellotetaan 1 minuutti aikaa tehtävän lukemiseen.
+  
+- Kellotetaan 1 minuutti aikaa siihen, että jokainen miettii hiljaa
+  itselleen vastaukset
+
+- Ryhmäkeskustelu 2 minuuttia: Käykää läpi kaikkien omat vastaukset.
+
+  Neuvotelkaa siitä, mikä niistä ehkä on eniten oikein.
+
+- Yhteinen koonti: Kerätään luentotallenteelle ehdotuksia
+  vastauksista.
+
+  Varmistaan myös oikea vastaus ja että lopulta kaikki osaisivat tehdä
+  tällaisen tehtävän tentissä täysillä pisteillä.
+
+Tässä on täydellisyyden vuoksi tehtävä ja siihen liittyvä ohjeteksti
+kopioituna:
+
+
+
+
+**** Ryhmien vastaukset ja keskustelu
+
+Muistiinpanot ryhmäkoonnista:
+
+- kerätään tähän
+  
+**** Oikeaksi tarkoitettu vastaus ja logiikka sen takana
+
+Luentotallenteelle selitys ja logiikka, jolla tavoiteltu oikea vastaus
+on selvitettävissä.
+
+(Yritetään muistaa ja toteuttaa aiempien vuosien palaute:
+Mallivastauksen käsittely voidaan tehdä nopeasti.)
+
+
+
+
+
+
+
+
+
+
+*** Tenttitärppi (tyhjä sapluuna copy-paste-modifyä varten)
+
+Tässä kohtaa kevään 2024 tenttitärppi.
+
+**** Kevään 2024 menettely
+
+"Näätäilyä" eli luentotilaisuuteen kytkettyä ryhmäkeskustelua on
+kokeiltu erilaisin tavoin useiden vuosien ajan inkrementaalisti.
+
+Keksitään pyörä uudelleen jollain tähän kevääseen sopivalla
+tavalla. Raamit:
+
+- Yksin-ryhmissä-kaikki -menettely; sama sukka sopii joskus moniinkin
+  jalkoihin.
+
+- Saadaan kuvaa omasta ja kaverien oppimisen vaiheesta *ilman
+  suorituspaineita*; kokonaiskuva välittyy tallennettujen osioiden
+  kautta myös kotikatsomoihin
+
+- Simuloidaan tenttiä, jolla kevään 2024 opintojaksosta tulee lopuksi
+  arvosana.
+
+**** Protokolla:
+
+  - Kolmen hengen ryhmät lähellä istuvien kanssa.
+
+  - 3*30 sekunnin nimi- ja fiiliskierros, jotta keskustelu lämpenee.
+    (voidaan tehdä myös session aluksi, ei tarvitse joka kysymyksen
+    kohdalla lämmitellä uudelleen)
+
+  - Päivän tenttitärppi yksin-ryhmissä-kaikki -menettelyllä (seuraava
+    kohta).
+
+  - Oikean vastauksen takana oleva ajatuksenkulku
+
+**** Tehtävä
+
+- Kysymys on... Moodlesta aiemman vuoden tentistä joku kysymys
+  (kysymys xx/48 kevään 2021 tentistä)
+
+- Kellotetaan 1 minuutti aikaa tehtävän lukemiseen.
+  
+- Kellotetaan 1 minuutti aikaa siihen, että jokainen miettii hiljaa
+  itselleen vastaukset
+
+- Ryhmäkeskustelu 2 minuuttia: Käykää läpi kaikkien omat vastaukset.
+
+  Neuvotelkaa siitä, mikä niistä ehkä on eniten oikein.
+
+- Yhteinen koonti: Kerätään luentotallenteelle ehdotuksia
+  vastauksista.
+
+  Varmistaan myös oikea vastaus ja että lopulta kaikki osaisivat tehdä
+  tällaisen tehtävän tentissä täysillä pisteillä.
+
+Tässä on täydellisyyden vuoksi tehtävä ja siihen liittyvä ohjeteksti
+kopioituna:
+
+
+
+
+**** Ryhmien vastaukset ja keskustelu
+
+Muistiinpanot ryhmäkoonnista:
+
+- kerätään tähän
+  
+**** Oikeaksi tarkoitettu vastaus ja logiikka sen takana
+
+Luentotallenteelle selitys ja logiikka, jolla tavoiteltu oikea vastaus
+on selvitettävissä.
+
+(Yritetään muistaa ja toteuttaa aiempien vuosien palaute:
+Mallivastauksen käsittely voidaan tehdä nopeasti.)
+
+
+
+
+
+
+
 ** Luento 14: (ke 15.5.2024)  (P/J) Karhu- ja näätäluento
 *** Infot keväälle 2023
 
-- 
GitLab