RJESTELMÄ Stallings, Luku KJ-I I S2005 / Tiina Niklander, kalvot Auvo HäkkinenH

Samankaltaiset tiedostot
u saantimenetelmät Kenttä (field) u bittien / tavujen muodostama looginen kokonaisuus u yksi arvo, jolla tyyppi ja pituus Tietue (record)

Sisältöä TIEDOSTOJÄRJESTELMÄ. Perustermit. Peruskäsitteistöä. Perustermit. KJ:n tiedostojärjestelmä. Käyttöjärjestelmät

TIEDOSTOJÄRJESTELMÄ. Sisältöä. Stallings, Luku Peruskäsitteistöä, tehtäviä ja tavoitteita Järjestelmän rakenne Tiedostojen organisointi

Sisältöä TIEDOSTOJÄRJESTELMÄ. Perustermit. Peruskäsitteistöä. Perustermit. KJ:n tiedostojärjestelmä. Käyttöjärjestelmät, Luento 16

TIEDOSTOJÄRJESTELMÄ. Sisältöä. Stallings, Luku Peruskäsitteistöä, tehtäviä ja tavoitteita Järjestelmän rakenne Tiedostojen organisointi

Käyttöjärjestelmät TIEDOSTOJÄRJESTELMÄ. Stallings, Luku KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-1

RJESTELMÄ OSA 2 Stallings, Luku PALVELUPYYNNÖT. KJ-I I S2005 / Tiina Niklander, kalvot Auvo HäkkinenH

u saantimenetelmät u kirjanpito vapaista lohkoista (taltiolla!) u hierarkkinen hakemistorakenne: kirjanpito tdstoista u tdstojen käyttö

Osio 3: Siirräntä ja tiedostojärjestelmä

NTÄ. Luento 8: SIIRRÄNT. Osio 3: Siirräntä ja tiedostojärjestelmä. ltö. Yleistä siirrännästä. Siirtonopeuksia (teoreettisia) Kuva 11.1.

Stallings, Luku

u vapaakäyntisyys (reentrancy) u Yhteinen koodialue u kullakin oma data-alue, pino, PCB u osoitteet suhteellisia prosessin alun suhteen

Osio 3: Prosessit, siirräntä ja tiedostojärjestelmä

Luento 3: PROSESSIT JA NIIDEN HALLINTA

Sisältö SIIRRÄNTÄ. I/O-laitteiden luokittelua. Yleistä siirrännästä. Siirrännän perustekniikat. Siirtonopeuksia (teoreettisia) Kuva 11.

Stallings, Luku I/O-laitteiden luokittelua, siirtonopeuksia Siirrännän perustekniikat Siirrännän kehittyminen

KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen Stallings, Luku

Kuva 8.7. u Muunnos prosessin sivunumerosta sivutilanumeroksi u Kussakin alkiossa: u Katenoimalla. u MMU:ssa; juuri äsken käytettyjä muunnoksia

Luento 7: VIRTUAALIMUISTIN SIVUTUS JA SEGMENTOINTI

Stallings, Luku

Stallings, Luku 8.1. KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 8-1

Osio 2: Luennot 4-7 Muistinhallinta

Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS

Käyttöjärjestelmät II

Käyttöjärjestelmät II

ltöä (Luennot 5&6) Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS Pikakertaus: : a) b) c) Dyn.. part.: sijoitus Kuva Buddy System: esimerkki

Osio 2: Luennot 5-8 Muistinhallinta

ltö Luento 6: VIRTUAALIMUISTI Luento 7: Segmentointi Segmentointi ja sivutus yhdistettynä Yhteiskäytöstä Suoritus virtuaalimuistissa

PROSESSIT JA NIIDEN HALLINTA

Prosessi virtuaalimuistissa PROSESSIT JA NIIDEN HALLINTA. Sisältöä. Prosessi virtuaalimuistissa. Prosessi. Prosessi. Käyttöjärjestelmät, Luento 4

Jokaisella tiedostolla on otsake (header), joka sisältää tiedostoon liittyvää hallintatietoa

Luento 6: VIRTUAALIMUISTI

Tiedostorakenteet. R&G Chapter Tietokannan hallinta, kevät 2006, Jan 1

Jakso 8 Ohjelman suoritus järjestelmässä

Jakso 8 Ohjelman suoritus järjestelmässä

