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

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

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

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

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

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

Stallings, Luku

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.

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

Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS

Käyttöjärjestelmät II

Osio 2: Luennot 4-7 Muistinhallinta

Käyttöjärjestelmät II

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

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

Osio 2: Luennot 5-8 Muistinhallinta

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

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

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

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

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

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

Luento 2: Tiedostot ja tiedon varastointi

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

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

Luento 9 Järjestelmän ulkoinen muisti

Luento 3: PROSESSIT JA NIIDEN HALLINTA

Luento 9 Järjestelmän ulkoinen muisti

Luento 6: VIRTUAALIMUISTI

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

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti

Jakso 8 Ohjelman suoritus järjestelmässä

Jakso 8 Ohjelman suoritus järjestelmässä

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

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

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

MUISTINHALLINTA. Stallings, Luku 7

TIETOKANTOJEN PERUSTEET MARKKU SUNI

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

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

oheishakemistoja voi tiedostoon liittyä useita eri perustein muodostettuja

Algoritmit 1. Luento 5 Ti Timo Männikkö

Algoritmit 1. Luento 4 Ke Timo Männikkö

Käyttöjärjestelmät: prosessit

HELIA 1 (15) Outi Virkki Tiedonhallinta

Algoritmit 1. Luento 6 Ke Timo Männikkö

Algoritmit 2. Luento 3 Ti Timo Männikkö

Algoritmit 2. Luento 3 Ti Timo Männikkö

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

Tietokanta (database)

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

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

Ohjelmisto on tietokanta pohjainen tiedostojärjestelmä, joka sisältää virtuaalisen hakemisto rakenteen.

OHJ-1010 Tietotekniikan perusteet 4 op Syksy 2012

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

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

PROSESSIT JA NIIDEN HALLINTA

Muistihierarkia Kiintolevyt I/O:n toteutus

HELIA 1 (16) Outi Virkki Tietokantasuunnittelu

D B. Tiedostojen käsittely

Järjestelmäarkkitehtuuri (TK081702) Hajautettu tietokanta. Hajautuksen hyötyjä

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

Käyttöjärjestelmät. Tietokoneen rakenne. Stallings, Luku 1. KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 1-1

Tietojenkäsittelyn perusteet 2. Lisää käyttöjärjestelmistä

Järjestelmän ulkoinen muisti I/O

Luento 9 Järjestelmän ulkoinen muisti

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

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

Luento 9 Järjestelmän ulkoinen muisti

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

Algoritmit 2. Luento 6 Ke Timo Männikkö

HELIA 1 (17) Outi Virkki Tiedonhallinta

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

Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari Korhonen

D B. Harvat hakemistot. Harvat hakemistot

Unix-perusteet. Varmistaminen, tiedon pakkaaminen ja tiivistäminen

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

Tietorakenteet ja algoritmit - syksy

IT K 1 45 K ä yt t öj ä rj estelmät

Jakso 8 Ohjelman toteutus järjestelmässä

HELIA 1 (11) Outi Virkki Tiedonhallinta

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

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

Kirjoita oma versio funktioista strcpy ja strcat, jotka saavat parametrinaan kaksi merkkiosoitinta.

Tietokonejärjestelmä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja. TITO-kurssista. John von Neumann ja EDVAC, 1949.

Muistihierarkia Kiintolevyt I/O:n toteutus

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

Algoritmit 2. Luento 4 To Timo Männikkö

KIRJANPITO JA RESKONTRA

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

Sisältöä MUISTINHALLINTA. Stallings, Luku 7. Fyysinen muisti YLEISTÄ MUISTINHALLINNASTA. Looginen muisti. Prosessin rakenne

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

Luento 3. Timo Savola. 7. huhtikuuta 2006

Transkriptio:

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

Sisältöä Peruskäsitteistöä, tehtäviä ja tavoitteita Järjestelmän rakenne Tiedostojen organisointi saantimenetelmät Hakemistot Yhteiskäyttö Levykirjanpito KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-2

Käyttöjärjestelmät Peruskäsitteistöä KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-3

Perustermit Kenttä (field) bittien / tavujen muodostama looginen kokonaisuus yksi arvo, jolla tyyppi ja pituus Tietue (record) joukko yhteenkuuluvia ja yhdessä käsiteltäviä kenttiä esim. työntekijä-tietue: nimi, osoite, tehtävä... Tiedosto (file) tietueiden muodostama hallinnollinen kokonaisuus levykirjanpito ja pääsyoikeudet tiedostoittain Tietokanta (database) joukko yhteenkuuluvia tiedostoja sujuvat elementtien väliset viittaukset (hakuavaimin) KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-4

