Käyttöjärjestelmät II, 2 ov                         (kuva kääntöpuolella)
Kurssikuulustelu 11.5.2005

Kirjoita jokaiseen vastauspaperiisi seuraavat tiedot: oma nimi, opiskelijanumero (tai henkilötunnus),
kurssin nimi, nimikirjoitus ja sivunumero.
  1. [13 p] Prosessit ja säikeet. Tarkastellaan Solariksen prosesseja ja säikeitä (ks. Fig. 4.15 kääntöpuolella). Tarkastellaan kolmea sovellusta: U, M ja K. Kaikissa on 8-säiettä. Sovellus U on kyseisen kuvan tyyppiä 2, sovellus M tyyppiä 3 ja sovellus K tyyppiä 4. Oletetaan, että järjestelmässä on 2 suoritinta. Vertailussa oletetaan, että systeemissä on vain yksi kyseisistä sovelluksista suorituksessa yhdellä kertaa.
    1. [3 p] Mitä käyttöjärjestelmätukea kyseisten sovellusten säikeet tarvitsevat kriittisen alueen (mutex) synkronointiin?
    2. [3 p] Miten kyseisten sovellusten säikeet kommunikoivat toistensa kanssa?
    3. [3 p] Kuka päättää ja milloin, mikä kyseisten sovellusten säie saa suoritusvuoron suorittimella?
    4. [4 p] Anna esimerkki sovelluksesta, joka olisi järkevintä toteuttaa saman tyyppisillä säikeillä kuin sovellus M, mutta ei sovellusten U tai K tyyppisillä säikeillä.. Perustele. Erityisesti perustele, miksi ratkaisua ei olisi järkevää toteuttaa sovellusten U tai K tyyppisillä säikeillä.

  2. [13 p] Linuxin ext2fs tiedostojärjestelmä
    1. [3 p] Mikä on inode ja mitä tietoja siinä on?
    2. [3 p] Mikä on suora linkki (hard link) ja miten se toteutetaan tässä järjestelmässä? Mitä etuja/haittoja suoralla linkillä on symboliseen linkkiin (soft link) verrattuna?
    3. [3 p] Kun levylohkon koko on 1 KB, niin miten talletetaan 30 KB tiedosto XYZ? Miten XYZ:n levylohkot löydetään?
    4. [4 p] Vertaile ext3fs tähän järjestelmään. Edut? Haitat?

  3. [12 p] Prosessien ja säikeiden vuorotus (suorittimen vuoronanto, processor scheduling)
    1. [3 p] Anna esimerkki vuoronantopolitiikasta, joka toimii hyvin eräajoympäristössä (batch multiprogramming), mutta ei toimi oikein hyvin osituskäyttöympäristössä (time sharing). Perustele.
    2. [3 p] Anna esimerkki vuoronantopolitiikasta, joka toimii hyvin osituskäyttöympäristössä, mutta ei toimi oikein hyvin reaaliaikaympäristössä (real time). Perustele.
    3. [3 p] Anna esimerkki vuoronantopolitiikasta, joka toimii hyvin reaaliaikaympäristössä, mutta ei toimi oikein hyvin osituskäyttöympäristössä. Perustele.
    4. [3 p] Anna esimerkki vuoronantopolitiikasta, joka toimii hyvin moniprosessorikoneen osituskäyttöympäristössä, mutta ei sovi oikein hyvin yhden suorittimen osituskäyttöympäristössä. Perustele.

  4. [12 p] Tietoturva. Mitä tarkoittavat seuraavat järjestelmän turvallisuusvaatimukset ja miten käyttöjärjestelmässä voidaan ne toteuttaa? Anna konkreettinen Linux tai Windows esimerkki. Anna vastauksesi vain kuuteen (6) kohtaan allaolevista. Jos vastaat useampaan kuin kuuteen kohtaan, niin vain huonoimmat kuusi vastausta arvostellaan.
    1. [2 p] Suojattu pääsy tietoon
    2. [2 p] Kontrolloitu järjestelmän käyttö
    3. [2 p] Suojattu tiedon siirto järjestelmien välillä
    4. [2 p] Suojattu tiedostojen käyttö
    5. [2 p] Luottamuksellisuus
    6. [2 p] Tiedon eheys
    7. [2 p] Tiedon saatavuus järjestelmässä
    8. [2 p] Käyttäjän oikeaksi todentaminen