Yleiskuva. Käyttöjärjestelmät II. Tietokonejärjestelm. rjestelmä. KJ ja laitteistopiirteet. KJ ja laitteistopiirteitä.

Sisältöä PROSESSIT JA NIIDEN HALLINTA. Prosessi. Prosessi virtuaalimuistissa. Prosessi. Prosessi virtuaalimuistissa. Käyttöjärjestelmät

Prosessi (4) Suorituksessa olevan ohjelman esitysmuoto järjestelmässä. Jakso 8 Ohjelman suoritus järjestelmässä. Prosessin elinkaari (9)

HELIA 1 (15) Outi Virkki Tiedonhallinta

Luento 2: Tiedostot ja tiedon varastointi

Osio 2: Luennot 4-7 Muistinhallinta YKSINKERTAINEN MUISTINHALLINTA. ltöä YLEISTÄ MUISTINHALLINNASTA. Looginen muisti.

Algoritmit 1. Luento 5 Ti Timo Männikkö

Luento 9 Järjestelmän ulkoinen muisti

Prosessi perinteisesti

Stallings, Luku 4.1. KJ-I I S2005 / Tiina Niklander, kalvot Auvo HäkkinenH

Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Johdanto & yleistä Harri Laine 1. Tietokanta. Tiedosto

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti

Käyttöjärjestelmät: prosessit

Yksitasoisia talletusrakenteita käytetään lähinnä datatietueiden talletukseen

KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen Stallings, Luku saantimenetelmät

D B. Tiedostojen käsittely

Muistihierarkia Kiintolevyt I/O:n toteutus

HELIA 1 (16) Outi Virkki Tietokantasuunnittelu

Tervetuloa! (2 ov,, 4 op) KJ on tärkein tietokoneessa pörräävistä ohjelmista

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti. Ohjelman muistiosoitteet (3) Virtuaalimuisti (3) Virtuaalimuistin toteutus.

Luento 9 Järjestelmän ulkoinen muisti

Helsingin yliopisto/tktl Tietokannan hallinta kevät Harri Laine 1 D B. Yksitasoiset talletusrakenteet

Stallings, Luku 4.1. KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 4-1. KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 12-1

Tietokanta (database)

Luento 9 Järjestelmän ulkoinen muisti

Algoritmit 2. Luento 3 Ti Timo Männikkö

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti

Algoritmit 2. Luento 3 Ti Timo Männikkö

Tietokoneen toiminta, K Tavoitteet (4)

D B. Levykön rakenne. pyöriviä levyjä ura. lohko. Hakuvarsi. sektori. luku-/kirjoituspää

Järjestelmän ulkoinen muisti I/O

ltöä rjestelmä Luento 2: LAITTEISTOSTA Tietokonejärjestelm KESKUSYKSIKKÖ Keskusyksikkö Kuva 1.1 KJ-I S2005 / Tiina Niklander & Auvo Häkkinen 2-1

Algoritmit 1. Luento 6 Ke Timo Männikkö

TIETOKANTOJEN PERUSTEET MARKKU SUNI

TKHJ:ssä on yleensä komento create index, jolla taululle voidaan luoda hakemisto

HELIA 1 (17) Outi Virkki Tiedonhallinta

Tietokannan hallintajärjestelmän (DBMS) palvelut ja rakenne

jotakin käyttötarkoitusta varten laadittu kokoelma toisiinsa liittyviä säilytettäviä tietoja

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti. Ohjelman muistiosoitteet (3) Virtuaalimuisti (3) Virtuaalimuistin toteutus (2)

Jakso 8 Ohjelman toteutus järjestelmässä

u Tietokone ilman käyttöjärjestelmää on kuin

Algoritmit 2. Luento 6 Ke Timo Männikkö

oheishakemistoja voi tiedostoon liittyä useita eri perustein muodostettuja

Luento 2: LAITTEISTOSTA

Luento 3. Timo Savola. 7. huhtikuuta 2006

Algoritmit 1. Luento 4 Ke Timo Männikkö

HELIA 1 (11) Outi Virkki Tiedonhallinta

Jakso 8 Ohjelman toteutus järjestelmässä

Jakso 8 Ohjelman toteutus järjestelmässä. Prosessi Prosessin esitysmuoto järjestelmässä Käyttöjärjestelmä KJ-prosessit

D B. Levytiedostojen käsittely. Levytiedostojen käsittely