Perustermit Tietokantojen hallintaa varten yleensä erillinen tiedonhallintajärjestelmä joka käyttää KJ:n tiedostojärjestelmää Perusoperaatiot tietokannoille: Hae yksi / kaikki tietueet Hae tietyn ehdot täyttävät tietueet Hae seuraava / edeltävä tietue Lisää / muuta / poista tietue Ei yleensä lasketa KJ:n perusosaksi paremminkin palveluohjelmistoa (utility programs) KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-5

KJ:n tiedostojärjestelmä Tiedostojen käsittely suojaussyistä aina KJ:n tiedostojärjestelmän kautta käyttöoikeudet osa tiedostomääreitä (attribuutteja) Huolehtii tallennuksen ja käytön yks.kohdat kirjanpito vapaista lohkoista (taltiolla!) hierarkkinen hakemistorakenne: kirjanpito tiedostoista nimeäminen ja attribuutit, tdstoon kuuluvat lohkot tiedostojen käyttö avoimet tiedostot, luku / kirjoituspositio yhteiskäyttö Ei ota kantaa tdston loogiseen rakenteeseen tiedosto KJ:lle vain pötkö tavuja / lohkoja sovellus tietää tulkinnan KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-6

Tehtäviä ja tavoitteita Tiedon pysyvä tallennus luonti, poisto, muuttaminen varmistuskopiot Tiedon oikeellisuus Tehokkuus Yleisyys: sama idea OK erilaisille laitteille Standardoidut I/O-operaatiot Monenkäyttäjän moniajojärjestelmän huomiointi eri tiedostojen yhtäaikainen käyttö samojen tiedostojen yhteiskäyttö, lukitukset käyttöoikeudet KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-7

Käyttöjärjestelmät Järjestelmän rakenne KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-8

Järjestelmän rakenne Kuva 12.1 Tiedonhallinta- järjestelmä Laiteriippumaton Laiteriippuva KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-9

Järjestelmän rakenne Tan01 Kuva 5-16 KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-10

KJ:n laiteriippuva taso Laiteajuri Alin ohjelmallinen taso tuntee laitteen yksityiskohdat ja käyttötavat Ei hajulla esimerkiksi, miten lohkot liittyvät tiedostoihin saa ylempää: lohkonumeron, lohkopuskurin muistiosoitteen, operaatiokoodin (R/W) Loogiset osoitteet fyysisiksi osoitteiksi esim. lohkonumero levypinta, ura, sektori Pyyntöjen uudelleenjärjestely vähentää ylimääräisiä hakuvarren siirtoja missä hakuvarsi nyt, minne seuraavaksi KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-11

KJ:n laiteriippuva taso Laiteajuri Fyysisen siirrännän aloitustoimet käyttää laiteohjaimen rekistereitä operaatio, mistä, minne, paljonko ohjain voi toimia sen jälkeen itsenäisesti 'Siirto valmis' -keskeytys laitenro etsi laitekuvaaja ajuri Fyysisen siirrännän lopetustoimet tarkistaa onnistumisen ohjaimen rekistereistä 'herättää' KJ:n ylemmät osat toimimaan KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-12

KJ:n laiteriippumaton taso Ylläpitää tiedoston käytössä tarvittavia ajonaikaisia tietorakenteita PCB:ssä oleva tiedostokuvaajataulu mitä tiedostoja avannut luku/kirjoituspositio avaamis/käyttötapa (R / W / RW) globaalit avoimet tiedostotaulut/listat tiedostomääreet yhteiskäyttö Vastaa taltion kirjanpidosta kirjanpitorakenteet taltiolla, käsittelyä varten muistiin missä vapaat / varatut alueet mitkä lohkot kuuluvat tiedostoon tiedostohakemistot KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-13

KJ:n laiteriippumaton taso Huolehtii esim. lohkopuskuroinnista puskuroi muistiin luettuja lohkoja välittäjänä sovelluksen tavuittain / tietueittain käsittelyn ja levyn lohkoittain käsittelyn välillä kopioi tavuja puskurista sovelluksen muuttujiin tai toisinpäin Huolehtii siirrännän alustus&lopetustoimista 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 laitenumero etsi laitekuvaaja ajuri KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-14

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

Saantimenetelmät Sovelluksella standardoidut operaatiot tiedoston käsittelemiseksi open(), close(), read(), write(), seek() Tiedostojen erilaista käsittelyä varten voi olla niitä tukevia lisätietorakenteita kasarakenne peräkkäisrakenne indeksoitu peräkkäisrakenne indeksoitu rakenne hajautettu rakenne Vaikuttavat tiedostojen talletustapaan, käyttötapaan ja käytön tehokkuuteen KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-16

