Operativsystemer [5]: Filsystemer Datalogi 1F Forår 2003 Jørgen Sværke Hansen

Slides:



Advertisements
Lignende præsentationer
HUNDE SPEED km h 34,4 HUNDE SPEED km h 34,1 HUNDE SPEED km h 32,8 HUNDE SPEED km h 31,9 HUNDE SPEED km h 31,8 HUNDE SPEED km h 30,9.
Advertisements

Søgning efter en fil Du vil finde et Word dokument som du ikke kan huske hvor du har placeret men du kan huske et af ordene i dokumentet Du får dette.
Den danske befolknings syn på handicappedes rettigheder
VMS data Geografisk og tidsmæssig udvikling af indsatsen i tobisfiskeriet v/ dataspecialist Josefine Egekvist Sekretariat for myndighedsbetjening.
Atomer Et programmeret forløb. En måde at lære på.
Trehøje-Pigerne Side 1 Vejledning til brug af hjemmesiden Det er slet ikke så vanskeligt – så brug hjemmesiden flittigt… Det er.
SharePoint /36 2 General SettingsPermissions and ManagementCommunications Titel, description and navigation Versioning settings Advanced settings.
Børns indflydelse på familiens købsbeslutninger
NemID og Fællesskema 2014 v/Signe Hansen Blegmand
Hjemmesidekonstruktion Tjekspørgsmål 1.Hvad er et markup-sprog – hvad bruges det til? 2.Hvad er forskellen mellem et markup-sprog og et scriptsprog? 3.Hvad.
TEST 2 modul 1 20 spørgsmål. Du skal klikke med musen på det rigtige svar, så kommer du automatisk til næste spørgsmål Klik for start.
Torbenfeldvej Vallensbæk strand Tlf.: – – dagligt brug af vores hjemmeside •AGEN LYS har en stor og omfattende.
Vejledning i weblog-værktøjet
Grundlæggende IT Lektion 4 Sådan virker pc’en
Kap. 2 Fiskeri med trawl 2.1 · En smakke med trawlet ude.
Sidetyper Web-udvikling med FrontPage 2003 RHS - Informationsteknologi.
REGISTRERINGSDATABASEN
Vejledning i blog-værktøjet WordPress Opdateret august 2009.
Velkommen hos Juvel A/S
Vejledning i blog-værktøjet WordPress Opdateret oktober 2012.
Vejledning i blog-værktøjet WordPress Opdateret august 2008.
Vejledning i blog-værktøjet WordPress Opdateret februar 2009.
Formularer (Access, del 3)
Bolig selskabernes Landsforening– Almene lejeboliger - Maj/Juni Almene lejeboliger - Danmarkspanelet - Maj/Juni 2010.
Trivselsundersøgelse og ledelsesevaluering
TEST 3 modul 1 20 spørgsmål. Du skal klikke med musen på det rigtige svar, så kommer du automatisk til næste spørgsmål Klik for start.
SQL 1 DDL og DML.
Introduktion til indholdsfortegnelser j Tryk derefter på F5, eller klik på Slideshow > Fra begyndelsen for at starte kurset. Klik på Aktivér redigering.
Velkommen Lars Johansson ProjectForce. Program: Lidt omkring Athena IT-Group A/S Introduktion til ProjectForce – Microsoft Sharepoint Lidt teori omkring.
SEO PÅ AU.
Statistik.
Arbejdsmarkedsuddannelser – også for personer med læse-, skrive- og regnevanskeligheder Oplæg fra AMU-Fyn Konference d. 22/5 -07.