Luento 9 Järjestelmän ulkoinen muisti

Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari Korhonen

OHJ-1010 Tietotekniikan perusteet 4 op Syksy 2012

Ohjelmoinnin perusteet Y Python

Muistihierarkia Kiintolevyt I/O:n toteutus

TIEDONHALLINTA - SYKSY Luento 11. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

Unix-perusteet. Tiedosto-oikeudet

Luento 9 Järjestelmän ulkoinen muisti. Muistihierarkia Kiintolevyt Muut pyörivät levyt I/O:n toteutus

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

HELIA 1 (21) Outi Virkki Tietokantasuunnittelu

Tietorakenteet ja algoritmit - syksy

Tieto ohjelmassa ja tietokoneella

Hakemistojen sisällöt säilötään linkitetyille listalle.

Transkriptio:

Käyttöjärjestelmät t I Luento 9 (&10): TIEDOSTOJÄRJESTELM RJESTELMÄ Stallings, Luku 12.1-12.7 KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-1 Sisält ltöä Peruskäsitteistöä, tehtäviä ja tavoitteita Järjestelmän rakenne Tiedostojen organisointi u saantimenetelmät Hakemistot Yhteiskäyttö LUENTO 10: Levykirjanpito UNIX-esimerkki KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-2 9-1

Käyttöjärjestelmät I Peruskäsitteistöä KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-3 Perustermit Kenttä (field) u bittien / tavujen muodostama looginen kokonaisuus u yksi arvo, jolla tyyppi ja pituus Tietue (record) u joukko yhteenkuuluvia ja yhdessä käsiteltäviä kenttiä F esim. työntekijä-tietue: nimi, osoite, tehtävä... Tiedosto (file) u tietueiden muodostama hallinnollinen kokonaisuus Flevykirjanpito ja pääsyoikeudet tiedostoittain Tietokanta (database) u joukko yhteenkuuluvia tiedostoja u sujuvat elementtien väliset viittaukset (hakuavaimin) KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-4 9-2

Perustermit Tietokantojen hallintaa varten yleensä erillinen tiedonhallintajärjestelmä joka käyttää KJ:n tdstojärjestelmää Perusoperaatiot tietokannoille: u Hae yksi / kaikki tietueet u Hae tietyn ehdot täyttävät tietueet u Hae seuraava / edeltävä tietue u Lisää / muuta / poista tietue Ei yleensä lasketa KJ:n perusosaksi u paremminkin palveluohjelmistoa (utility programs) KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-5 KJ:n tiedostojärjestelm rjestelmä Tdstojen käsittely suojaussyistä aina KJ:n tdstojärjestelmän kautta u käyttöoikeudet osa tdstomääreitä (attribuutteja) Huolehtii tallennuksen ja käytön yks.kohdat u kirjanpito vapaista lohkoista (taltiolla!) u hierarkkinen hakemistorakenne: kirjanpito tdstoista Fnimeäminen ja attribuutit, tdstoon kuuluvat lohkot u tdstojen käyttö Favoimet tdstot, luku / kirjoituspositio Fyhteiskäyttö Ei ota kantaa tdston loogiseen rakenteeseen u tdsto KJ:lle vain pötkö tavuja / lohkoja u sovellus tietää tulkinnan KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-6 9-3

Tehtävi viä ja tavoitteitat Tiedon pysyvä tallennus u luonti, poisto, muuttaminen u varmistuskopiot Tiedon oikeellisuus Tehokkuus Yleisyys: sama idea OK erilaisille laitteille Standardoidut I/O-operaatiot Monenkäyttäjän moniajojärjestelmän huomiointi u eri tdstojen yhtäaikainen käyttö u samojen tdstojen yhteiskäyttö, lukitukset u käyttöoikeudet KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-7 Käyttöjärjestelmät I Järjestelmän rakenne KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-8 9-4

Järjestelmän n rakenne Kuva 12.1 Tiedonhallintajärjestelmä Laiteriippumaton Laiteriippuva Järjestelmän n rakenne Tan01 Kuva 5-165 KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-10 9-5

