Käyttöjärjestelmät, erilliskoe 13.6.2014                      in EnglishOther side in English

Kirjoita jokaiseen vastauspaperiisi kurssin nimi, pvm, oma nimi, nimikirjoitus ja opiskelijanumero.
Kuhunkin tehtävään riittää 1-2 sivun vastaus.
Tämä koe on tavallinen erilliskoe ja sen koealue on koko kurssi.
Koe toimii myös korvaavana kuulusteluna kevään 2014 luentokurssin 1. tai 2. välikokeelle.

  1. [9 p] Editori, näppäimistön ajuri ja monitori. Tekstieditori (TE) lukee merkkipuskurista B merkkejä yksi merkki kerrallaan ja tekee sen vaatimat muutokset editoitavaan tiedostoon. Näppäimistön laiteajuri (DD) lukee näppäimistön painallukset (yksi kerrallaan) ja kirjoittaa niitä vastaavat merkit merkkipuskuriin B.
    1. [3 p] Kuvaile TE:n ja DD:n välinen synkronointi- ja kommunikointiongelma. Kuka odottaa ketä ja milloin? Miten tieto siirtyy?
    2. [6 p] Anna tämän synkronointi- ja kommunikointiongelman ratkaisu monitorin avulla. Esitä ratkaisu TE:n, DD:n ja monitorin pseudokoodien avulla. Määrittele selkeästi kaikki käyttämäsi ehtomuuttujat ja muut tietorakenteet alkuarvoineen. Selitä, miksi ratkaisusi on oikein.

  2. [9 p] Suorittimen vuoronanto
    1. [3 p] Anna kolme erilaista vuoronantomenetelmää, kerro miten ne toimivat ja mitkä ovat niiden hyvät/huonot puolet verrattuna toisiinsa.
    2. [3 p] Miten moniprosessorijärjestelmien vuoronanto eroaa "tavallisesta" vuoronannosta? Anna yksi moniprosessorijärjestelmien vuoronantomenetelmä, kerro miten se toimii ja sen olennaiset hyvät/huonot piirteet.
    3. [3 p] Miten reaaliaikajärjestelmien vuoronanto eroaa "tavallisesta" vuoronannosta? Anna yksi reaaliaikajärjestelmien vuoronantomenetelmä, kerro miten se toimii ja sen olennaiset hyvät/huonot piirteet.

  3. [9 p] Tiedostojärjestelmä
    1. [3 p] Mikä on indeksoitu sarjallinen tiedosto ja miten toimii? Mitkä ovat sen edut verrattuna sarjalliseen tiedostoon? Milloin ja miksi indeksointi kannattaisi toteuttaa B-puuna?
    2. [3 p] Mikä on indeksoitu tiedosto ja miten se toimii? Miten se eroaa indeksoidusta sarjallisesta tiedostosta? Milloin ja miksi indeksointi kannattaisi toteuttaa B-puuna?
    3. [3 p] Mikä on hajasaantitiedosto ja miten se toimii? Miten se eroaa indeksoidusta tiedostosta?

  4. [9 p] Muistinhallinta
    1. [3 p] Koneessa on 48-bittiset virtuaaliset tavuosoitteet ja 32-bittiset fyysiset tavuosoitteet. Sivukoko on 4KB. Kuinka monta alkiota tarvitaan tavallista sivutaulua varten? Entä käänteistä sivutaulua varten?
    2. [3 p] Mikä on osoitteenmuunnospuskuri (TLB) ja mikä on sen tehtävä osoitteen muunnoksessa? Mitä yhteistä/eroavaisuuksia on TLB:llä ja välimuistilla (toteutus, paikallisuus)?
    3. [3 p] Koneessa on 16-bittiset virtuaaliset tavuosoitteet ja 16-bittiset fyysiset tavuosoitteet. Sivukoko on 1KB. Miten fyysiseen muistiin viittaus toteutuu, kun käyttäjän ohjelma viittaa  virtuaaliseen muistiosoitteeseen
      1. 00011001 01010101  
      2. 00110010 10101010
      3. 00001100 00111100

      ja sivutaulusta löytyy seuraavat rivit:

      Sivun nro
      Kehys nro
      11
      110
      110
      11
      1100
      -
      11001
      1100
      110010
      -