Representations for Path Finding in Planar Environments.
Opret en database i Reference Manager, ver. 11 Åbn programmet. Opret en ny database. Placér basen ude på ”skrivebordet ” (kun i denne sammenhæng – da baserne.
Kursus om borger.dk og brugen af digital signatur
Introduktion til Access (Access, del 1)
Opslagsfelter (Access, del 6). RHS – Informationsteknologi 2 Udgangspunkt Vi er ofte i den situation, at valg af en type for et felt ikke begrænser vores.
Oprettelse af tabeller (Access, del 2)
Sådan vedligeholdes grundkortets 4 faner Vil du ændre de kort, der vises via Skoleporten > Om skolen > Grundplaner, skal du blot ændre i disse filer: Grundplan_Oversigt.gif.
1 GIS i Gymnasiet på Fyn - en introduktion til brugen af Geografiske Informations Systemer i undervisningen.
Backup/Storage Søren Helmer Jensen.
Pleje og Sundhed Gennemførte719 Inviterede895 Svarprocent80% FREDERICIA KOMMUNE MTU og Psykisk APV 2012 Rapportspecifikationer.
1 UNION-FIND. 2 inddata: en følge af heltalspar (p, q); betydning: p er “forbundet med” q uddata: intet, hvis p og q er forbundet, ellers (p, q) Eksempel.
1 Powerpointserie om In-line færdiggørelse ved Heatsettrykning Avisrotation Magasindybtryk Den Grafiske Højskole.
1 Test i Word 2007 Klik her for at begynde. 2 Hvor skal du klikke for at gemme dit dokument?
Trivselsundersøgelse og ledelsesevaluering Anæstesiologisk Afdeling Flere ledere
Datastrukturer og Collections Rasmus D. Lehrmann DM
ETU 2008 | Elevtilfredshedsundersøgelse Erhvervsskolen Nordsjælland HTX (Teknisk Gymnasium) - Hillerød Baseret på 313 besvarelser.
Filer Hvordan søges der efter en Word-fil = med et dokument. eller en billed-fil Sommer.
BlueDoc 2.0 (C) 2003 TMA Components Web-integreret Intranet søgemaskine.
1 Sortering I elementære metoder. 2 Plan Terminologi Elementære metoder til sortering -sortering ved udvælgelse -sortering ved indsættelse -Shellsort.
XML Rasmus D. Lehrmann DM Indhold Hvad er XML? XML standarder Hvor bruges XML? XML struktur Træ struktur Element & Attribute Syntaks i XML Stylesheets.
Matematik B 1.
Claus Brabrand, ITU, Denmark Mar 10, 2009EFFECTIVE JAVA Effective Java Presentation Workshop Claus Brabrand [ ] ( “FÅP”: First-year Project.
Rapporter (Access, del 5). RHS – Informationsteknologi – Udgangspunkt Vi har oprettet en database Vi har defineret en eller flere tabeller, og.
Grunde til at jeg elsker dig
© 2012 Microsoft Corporation. Alle rettigheder forbeholdes. Tilføje en kontakt Listen Kontakter gør din kommunikation lettere og gør det muligt for dig.
Fundamentale datastrukturer
1. Database-systemer, introduktion
Opslagsfelter (Access, del 6). RHS – Informationsteknologi – Udgangspunkt Vi er ofte i den situation, at valg af en type for et felt ikke begrænser.
Introduktion til Access (Access, del 1). RHS – Informationsteknologi – Fra design til udvikling Vi ved nu, hvordan vi finder et design for en database,
17. Fejl-håndtering1 Fejl-håndtering 17. Coping With System Failures.
1 Fundamentale datastrukturer. 2 Definitioner: abstrakt datatype, datastruktur Elementære datastrukturer og abstrakte datatyper : arrays, stakke, køer,
Procestræ under afvikling af cp init login shell cp cp src dest.
Fremstilling af Simple WEB steder [ITPL] Foråret 2004
Oprettelse af tabeller (Access, del 2)
Per P. MadsenStyresystemer og tjenester1 Indhold: 1.Introduktion til styresystemer. 2.Processer og tråde. 3.Synkroniseringsmetoder og InterProcesCommunikation.
Videnskabeligt projekt
Præsentationens transcript:

Operativsystemer [5]: Filsystemer Datalogi 1F Forår 2003 Jørgen Sværke Hansen

Datalogi 1F: Operativsystemer[5]2 Oversigt Grænseflade: –Filoperationer –Filens struktur –Katalogstrukturer Implementering: –Lagerallokering –Afbildning af logisk struktur til fysisk struktur –Caching –Pålidelighed

Datalogi 1F: Operativsystemer[5]3 Hvad er en fil? En repræsentation af data: –et dokument (ASCII, DVI, Word XP, …) –en web-side (HTML 4.01, XHTML 1.0, …) –et billede (GIF, JPG, BMP, TIFF, …) –et regneark (Excel, Gnumeric, …) –en database (Oracle, DB2, MySQL, …) En repræsentation af et program: –shell script –binært eksekverbart formet (ELF, exe,..) –kildetekst (Java, BASIC, Perl, …)

Datalogi 1F: Operativsystemer[5]4 Hvor er en fil? Placeret på sekundært lagermedie: –harddisk –bånd –CD –diskette Delt mellem (især åbne filer): –applikation –operativsystem –sekundært lager

Datalogi 1F: Operativsystemer[5]5 Strukturen af en fil Ingen: en række af bytes, ord, … Simple poster: –linier –fast længde –variabel længde Avancerede formater: –XML –relokerbar programkode En række af bytes kan bruges til at beskrive både simple poster og avancerede formater: –men hvem skal gøre det? –Applikation eller operativsystem

Datalogi 1F: Operativsystemer[5]6 Beskrivelse af en fil Navn Type Placering Størrelse Adgangskontrol Tidsstempler Ejere

Datalogi 1F: Operativsystemer[5]7 Organisering af flere filer Filsystem /etc Katalog /usr / bar foo bar Filer foo

Datalogi 1F: Operativsystemer[5]8 Operationer på filsystemer Filoperationer –Åben –Luk –Læs –Skriv –Tilføj –Afskær –Ændring af rettigheder Katalogoperationer: –Find fil/katalog –Opret fil/katalog –Slet fil/katalog –Udskriv indhold –Skift katalog

Datalogi 1F: Operativsystemer[5]9 Katalogstruktur Effektivitet: –Givet et filnavn skal man hurtigt kunne finde en fils placering på sekundært lager Navngivning: –flere brugere skal kunne navngive filer uafhængigt af hinanden –den samme fil kan have flere navne Gruppering: –katalogstruktur skal kunne beskrive at filer er beslægtede

Datalogi 1F: Operativsystemer[5]10 Katalogstruktur med et niveau Et enkelt katalog beskriver alle filer: Problemer med: –navngivning –gruppering

Datalogi 1F: Operativsystemer[5]11 Kataloger med træstruktur

Datalogi 1F: Operativsystemer[5]12 Acyklisk graf

Datalogi 1F: Operativsystemer[5]13 Generel grafstruktur

Datalogi 1F: Operativsystemer[5]14 Mounts Filsystemet specificeres via en superblok Et filsystem indeholder en katalogstruktur Denne katalogstruktur skal gøres tilgængelig før filerne skal tilgås: –Roden i hvert filsystem optræder som et katalog i et ”super” rodkatalog, f.eks.: A:, B:, C:, D:, …. –Et filsystem er specificeres som værende rodfilsystemet – andre filsystemer indplaceres i rodfilsystemets katalogstruktur

Datalogi 1F: Operativsystemer[5]15 To filsystemer

Datalogi 1F: Operativsystemer[5]16 Efter mount af (b) på /users/

Datalogi 1F: Operativsystemer[5]17 Adgangskontrol Hvem har ret til at gøre hvad? Adgangskontrollister: –Hvem: bruger ID, gruppe ID –Hvad: læse, skrive, udføre, tilføje, slette Adgangsbevis (eng.: capability): –adgangsbeviset indikerer rettigheder –adgangsbevisets ægthed skal kunne verificeres –adgangsbeviser kan måske overdrages

Datalogi 1F: Operativsystemer[5]18 Adgangskontrol - UNIX Adgangstyper: læs, skriv, udfør Niveauer: R W X –ejer (7) –gruppe (4) –andre (0) Hvis andre skal have læserettigheder kan de tilføjes gruppen (kræver administrator) Ændring af rettigheder chmod 740 foo

Datalogi 1F: Operativsystemer[5]19 Implementering af filsystemer Datastrukturer til: –kataloger –filer –ledige blokke Caching Pålidelighed

Datalogi 1F: Operativsystemer[5]20 Lagdeling af filsystemer I/O enheder (disk) Styreprogram Diskblokadgang Filstruktur Metadata Filgrænseflade Brugerprogram

Datalogi 1F: Operativsystemer[5]21 Kontrolblok for filer Rettigheder Tidsstempler (oprettet, sidst ændret,..) Referencetæller Størrelse Datablokke

Datalogi 1F: Operativsystemer[5]22 Datastrukturer i OS lager

Datalogi 1F: Operativsystemer[5]23 Katalogstrukturer En liste af tupler: –langsom søgning (når der er mere end 1 FS blok) Hashtabel: –fast størrelse –kollisioner B+ træer: –balanceret søgetræ –hver knude i træ har FS blok størrelse

Datalogi 1F: Operativsystemer[5]24 Allokering af FS blokke Allokering af blokke til et filsystem minder om allokering i hovedlageret: –vi har et virtuelt adresserum (filen), der skal afbildes til et fysisk adresserum (harddisken) men det er meget dyrere at tilgå en disk i forhold til hovedlageret vi vil derfor gerne have så få administrative data liggende på disken som muligt

Datalogi 1F: Operativsystemer[5]25 Sammenhængende allokering

Datalogi 1F: Operativsystemer[5]26 Hægtet allokering

Datalogi 1F: Operativsystemer[5]27 Filallokeringstabel

Datalogi 1F: Operativsystemer[5]28 Indekseret allokering

Datalogi 1F: Operativsystemer[5]29 UNIX filstruktur

Datalogi 1F: Operativsystemer[5]30 Extent-baserede FS’er I stedet for at allokere blokkene til en fil i grupper af en fast størrelse kan man bruge grupper af en variabel størrelse (extents) En extent beskrives via: –startblok –længde –(startposition i fil) En extent kræver mere bogføring, men understøtter store filer bedre (hvis der er sammenhængende diskplads)

Datalogi 1F: Operativsystemer[5]31 Håndtering af ledig diskplads Bitmap: –hver blok repræsenteres af en enkelt bit: 0 == blok optaget, 1 == blok ledig –ledig blok: (antal 0 ord)*(bits per ord)+forskydning af første 1 bit Liste af frie blokke: –overhead betyder ingenting –svært at finde sammenhængende diskplads (brug extent-baseret liste) B+ træer med extents sorteret efter –størrelse & diskblok

Datalogi 1F: Operativsystemer[5]32 Ydelse Reducer antallet af søgninger: –Allokering af datablokke tæt på indeksblokke og filkontrolblokke –elevatoralgoritme: sorteret liste over ønskede blokke læs de blokke der er tættest på diskhovedet

33 Ydelse (2) Caching: –gem ofte refererede blokke: kataloger filer (kontrolblokke, indexblokke, datablokke) –administrativ information (ledige blokke) –forudsig filadgangsmønstre (read-ahead) –forsinkelse af skrivninger: skriv større sammenhængende områder opfang flere ændringer –problem ved forsinkelse af skrivninger: diskstruktur kommer bagefter systemnedbrud kan have alvorlige konsekvenser

Datalogi 1F: Operativsystemer[5]34 Side cache vs buffer cache

Datalogi 1F: Operativsystemer[5]35 Forenet buffer cache

Datalogi 1F: Operativsystemer[5]36 Opdatering af datastrukturer på disk Eksempel: en fil der oprettes kræver ændringer i: (K) katalogstruktur (indsæt navn og peger til FKB) (F) fjern FKB fra frie blokke (hægt ud/flip bit) Ved opdatering på disk –hvis (K) opdateres før (F) kan et systemnedbrud betyde, at (K) refererer til en blok der er markeret ledig –hvis (F) opdateres før (K) kan systemnedbrud betyde at vi mister en blok fra frilisten

Datalogi 1F: Operativsystemer[5]37 Efter et nedbrud På mounttidspunktet opdages at filsystemet har oplevet et systemnedbrud Der foretages et check af filsystemet: –det undersøges om katalogindgange refererer blokke, der er markeret frie –det undersøges om der er allokerede blokke, der ikke refereres (f.eks., katalogindgange eller indeksblokke) Dette kræver at hele filsystemet gennemtrævles og kan nemt tage lang tid for store diske

Datalogi 1F: Operativsystemer[5]38 Journaliserede filsystemer Opdateringer af metadata (indexblokke, katalogstrukturer, FKB’ere) opfattes som en DB transaktion Alle transaktionerne skrives til en journal på disken inden de udføres på disken Når en transaktion er registreret, er dens udførsel garanteret selv ved nedbrud Herefter kan metadata opdateres Når dette er gjort fjernes transaktionen fra journalen Efter nedbrud er det nok at afspille journalen

Datalogi 1F: Operativsystemer[5]39 Journaliserede filsystemer (2) BRAVO! Nu skriver vi metadata TO gange i stedet for EN Ja, men journalen er fortløbende allokerede blokke – dvs. få søgninger og vi kan cache flere opdateringer - dvs. færre søgninger nogle journaliserede filsystemer kan bruge en separat disk/partition til journalen – færre søgninger

Datalogi 1F: Operativsystemer[5]40 Backup Trinvis backup Filsystem snapshot –når filsystem har konsistente datastrukturer på disk, kan visse disksystemer tage et tilstandsbillede af diskens indhold på tidspunkt T –herefter kan et backupprogram angive, at det ønsker at læse fra filsystemet som det så ud på tidspunkt T –Ændringer overskriver ikke gamle blokke men skrives til nye Låsning af dele af filsystemet

Datalogi 1F: Operativsystemer[5]41 Redundante diske Redundant Array of Inexpensive Disks (RAID): –mange små diske er billigere end en stor –selv med store diske kan det være en god ide at have en (eller flere/færre) i reserve Mest almindelige: –RAID 1: spejlning –RAID 5: paritetsdisk (N data + 1 paritet)

Datalogi 1F: Operativsystemer[5]42 Spejlning (RAID 1) RAID gruppe

Datalogi 1F: Operativsystemer[5]43 RAID 5

Datalogi 1F: Operativsystemer[5]44 Store skrivninger XOR

Datalogi 1F: Operativsystemer[5]45 Opsummering Der findes mange filformater, men oftest understøtter Oset kun et eller få formater Navngivning/katalogstruktur skal være fleksibel Lageradministration på diske er tungere, og antallet af læsninger vigtigt for effektivitet Caching er vigtig for ydelsen, men vær forsigtig med at cache metadata

Datalogi 1F: Operativsystemer[5]46 Kilder Disse slides er baseret på SG03 samt de af forfatterne udviklede slides