KJ:n laiteriippuva taso Laiteajuri (device driver) Alin ohjelmallinen taso u tuntee laitteen yksityiskohdat ja käyttötavat Ei hajulla esim. miten lohkot liittyvät tdstoihin u saa ylempää: lohkonumeron, lohkopuskurin muistiosoitteen, operaatiokoodin (R/W) Loogiset osoitteet fyysisiksi osoitteiksi u esim. lohkonumero levypinta, ura, sektori Pyyntöjen uudelleenjärjestely u vähentää ylimääräisiä hakuvarren siirtoja u missä hakuvarsi nyt, minne seuraavaksi KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-11 KJ:n laiteriippuva taso Laiteajuri Fyysisen siirrännän aloitustoimet u käyttää laiteohjaimen rekistereitä u operaatio, mistä, minne, paljonko u ohjain voi toimia sen jälkeen itsenäisesti 'Siirto valmis' -keskeytys u laitenro etsi laitekuvaaja ajuri Fyysisen siirrännän lopetustoimet u tarkistaa onnistumisen ohjaimen rekistereistä u 'herättää' KJ:n ylemmät osat toimimaan KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-12 9-6

KJ:n laiteriippumaton taso Ylläpitää tdston käytössä tarvittavia ajonaikaisia tietorakenteita u PCB:ssä oleva tdstokuvaajataulu F mitä tdstoja avannut F luku / kirjoituspositio F avaamis / käyttötapa (R / W / RW) u globaali avoimet tdstot taulu / lista F tdstomääreet F yhteiskäyttö Vastaa taltion kirjanpidosta u kirjanpitorakenteet taltiolla, käsittelyä varten muistiin u missä vapaat / varatut alueet u mitkä lohkot kuuluvat tdstoon u tdstohakemistot KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-13 KJ:n laiteriippumaton taso Huolehtii esim. lohkopuskuroinnista u puskuroi muistiin luettuja lohkoja u välittäjänä sovelluksen tavuittain / tietueittain käsittelyn ja levyn lohkoittain käsittelyn välillä u kopioi tavuja puskurista sovelluksen muuttujiin tai toisinpäin Huolehtii siirrännän alustus&lopetustoimista u jos kaivatut tavut ei puskureissa, laita ajuri töihin Jokainen pyyntö ei aiheuta siirräntää Yhdistää loogiseen siirräntään oikean laitteen ja oikean ajurin u laitenumero etsi laitekuvaaja ajuri KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-14 9-7

Looginen I/O Huolehtii mahd. tietuetason käsittelystä u lue seuraava tietue / lue seuraavat tavut u hae kaikki ehdon täyttävät tdstot KJ:n laiteriippumaton osa huolehtii tdston tallentamisen ja käytön yksityiskohdista lohko- ja tavutasolla Looginen taso vastuussa tdston sisäiseen rakenteeseen liittyvistä yksityiskohdista u miten tietueet sijoittuvat lohkoon / lohkoihin u hakua helpottavat rakenteet, saantimenetelmät u ei lasketa aina kuuluvaksi peruskj:hin KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-15 Tiedostonhallinnan elementit KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-16 9-8

Käyttöjärjestelmät I Tiedostojen organisointi, saantimenetelmät ks. Tietokannan hallinta -kurssi KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-17 Tiedostojen organisointi Nopea saanti u tärkeä yksittäistä tietuetta käsiteltäessä u ei tärkeä koko tdstoa erätyönä päivitettäessä Päivittämisen helppous u esim. CD-ROMilla oleva tdsto ei muutettavissa Talletustilan tehokas käyttö u ei moninkertaista / ylimääräistä talletusta u mutta ylimääräiset indeksit nopeuttavat käyttöä Ylläpidon yksinkertaisuus Luotettavuus KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-18 9-9

Saantimenetelmät Sovelluksella standardoidut operaatiot tdston käsittelemiseksi u open(), close(), read(), write(), seek() Tdstojen erilaista käsittelyä varten voi olla niitä tukevia lisätietorakenteita u kekorakenne u peräkkäisrakenne u indeksoitu peräkkäisrakenne u indeksoitu rakenne u hajautettu rakenne Vaikuttavat tdstojen talletustapaan, käyttötapaan ja käytön tehokkuuteen KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-19 Kasarakenne Kuva 12.3 Tallennus siinä järjestyksessä kuin tietueet saadaan Tarkoitus koota ja tallettaa data, käsittely myöhemmin Tietueiden välissä erottimet, tai tietueilla vakiopituus KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-20 9-10

