Filsystem

Et filsystem (i akronym FS ), i informatikk , indikerer uformelt en mekanisme der filer plasseres og organiseres på dataenheter som brukes til datalagring [1] , for eksempel masselagringsenheter (som et magnetbånd , harddisker , optiske disker , solid state-minneenheter eller, i spesielle tilfeller, til og med i RAM ) eller på eksterne enheter via nettverksprotokoller .

Historie

Før bruken av datamaskiner ble begrepet "filsystem" brukt for å beskrive en metode for å arkivere og hente papirdokumenter [2] . I 1961 ble begrepet brukt på datastyrt arkivering ved siden av den opprinnelige betydningen [3] , og fra 1964 ble dens generelle bruk etablert.

Beskrivelse

Mer formelt er et filsystem settet med abstrakte datatyper som er nødvendige for lagring (skriving), hierarkisk organisering, manipulering, navigasjon, tilgang og lesing av data . Noen filsystemer (som NFS ) samhandler faktisk ikke direkte med lagringsenheter.

Filsystemer kan representeres både grafisk via filleser og tekstlig via tekstskall . I den grafiske representasjonen ( GUI ) brukes vanligvis metaforen til mapper som inneholder dokumenter (filer) og andre undermapper .

Lagringsenheter, for eksempel harddisker , presenterer seg for operativsystemet som en rekke blokker med fast størrelse, vanligvis kalt sektorer , typisk 512 byte hver. De tilgjengelige operasjonene er å lese og skrive en vilkårlig blokk, eller noen ganger et sett med blokker. Basert på denne tjenesten levert av blokkenheter, realiserer filsystemet to abstraksjonsnivåer, som gjør masselagringsressurser lett brukbare av brukere.

Ledelse

Programvare for filsystemadministrasjon er ansvarlig for å organisere disse sektorene i filer og holde styr på hvilke sektorer som tilhører hvilke filer og hvilke sektorer som ikke brukes. Brukeren har normalt full frihet til å lage nye filer, slette eksisterende filer (og dermed frigjøre blokkene de okkuperte), og endre eksisterende filer (og dermed også endre størrelsen og dermed antall okkuperte blokker).

Det første abstraksjonsnivået er det som organiserer sektorene i et sett med arkiver (filer) av vilkårlig størrelse, som kan variere fra null til hele tilgjengelig størrelse på enheten: hver fil er distribuert i et sett med sektorer. Normalt ser brukeren bare én fil og trenger ikke å bekymre seg for hvilke sektorer som ble brukt til å lagre den. De tilgjengelige operasjonene er å lese eller skrive en blokk med data av vilkårlig størrelse på et vilkårlig punkt i filen. Ikke alle filsystemer trenger en lagringsenhet. Et filsystem kan faktisk brukes til å organisere og representere alle typer data, enten de er lagret eller dynamisk generert (for eksempel fra en nettverkstilkobling).

Hierarkiske filnavn

Det andre abstraksjonsnivået er det som lar deg organisere filer ved å tildele dem hierarkiske navn. Filsystemer har vanligvis assosiasjonstabeller av filnavn med deres respektive filer via harde lenker , vanligvis kobler filnavnet til en indeks i en filallokeringstabell av noe slag , for eksempel FAT til et MS-DOS- , eller en inode i en Unix -lignende filsystem . Mappestrukturer kan bare være på ett nivå, eller de kan tillate en hierarkisk struktur der mapper kan inneholde undermapper. I noen filsystemer er filnavn strukturert med en spesiell syntaks (for eksempel utvidelser eller versjonsnumre).

Hierarkiske filsystemer var en av de tidlige forskningsinteressene til Dennis Ritchie , en av grunnleggerne til Unix ; tidligere implementeringer var begrenset til noen få nivåer.

Tilgangskontroll

Filsystemet brukes også til å lagre data som brukes til å kontrollere tilgangen til hver fil av prosesser . Sikkerhetspolicyer for tilgang til filsystemoperasjoner er vanligvis basert på tilgangskontrolllister ( ACL ) eller muligheter . Upåliteligheten til ACL-er har blitt oppdaget i noen tiår, og av denne grunn har moderne operativsystemer en tendens til å bruke funksjonsmekanismen. Kommersielle filsystemer bruker fortsatt ACL-er. En ACL lar deg definere for hvert element i filsystemet hvilke tillatelser (lese, skrive, endre osv.) hver bruker som har tilgang til systemet har.

Spesielle funksjoner

Tradisjonelle filsystemer tilbyr verktøy for å opprette, flytte og slette både filer og mapper, men de lar deg ikke opprette flere lenker til mapper ( hardlinkene Unix og NTFS ) , eller gi nytt navn til overordnede lenker (".." i Unix eller DOS / Windows-systemer ) og for å lage toveiskoblinger mellom filer. Disse tradisjonelle filsystemene har også metoder for å opprette, flytte, slette og avkorte filer, og for å erstatte eller sette noen data i kø. I stedet tillater de ikke å legge til data eller kutte en fil i hodet, noe som forhindrer innsetting eller vilkårlig sletting av data. De mulige operasjonene er derfor svært asymmetriske og er ofte ineffektive i spesielle sammenhenger.

Hovedtyper

I løpet av datahistorien har en myriade av filsystemer blitt utviklet. Moderne operativsystemer er ofte i stand til å få tilgang til forskjellige filsystemer, ofte ganske enkelt ved å installere en spesiell modul eller driver . Filsystemtyper kan klassifiseres i diskfilsystemer , nettverksfilsystemer og filsystemer med spesielle formål . I mange tilfeller, på bransjespråket, brukes begrepet filsystem til å bety lagringsstrukturen til enheten, en slang måte å si "mapper og filer" sett på av operativsystemets skall. I vanlig sjargong er det vanlig å si, spesielt i GNU/Linux-systemer , at filsystemet er montert , for å la operativsystemet få tilgang til det for lese-/skriveoperasjoner.

Masselagringsfilsystem

Et diskfilsystem er et filsystem designet for å lagre filer på en diskstasjon , som kan kobles direkte eller indirekte til datamaskinen din . Eksempler på diskfilsystemer er:

Distribuert filsystem

Et distribuert filsystem lar deg få tilgang til filer på en ekstern datamaskin over et nettverk , potensielt samtidig fra flere datamaskiner. Eksempler på nettverksfilsystemer er:

Special Duty File System

Noen filsystemer brukes til spesielle oppgaver som ikke faller direkte inn i de to første kategoriene. Mange har ingen relasjon til et permanent datalagringsmedium, men brukes av operativsystemet for å gi tilgang til noe funksjonalitet. Noen eksempler er:

Merknader

  1. ^ Filsystemer , på tldp.org . Hentet 8. april 2022 .
  2. ^ Florence E. University of California, Kontorpraksis og forretningsprosedyre , New York, Chicago [etc.] The Gregg Publishing Co, 1922. Hentet 8. april 2022 .
  3. ^ RP Elliott, BOR-CARBON-SYSTEMET. Endelig teknisk rapport, 1. mai 1960-30. april 1961 , Office of Scientific and Technical Information (OSTI), 1. juni 1961. Hentet 8. april 2022 .
  4. ^ Vi introduserer Apple File System - WWDC 2016 - Videoer - Apple Developer , på developer.apple.com . Hentet 23. juni 2016 .

Relaterte elementer

Andre prosjekter