Käyttöjärjestelmät Tiedostojen organisointi, saantimenetelmät KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-17

Tiedostojen organisointi Nopea saanti tärkeä yksittäistä tietuetta käsiteltäessä ei tärkeä koko tiedostoa erätyönä päivitettäessä Päivittämisen helppous esim. CD-ROMilla oleva tiedosto ei muutettavissa Talletustilan tehokas käyttö ei moninkertaista / ylimääräistä talletusta mutta ylimääräiset indeksit nopeuttavat käyttöä Ylläpidon yksinkertaisuus Luotettavuus KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-18

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 S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-19

Kasarakenne Kenttien lkm voi vaihdella ja / tai kentät voivat olla eri järjestyksessä eri tietueissa talletettava kentän nimi ja arvo kenttien välissä erottimet tai niillä vakiopituus Tietueen haku peräkkäishakuna ei hakua helpottavaa rakennetta / järjestystä Säästää tilaa, jos paljon puuttuvia kenttiä kenttien pituudet vaihtelevat KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-20

Peräkkäisrakenne Kuva 12.3 Tietueilla sama rakenne ja pituus sama kenttien järjestys ja pituus kaikissa tietueissa maxpituuden mukaan kenttien nimiä ja pituuksia ei tarvitse tallettaa Kenttien nimet ja pituudet tiedoston attribuutteja talletettu tai muuten vaan käsittelijän tiedossa KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-21

Peräkkäisrakenne Yksi kentistä avain yksikäsitteinen tietueet avaimen mukaan järjestyksessä Sopii sekä levyille että nauhoille Käytetään lähinnä vain eräkäsittelyssä päivitystapahtumat erillisessä tdstossa (avainjärjestys) Päivitysprosessi tuottaa kokonaan uuden tiedoston kantatiedosto ja päivitystapahtumat järjestetty avaimen mukaan KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-22

Indeksoitu peräkkäisrakenne Järj. tietueiden lisäksi hakua helpottavaa tietoa, hakemisto (indeksi) Hakemistosta osoittimia tiedoston keskelle avain, missä tietue Etsi hakemistosta avaimen perusteella suunnilleen oikea kohta, jatka peräkkäishakuna vars. talletusalueelta KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-23

Indeksoitu peräkkäisrakenne Lisäyksiä varten erillinen lisäysalue jokaisessa tietueessa ylimääräinen linkkikenttä uusi tietue lisäysalueelle, ja 'kotilohkon' viimeiseen tietueeseen viite Aika-ajoin koko tiedoston uudelleenjärjestely lisäysalueen lomitus KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-24

Haun tehokkuudesta Kun tiedostossa miljoona tietuetta Peräkkäishaku käytävä läpi km. 500000 tietuetta Käytössä 1000 alkion hakemisto hstossa joka tuhannen alkion avain + viite tietueeseen käytävä läpi km. 500 alkiota hakemistosta ja löytyneestä lohkosta km. 500 tietuetta Voi tehostaa monitasoisen hakemiston avulla 2-tason indeksi 10000 alkiota (joka 100:s avain+viite) 1-tason indeksi 100 alkiota (joka 100:s 2-tason avain+viite) haku: 50 + 50 + 50 tietuetta KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-25

Täysin indeksoitu rakenne Useita hakemistoja, useita hakuavaimia Käsittely vain hakemistojen (indeksien) kautta Koko tiedoston läpikäyntiä varten pääavaimen mukainen täydellinen hakemisto KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-26

Täysin indeksoitu rakenne Tietueiden ei tarvitse olla fyysisesti avaimen mukaisessa järjestyksessä läpikäynti vain hakemistojen kautta Lisäykset / poistot helppoja Käytetään esim. jos haun nopeus tärkeää, ja vain harvoin peräkkäiskäsittelyä KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-27

Suorasaantirakenne Kukin tietue / lohko saatavissa missä tahansa järjestyksessä sopiva laite levy Sijainti selvitettävissä avaimen perusteella voi perustua myös hajautuksen käyttöön Tiedoston tietueet / lohkot sijoitellaan taltiolle vapaaseen järjestykseen Sopii kiinteänmittaisille tietueille / lohkoille Sopii hyvin interaktiiviseen reaaliaikakäyttöön tietueen päivitys välittömästi omalla paikallaan lue muistiin, päivitä, kirjoita taltiolle KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-28

Käyttöjärjestelmät Hakemistot KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-29