Kasarakenne Kenttien lkm voi vaihdella ja / tai kentät voivat olla eri järjestyksessä eri tietueissa u talletettava kentän nimi ja arvo u kenttien välissä erottimet tai niillä vakiopituus Tietueen haku peräkkäishakuna u ei hakua helpottavaa rakennetta / järjestystä Säästää tilaa, jos u paljon puuttuvia kenttiä u kenttien pituudet vaihtelevat KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-21 Peräkk kkäisrakenne Kuva 12.3 Tietueilla sama rakenne ja pituus u sama kenttien järjestys ja pituus kaikissa tietueissa Fmaxpituuden mukaan u kenttien nimiä ja pituuksia ei tarvitse tallettaa Kenttien nimet ja pituudet tdston attribuutteja u talletettu tai muuten vaan käsittelijän tiedossa KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-22 9-11

Peräkk kkäisrakenne Yksi kentistä avain u yksikäsitteinen u tietueet avaimen mukaan järjestyksessä Sopii sekä levyille että nauhoille Käytetään lähinnä vain eräkäsittelyssä u päivitystapahtumat erillisessä tdstossa (avainjärjestys) Päivitysprosessi tuottaa kokonaan uuden tdston u kantatdsto ja päivitystapahtumat järjestetty avaimen mukaan KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-23 Indeksoitu peräkk kkäisrakenne Järj. tietueiden lisäksi hakua helpottavaa tietoa, hakemisto (indeksi) Hstosta osoittimia tdston keskelle u avain, missä tietue Etsi hstosta avaimen perusteella suunnilleen oikea kohta, jatka peräkkäishakuna vars. talletusalueelta KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-24 9-12

Indeksoitu peräkk kkäisrakenne Lisäyksiä varten erillinen lisäysalue u jokaisessa tietueessa ylimääräinen linkkikenttä u uusi tietue lisäysalueelle, ja 'kotilohkon' viimeiseen tietueeseen viite Aika-ajoin koko tdston uudelleenjärjestely u lisäysalueen lomitus KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-25 Haun tehokkuudesta Kun tdstossa miljoona tietuetta Peräkkäishaku u käytävä läpi km. 500000 tietuetta Käytössä 1000 alkion hakemisto u hstossa joka tuhannen alkion avain + viite tietueeseen u käytävä läpi km. 500 alkiota hakemistosta ja löytyneestä lohkosta km. 500 tietuetta Voi tehostaa monitasoisen hakemiston avulla u 2-tason indeksi 10000 alkiota (joka 100:s avain+viite) u 1-tason indeksi 100 alkiota (joka 100:s 2-tason avain+viite) u haku: 50 + 50 + 50 tietuetta KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-26 9-13

Täysin indeksoitu rakenne Useita hstoja, useita hakuavaimia Käsittely vain hstojen (indeksien) kautta Koko tdston läpikäyntiä varten pääavaimen mukainen täyd. hsto KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-27 Täysin indeksoitu rakenne Tietueiden ei tarvitse olla fyysisesti avaimen mukaisessa järjestyksessä u läpikäynti vain hstojen kautta Lisäykset / poistot helppoja Käytetään esim. jos haun nopeus tärkeää, ja vain harvoin peräkkäiskäsittelyä KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-28 9-14

Suorasaantirakenne Kukin tietue / lohko saatavissa missä tahansa järjestyksessä u sopiva laite levy Sijainti selvitettävissä avaimen perusteella u voi perustua myös hajautuksen käyttöön Tdston tietueet / lohkot sijoitellaan taltiolle vapaaseen järjestykseen Sopii kiinteänmittaisille tietueille / lohkoille Sopii hyvin interaktiiviseen reaaliaikakäyttöön u tietueen päivitys välittömästi omalla paikallaan Flue muistiin, päivitä, kirjoita taltiolle KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-29 Käyttöjärjestelmät I Hakemistot KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-30 9-15

Hakemisto = Tiedosto, jossa tdstoihin liittyvää tietoa Vain KJ:lla hakemistotdston suora käyttöoikeus u hakemiston muutokset aina KJ:n palvelupyyntöjä Flistaa hakemiston tiedot, etsi tdstonimi, lisää / poista tdstonimi,... Hakemistoalkiossa mm. (ks. taulu 12.2) u tiedostonimi u attribuutit: omistaja (uid), ryhmä (gid), tyyppi, käyttöoikeudet, aikaleimat u mitkä lohkot kuuluvat tdstoon, koko tavuina u laite, jolla tdsto majailee KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-31 Yksitasoinen hakemisto Vain lista tdstonimistä ja attribuuteista Yksinkertainen peräkkäisrakenne u avaimena tdstonimi Ei anna apua tdstojen organisointiin u ei hierarkiaa u kaikkien käyttäjien tdstot siinä ainoassa hstossa Tdstonimien oltava yksikäsitteisiä koko järjestelmän sisällä u eri käyttäjillä ei voi olla samannimisiä tdstoja ks. kadonnut kansanperinne; ei käytössä KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-32 9-16

2-tasoinen hakemisto Jokaiselle käyttäjälle oma käyttäjähakemisto u eri käyttäjillä voi olla samannimisiä tdstoja Päähakemisto, jossa tiedot käyttäjähstoista Hakemisto edelleen vain lista tdstonimiä, ei käyttäjäkohtaista hierarkiaa u käyttäjällä ei voi olla kahta samannimistä tdstoa u Käyttäjä ei voi luoda hakemistoja ks. kadonnut kansanperinne; ei käytössä KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-33 Hierarkinen puurakenne Juurihsto, kotihakemistot, alihakemistot Myös prosessit voivat luoda alihakemistoja Juurihstolla kiinteä paikka levyllä KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-34 9-17

Hierarkinen puurakenne Prosessiin liittyy työhakemisto u kun prosessi käynnistyy, työhakemistona oma kotihakemisto (kirjattu PCB:hen) u työhakemistoa voi vaihtaa Tdstonimi muodostuu polkunimestä, jonka osina hstonimet ja tdstonimi u absoluuttinen polkunimi: /hsto/hsto/tdstonimi u suhteellinen polkunimi: hsto/hsto/tdstonimi, tdstonimi u hakemistot. ja.. Kaikki nykyiset järjestelmät käyttävät hierarkista hakemistorakennetta KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-35 Käyttöjärjestelmät I Tiedostojen yhteiskäyttö KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-36 9-18

Tiedostojen yhteiskäytt yttö Käyttöoikeudet merkitty attribuutteihin Käyttäjien jaottelu esim. (UNIX) u u omistaja u g samaan ryhmään kuuluvat u o muut käyttäjät Oikeuksien jaottelu ryhmittäin esim. (UNIX) u - ei mitään u r lukuoikeus u w kirjoitusoikeus (oikeus muuttaa) u x suoritusoikeus Omistaja voi muuttaa käyttöoikeuksia KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-37 Tiedostojen yhteiskäytt yttö Hakemiston oikeudet esim. (UNIX) u r oikeus listata hston sisältö u w oikeus poistaa tdsto hakemistosta u x oikeus käyttää hstonimeä polkunimessä Muita mahdollisia oikeuksia u lisääminen vain tdston loppuun u käyttöoikeuksien muuttaminen u oikeus listata tdstonimi ja omistaja u... Eräissä järjestelmissä mahdollista määritellä myös käyttäjäkohtaisia oikeuksia u Pääsylistat ja valtakirjalistat (access control/capability lists) [ KJ-II ] KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-38 9-19

Tiedostojen yhteiskäytt yttö KJ tarkistaa käyttöoikeudet yleensä vain tdstoa avattaessa u PCB:ssä omistaja (uid) ja ryhmä (gid) u hstoalkiossa omistaja (uid) ja ryhmä (gid) Oikeudet oltava kaikkiin polkunimen osiin Käyttäjän uid ja gid käyttäjätietokannasta u UNIX: passwd-tdsto: uid ja ensisijainen gid group-tdsto: käyttäjän muut ryhmänumerot uid ja gid periytyvät lapsiprosesseille ja edelleen luoduille tdstoille KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-39 Tiedostolukitus Vain yksi saa muuttaa kerrallaan tdstoa, siitä voi lukea usea yhtäaikaa Kullakin kjällä oma luku/kirjoituspositio u Tdstokuvaajataulu PCB:ssä muut KJ:n rakenteet yhteiskäytössä u KJ:n avoimet tdstot taulu, tdstolukot KJ:n lohkopuskurit,... KJ voi tarjota lukituksen tai lukitus jää sovelluksen tehtäväksi u koko tiedoston lukitus u vain osan lukitus (esim. 80 tavua tai levylohko) KJ tarkistaa lukituksen tdstoa avattaessa tai tdstoon viitattaessa KJ-I S2005 / Tiina Niklander, kalvot Auvo Häkkinen 9-40 9-20