Hakemisto = Tiedosto, jossa tiedostoihin liittyvää tietoa Vain KJ:lla hakemistotiedoston suora käyttöoikeus hakemiston muutokset aina KJ:n palvelupyyntöjä listaa hakemiston tiedot, etsi tiedostonimi, lisää / poista tiedostonimi,... Hakemistoalkiossa mm. (ks. taulu 12.2) tiedostonimi attribuutit: omistaja (uid), ryhmä (gid), tyyppi, käyttöoikeudet, aikaleimat mitkä lohkot kuuluvat tiedostoon, koko tavuina laite, jolla tiedosto majailee KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-30

KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 31

Yksitasoinen hakemisto Vain lista tiedostonimistä ja attribuuteista Yksinkertainen peräkkäisrakenne avaimena tiedostonimi Ei anna apua tiedostojen organisointiin ei hierarkiaa kaikkien käyttäjien tiedostot siinä ainoassa hakemistossa Tiedostonimien oltava yksikäsitteisiä koko järjestelmän sisällä eri käyttäjillä ei voi olla samannimisiä tiedostoja ks. kadonnut kansanperinne; ei käytössä KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-32

2-tasoinen hakemisto Jokaiselle käyttäjälle oma käyttäjähakemisto eri käyttäjillä voi olla samannimisiä tiedostoja Päähakemisto, jossa tiedot käyttäjähakemistoista Hakemisto edelleen vain lista tiedostonimiä, ei käyttäjäkohtaista hierarkiaa käyttäjällä ei voi olla kahta samannimistä tiedostoa käyttäjä ei voi luoda hakemistoja ks. kadonnut kansanperinne; ei käytössä KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-33

Hierarkinen puurakenne Juurihakemisto, kotihakemistot, alihakemistot Myös prosessit voivat luoda alihakemistoja Juurihakemistolla kiinteä paikka levyllä KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-34

Hierarkinen puurakenne Prosessiin liittyy työhakemisto kun prosessi käynnistyy, työhakemistona oma kotihakemisto (kirjattu PCB:hen) työhakemistoa voi vaihtaa Tiedostonimi muodostuu polkunimestä, jonka osina hakemistonimet ja tiedostonimi absoluuttinen polkunimi: /hsto/hsto/tdstonimi suhteellinen polkunimi: hsto/hsto/tdstonimi, tdstonimi hakemistot. ja.. Kaikki nykyiset järjestelmät käyttävät hierarkista hakemistorakennetta KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-35

Käyttöjärjestelmät Tiedostojen yhteiskäyttö KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-36

Tiedostojen yhteiskäyttö Käyttöoikeudet merkitty attribuutteihin Käyttäjien jaottelu esim. (UNIX) u omistaja g samaan ryhmään kuuluvat o muut käyttäjät Oikeuksien jaottelu ryhmittäin esim. (UNIX) - ei mitään r lukuoikeus w kirjoitusoikeus (oikeus muuttaa) x suoritusoikeus Omistaja voi muuttaa käyttöoikeuksia KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-37

Tiedostojen yhteiskäyttö Hakemiston oikeudet esim. (UNIX) r oikeus listata hston sisältö w oikeus poistaa tdsto hakemistosta x oikeus käyttää hstonimeä polkunimessä Muita mahdollisia oikeuksia lisääminen vain tdston loppuun käyttöoikeuksien muuttaminen oikeus listata tdstonimi ja omistaja... Eräissä järjestelmissä mahdollista määritellä myös käyttäjäkohtaisia oikeuksia Pääsylistat ja valtakirjalistat (access control/capability lists) KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-38

Tiedostojen yhteiskäyttö KJ tarkistaa käyttöoikeudet yleensä vain tiedostoa avattaessa PCB:ssä omistaja (uid) ja ryhmä (gid) hstoalkiossa omistaja (uid) ja ryhmä (gid) Oikeudet oltava kaikkiin polkunimen osiin Käyttäjän uid ja gid käyttäjätietokannasta UNIX: passwd-tiedosto: uid ja ensisijainen gid group-tiedosto: käyttäjän muut ryhmänumerot uid ja gid periytyvät lapsiprosesseille ja edelleen luoduille tiedostoille KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-39

Tiedostolukitus Vain yksi saa muuttaa kerrallaan tiedostoa, siitä voi lukea usea yhtäaikaa Kullakin käyttäjällä oma luku/kirjoituspositio Tiedostokuvaajataulu PCB:ssä muut KJ:n rakenteet yhteiskäytössä KJ:n avoimet tiedostot -taulu, tiedostolukot KJ:n lohkopuskurit,... KJ voi tarjota lukituksen tai lukitus jää sovelluksen tehtäväksi koko tiedoston lukitus vain osan lukitus (esim. 80 tavua tai levylohko) KJ tarkistaa lukituksen tiedostoa avattaessa tai tiedostoon viitattaessa KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-40

Käyttöjärjestelmät Tilanvaraus KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-41

Tilanvaraus Ennaltavaraus maksimikoko kerrottava etukäteen onnistuu, jos esim. kopioidaan tiedosto luojilla taipumus arvioida yläkanttiin hukkaa tilaa sijoitettavissa käytön kannalta tehokkaasti minimoi hakuajan Varaus tarvittaessa järkevämpää ja yleisempää ei hukkaa tilaa hakuajan minimoimiseksi joskus uudelleenjärjestelyä KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-42

Tilanvaraus Pidettävä kirjaa taltion vapaista alueista kirjanpito taltiolla lue muistiin muuttamista varten Pidettävä kirjaa tiedostolle varatuista alueista kirjanpito tiedostokohtaisesti löytyy hakemistoalkiosta / tiedoston attribuuteista Varaus yhtenä tai useampana erillisenä alueena Kerralla varattavan alueen koko vaikuttaa kirjanpitoalueiden kokoon hukkatilan määrään KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-43

Varausyksikön koko Jos tiedoston osat sopivasti peräkkäin, käsittely tehokasta väh. hakuvarren siirtoja ja pyörähdysviipeitä Pientä varausyksikköä käytettäessä kirjanpitoalueet vievät enemmän tilaa Kiinteän varausyksikkökoon käyttö yksinkertaistaa varausta ja vapautusta vrt. virtuaalimuisti ja sivutus Vaihtelevanmittaisen varausyksikön käyttö minimoi hukkatilaa vrt. segmentointi kirjanpito työläämpää KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-44

Koko tiedosto yhdelle alueelle Hakemistoalkiossa vain ens. lohkon numero sekä tiedoston koko (pituus) Koon muuttaminen vaikeaa arvioitava varausta tehtäessä saatetaan joutua kopioimaan uudelle alueelle KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-45

Koko tiedosto yhdelle alueelle Pirstoutuminen tiedostojen väliin jää tyhjää tilaa Vapaiden alueista linkitetty lista ens. vapaa lohkonumero, montako vapaata peräkkäin Vrt. yksinkertainen muistinhallinta samat ongelmat ja heikkoudet KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-46

Lohkojen ketjutus Varaus lohko kerrallaan vasta tarvittaessa Hakemistoalkiossa viite tiedoston ensimm. lohkonumeroon sekä tiedoston koko Ketjutukselle tav. erillinen varaustaulu FAT, file allocation table ketjutus ei syö tilaa datalohkoista tdston lohkot muodostavat hstoalkiosta alkavan ketjun alkiossa srvan lohkon numero tai loppumerkki myös vapaat lohkot voidaan merkitä samaan tauluun KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-47

Lohkojen ketjutus Lohkojen varaus ja vapautus helppoa mikä tahansa vapaa lohko kelpaa, ei yhdistelemistä, ei järjestelemistä Saattaa aiheuttaa tdston pirstoutumista peräkkäiset lohkot kaukana toisistaan hidastaa hakua levyn tiivistäminen (defragmentation) KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-48

Lohkohakemisto Erillinen hakemisto tiedostolle varatuista lohkoista Usein erillään omassa lohkossa hakemistoalkiossa vain hakemistolohkon numero KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-49

Vapaan tilan hallinta Tan01 6-21 KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-50

Vapaan tilan hallinta Bittikartta 0=vapaa, 1=varattu Vapaiden lohkojen listat lohkoja, joihin talletettu vapaiden lohkojen numeroita lohkon viimeinen numero viite seuraavaan lohkoon, jossa lisää vapaiden numeroita esim. vanha UNIX Lohkojen varaus ja vapautus helppoa Saattaa aiheuttaa tiedoston pirstoutumista KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-51

Kertauskysymyksiä Mitä tehtäviä kuuluu KJ:n tiedostojen hallintaan? Mitä laiteajuri tekee? Miksi jokaiseen tiedostoon liittyvään palvelupyyntöön ei liity siirräntää? Mitä tietoja tiedoston attribuuteissa? Mitä tiedostojärjestelmän käyttöön liittyviä tietoja PCB:ssä? Miten tiedostojen käyttöoikeudet tavallisimmin määritellään? Milloin ne tarkistetaan? KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-52

END JOB EXIT Käyttöjärjestelmät KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-53