Se skivans hierarkiska struktur c. Diskstruktur. Kolla in Windows Explorer

Archangelsk State University

Kotlas gren

heltidsavdelning

Fakultet: teknisk

Specialitet: PGS

Kursarbete

Disciplin: datavetenskap

Ämne: Diskfilstruktur

Genomförde

1:a års elev

Zhubreva Olga

Alexandrovna

Kontrollerade:

Introduktion. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1 § Begreppet filsystem. . . . . . . . . . . . . . . . . . . .

2 § MS-DOS filsystem. . . . . . . . . . . . . . . . . . . .

§ 3 Filsystem Windows 95. . . . . . . . . . . . . . . . . .

4 § Windows NT filsystem. . . . . . . . . . . . . . . . . .

Slutsats. . . . . . . . . . . . . . . . . . . . . . . . . . . .

Introduktion.

Den metodologiska manualen avslöjar kärnan i begreppet "filsystem",

vilket är ett av de viktigaste begreppen i kursen ”Programvara

datorstöd”, och presenterar även strukturen för sådana filsystem

operativsystem som MS-DOS, Windows 95, Windows NT.

Strukturen i nuet bestäms av ett försök att uppnå detta mål.

manualer: ämnesmaterialet är uppdelat i fyra huvuddelar (delarna presenteras i

form av ett stycke), är var och en av delarna också, vid behov, uppdelad i

mindre detaljerade delar.

1 § Begreppet filsystem.

1.1. Filsystem definition.

Fil (på engelska File) - mapp, mapp.

En fil är ett namngivet minnesområde på någon fysisk

ett medium avsett för att lagra information.

Totala medel operativ system ge tillgång till

information på externa medier kallas ett filhanteringssystem eller

filsystem.

Filsystemet är en funktionell del av operativsystemet.

system som ansvarar för utbyte av data med extern lagring

enheter.

ORGANISERA ÅTKOMST TILL FILEN

Katalogstruktur

Vi hoppas att du har en bra idé om att organisera förvaringen av böcker i

biblioteket och följaktligen proceduren för att söka efter den önskade boken med dess kod från

katalog. Överför din förståelse av detta till hur du lagrar filer

på disken och organisera åtkomst till den.

Access - proceduren för att upprätta kommunikation med minnet och en fil som finns i den

för att skriva och läsa data.

Namnet på den logiska enheten som visas före filnamnet i specifikationen,

anger den logiska enhet på vilken filen ska sökas. På samma disk

en katalog är organiserad där de fullständiga namnen på filerna, såväl som deras

egenskaper: datum och tid för skapandet;

volym (i byte); speciella attribut. Liknar bibliotekssystemet

katalogorganisation det fullständiga namnet på filen som är registrerad i katalogen,

kommer att fungera som ett chiffer med vilket operativsystemet hittar

platsen för filen på disken.

Katalog - en katalog med filer som anger deras plats på disken.

Det finns två katalogtillstånd - aktuell (aktiv) och passiv. FRÖKEN

DOS kommer ihåg den aktuella katalogen på varje logisk enhet.

Den aktuella (aktiva) katalogen är den katalog där användaren arbetar

produceras i aktuell maskintid.

Passiv katalog - en katalog med vilken det här ögonblicket ingen tid

MS DOS-operativsystemet antar en hierarkisk struktur

(Fig. 9.1) katalogorganisation. Varje disk har alltid

en enda huvudkatalog (rotkatalog). Han är på nivå 0

hierarkisk struktur och indikeras med symbolen "\". Rotkatalog

skapas vid formatering (initiering, märkning) av en disk, har

begränsad i storlek och kan inte raderas med DOS-verktyg. Till main

katalogen kan innehålla andra kataloger och filer som skapas av kommandon

operativsystem och kan tas bort med lämpliga kommandon.

Ris. 9.1. Hierarkisk katalogorganisationsstruktur

Överordnad katalog är en katalog som har underkataloger. Underkatalog

En katalog som ingår i en annan katalog.

Så alla kataloger som innehåller kataloger på lägre nivå kan

att å ena sidan vara föräldraskap mot dem, och å andra sidan,

underordnad katalogen på översta nivån. Som regel, om detta

inte orsakar förvirring, använd termen "katalog" för att betyda heller

underkatalog eller överordnad katalog beroende på sammanhanget.

Kataloger på diskar är organiserade som systemfiler. Den enda saken

undantaget är rotkatalogen, för vilken ett fast utrymme är tilldelat

disk. Kataloger kan nås som om de vore en vanlig fil.

Notera. Katalogstrukturen kan innehålla kataloger som inte är det

Namnen på underkataloger är desamma som reglerna för namngivning av filer (se.

underavsnitt 9.1). För formella skillnader från filer, vanligtvis underkataloger

tilldela endast namn, även om du kan lägga till en typ enligt samma regler som

och för filer.

Åtkomst till filinnehållet organiseras från huvudkatalogen, genom

en kedja av underordnade kataloger (underkataloger) på den i:e nivån. I katalogen

poster av både filer och kataloger kan lagras på vilken nivå som helst

lägre nivå. kallas tomma.

I fig. 9.2 visar den enklaste katalogstrukturen, där i huvudsak

katalog 0

endast poster på nivåer om filer i kataloger på lägre nivå lagras

existerar inte

I fig. Figur 9.3 visar den hierarkiska strukturen för katalogen, var i katalogerna

vilken nivå som helst lagrar poster om filer och kataloger på den lägre nivån. Dessutom

övergång till en katalog på lägre nivå kan bara organiseras

sekventiellt genom underordnade kataloger.

Ris. 9.2. Enklaste katalogstruktur utan kataloger

lägre nivå

Ris. 93,.. Typisk struktur katalog som består av kataloger nedan

nivå: när en katalog på lägre nivå anges, används tre nummer:

den första siffran anger nivånumret; den andra är serienumret på denna

katalog på denna nivå, den tredje anger på vilken nivå

hans namn är registrerat. Varje katalog har ett KAT-namn med index.

Till exempel är CAT342 namnet på en katalog på tredje nivå som är registrerad i

andra nivåns katalognummer 4

Du kan inte gå direkt från huvudkatalogen till en katalog, till exempel nivå 5.

Det är absolut nödvändigt att gå igenom alla tidigare kataloger på toppnivå.

Principen som beskrivs ovan för att organisera åtkomst till en fil via en katalog

är basen för filsystemet.

Filsystemet är den del av operativsystemet som hanterar platsen och

tillgång till filer och kataloger på disken.

Konceptet med en diskfilstruktur är nära besläktat med konceptet med ett filsystem.

med vilket vi menar hur de finns på disken: huvudkatalogen,

underkataloger, filer, operativsystem och vilka som är tilldelade för dem

volymer av sektorer, kluster, spår.

Regler för att bilda diskfilstrukturen. När du skapar en fil

diskstruktur följer operativsystemet MS DOS ett antal regler:

En fil eller katalog kan registreras med samma namn i

olika kataloger, men i samma katalog endast en gång;

Ordningen på filnamn och underkataloger i den överordnade katalogen

slumpmässig;

Filen kan delas upp i flera delar, för vilka

delar av diskutrymme av samma volym på olika spår och

sektorer.

Väg och inbjudan

Från fig. 9.1 - 9.3 kan du se att filen nås via katalogen

tack vare namnet som är registrerat i den den här filen. Om katalogen har

hierarkisk struktur, sedan organiserar operativsystemet åtkomst till filen

beroende på positionen för underkatalogen där namnet är registrerat

filen du letar efter.

Tillgången till filen kan organiseras enligt följande:

Om filnamnet är registrerat i den aktuella katalogen räcker det för

för att komma åt en fil, ange endast dess namn;

Om filnamnet är registrerat i en passiv katalog, då, medan i

aktuell katalog måste du ange sökvägen, dvs. kedja av underordnade

kataloger genom vilka filen ska nås.

Path är en kedja av underordnade kataloger som måste passeras längs

hierarkisk struktur till katalogen där den önskade filen är registrerad. På

När du anger en sökväg skrivs katalognamnen i ordning och separeras

separerade från varandra av symbolen \.

Användarinteraktion med operativsystemet utförs med

med hjälp kommandorad visas på skärmen. I början

Kommandoraden har alltid en prompt som slutar med

>. Uppmaningen kan visa: namnet på den aktuella enheten, namnet på den nuvarande

katalog, aktuell tid och datum, sökväg, avgränsningstecken.

Operativsystemets prompt är en indikation på informationsskärmen,

indikerar att operativsystemet är redo att mata in användarkommandon.

Exempel 9.8.

Den aktuella enheten är diskettenhet A.

den aktuella katalogen är huvudkatalogen, vilket indikeras av symbolen \.

C:\CAT1\CAT2

Den nuvarande disken är HDD C. Aktuell katalog -

katalog på andra nivån CAT2, inkluderad i katalogen på första nivån

CAT1, som i sin tur är registrerad i huvudsak

katalog.

Det finns tre alternativ för att organisera filåtkomstvägen, beroende på

platser för dess registrering:

Filen finns i den aktuella katalogen (ingen sökväg). När man organiserar

För att komma åt en fil behöver du bara ange dess fullständiga namn;

Filen finns i en passiv katalog på en av de lägre nivåerna,

underordnad den aktuella katalogen. När du organiserar åtkomst till en fil

du måste ange en sökväg som listar alla katalognamn

lägre nivå som ligger på den här sökvägen (inklusive katalogen där

denna fil är registrerad);

filen finns i en passiv katalog på en annan gren från

platsen för den aktuella katalogen i den hierarkiska strukturen. På

för att organisera åtkomst till filen måste du ange sökvägen som börjar med

huvudkatalog, dvs. börjar med tecknet \. Detta förklaras av det faktum att i

hierarkisk struktur, rörelse är endast möjlig vertikalt uppifrån -

Horisontella övergångar från katalog till katalog är inte tillåtna.B

Exemplen nedan illustrerar möjliga alternativ sätt.

Exempel 9.9.

Villkor: filen F1.TXT är registrerad i den aktuella katalogen på första nivån K1

hårddisk C. Därför visas inbjudan C:\K1 på skärmen

Förklaring: I det här fallet finns det ingen sökväg och det räcker för att komma åt filen

ange endast dess fullständiga namn F1.TXT

Exempel 9.10.

Villkor: filen F1.TXT är registrerad i katalogen på andra nivån K2 hård

enhet C. Den aktuella katalogen är K1. Därför visas en inbjudan på skärmen

Förklaring: i det här fallet börjar sökvägen från katalogen

K1 ner genom dess underordnade katalog K2. Därför innan

Det fullständiga filnamnet anger sökvägen från den aktuella K2-katalogen

Efter att ha blivit bekant med begreppet en väg, låt oss återgå till det som introducerades i underavsnittet. 9.1

konceptet med en filspecifikation. Det finns en förkortad filspecifikation och

den fullständiga filspecifikationen som sökvägen deltar i. I fig.

Figur 9.4 visar alternativ för regeln för att generera en filspecifikation.

Ris. 9.4. Specifikationsformat (valfri parameter specificerad)

Exempel 9.12. Kort form av filspecifikationen C:\KIT.BAS

Filen med BASIC-programmet KIT.BAS finns i huvudet

hårddiskkatalog.

Fullständig filspecifikation

C:\CAT1\CAT2\BOOC1.TXT

Textfilen BOOOK1.ТХТ är registrerad i katalogen för den andra

CAT2-nivå på hårddisk C.

Katalogposternas struktur

Nu måste du bekanta dig med strukturen för de poster som lagras i katalogen

med information om filer och underkataloger på lägre nivå.

En filpost i en katalog innehåller namnet och typen av filen, filstorleken i

bytes, skapelsedatum, skapelsetid och ett antal andra parametrar som krävs

operativsystem för att organisera åtkomst.

Posten för en underkatalog på lägre nivå i den överordnade katalogen innehåller den

namn, attribut, datum och tid för skapandet.

Låt oss överväga möjliga alternativ för innehållet i katalogen. 1:a alternativet. I katalogen

Endast poster om filer lagras (fig. 9.5). Innan filposterna

Ett meddelande om katalognamnet visas. I det här fallet är detta det viktigaste

diskettkatalog A. I slutet av katalogens innehåll visas ett meddelande om

antalet filer lagrade på disken och ledigt diskutrymme i

bytes Till exempel visar katalogen ovan följande meddelande:

4 fil(er) 359560 byte gratis

Antal filer på disken. Volym gratis

diskutrymme, byte2nd alternativ.

Katalogen lagrar endast poster om kataloger på lägre nivå (Fig. 9.6).

Ris. 9.7. Huvudkatalogen lagrar filer och underkataloger

I slutet av katalogen, som i föregående fall, kommer du att se en liknande

Ovannämnda post om mängden ledigt diskutrymme.

3:e alternativet: Katalogen lagrar poster av både filer och kataloger

lägre nivå (bild 9.7). Från denna struktur är det tydligt att i denna katalog

det finns 3 filer och 2 kataloger på lägre nivå BASIC och LEXICON. På disk

ledigt utrymme 2,6575 MB.

De tre som diskuterats ovan återspeglar innehållet i

huvudkatalog. Katalogstruktur, från nivå 1 och nedan,

identisk och skiljer sig från den huvudsakliga endast genom att före filposterna

och kataloger på lägre nivå placeras två poster med en ellips (Fig. 9.8).

Prickarna du ser i början betyder att innehållet tas fram på skärmen

underkatalog (katalog på första nivån) KNIGA, som innehåller två texter

SVET- och TON-filer.

|Katalog för C:\KNIGA | | |

| |11-12-90 |09:40 |

| |10-10-91 |08:30 |

|svet txt 55700 |04-04-90 |10:05 |

|ton txt 60300 |03-05-91 |11:20 |

|2 filer 912348 byte gratis | | |

|Fig. 9.8. Struktur för poster i en underkatalog |

1.2. Filsystem FAT.

Windows operativsystem används, utvecklade för

DOS FAT-filsystem, där det finns för varje DOS-partition och volym

bootsektorn, och varje DOS-partition innehåller två kopior av tabellen

filallokeringstabell (FAT).

FAT är en matris som anger sambandet

mellan partitionens filer och mappar och deras fysiska plats på hårddisken

Framför varje hårddiskpartition finns två sekventiellt placerade

kopior av FAT. Tycka om startsektorer, FAT ligger utanför

område på disken som är synligt för filsystemet.

När filerna skrivs till disk tar inte filerna nödvändigtvis plats,

motsvarande deras storlek. Vanligtvis är filer uppdelade i kluster

av en viss storlek, som kan vara spridd över hela sektionen.

Som ett resultat är FAT-tabellen inte en lista över filer och deras

platser, och en lista över sektionskluster och deras innehåll, och i slutet

FAT-tabellposter är 12-, 16- och 32-bitars

hexadecimala tal, vars storlek bestäms av FDISK-programmet, och

värdet genereras direkt av FORMAT-programmet.

Alla disketter och hårddiskar upp till 16 MB stora

FAT använder 12-bitars element. Tufft och flyttbara enheter har

storlek från 16 MB eller mer används vanligtvis 16-bitars element.

FAT-filsystemet användes i alla versioner av MS-DOS och i den första

två versioner av OS/2 (version 1.0 och 1.1). Varje logisk volym hade

eget FAT, som utförde två funktioner: innehöll information

distributioner för varje fil i volymen i form av en lista över modulassociationer

distributioner (kluster) och angav vilka distributionsmoduler som är gratis.

När FAT-bordet uppfanns var det en utmärkt lösning för

diskutrymmeshantering, främst på grund av disketter,

som den användes på var sällan större än några Mb.

FAT var tillräckligt litet för att finnas kvar i minnet permanent,

tillåts för mycket snabb slumpmässig åtkomst till vilken del som helst

vilken fil som helst.

När FAT applicerades på hårddiskar, hon blev för stor

för minnesresident och försämrad systemprestanda.

Dessutom eftersom information om ledigt diskutrymme

utrymmet var fördelat "över" ett stort antal FAT-sektorer,

det var opraktiskt vid tilldelning av filutrymme, och

Filfragmentering har visat sig vara ett hinder för hög effektivitet.

Dessutom används relativt stora kluster på hårda

diskar ledde till ett stort antal oanvända områden, sedan i

I genomsnitt var halva klustret bortkastat för varje fil.

I flera år har Microsoft och IBM försökt förlänga

livslängden för FAT-filsystemet på grund av borttagandet av volymstorleksbegränsningar,

förbättra distributionsstrategier, cachelagring av sökvägar och omlokalisering

tabeller och buffertar till utökat minne. Men de kan bara betraktas

som tillfälliga åtgärder eftersom filsystemet helt enkelt inte passade

stora direktåtkomstenheter.

§ 2 Filsystemet för operativsystemet MS-DOS.

Ett av begreppen i MS DOS-filsystemet är en logisk disk.

Logiska enheter:

DOS, varje logisk skiva är en separat magnetisk skiva. Varje logisk

disken har sitt eget unika namn. Som ett logiskt enhetsnamn

bokstäver i det engelska alfabetet från A till Ö (inklusive) används.

Kvantitet logiska enheter, alltså inte mer än 26.

Bokstäverna A och B är endast reserverade för de disketter som finns tillgängliga i IBM PC (

Börjar med bokstaven C, logiska enheter (partitioner) heter HDD (

Winchester).

Bilderna visar en bild av en logisk disk.

Om en given IBM PC bara har en FDD, hoppas bokstaven B över

Endast logiska enheter A och C kan vara systemenheter. Fil

logisk diskstruktur:

För att komma åt information på disken (som finns i en fil), behöver du

känna till den fysiska adressen för den första sektorn, (Nsurfaces+Ntracks+Nsectors),

det totala antalet kluster som upptas av denna fil, adressen till nästa

kluster, om filstorleken är större än storleken på ett kluster, etc. Allt

det är väldigt vagt, svårt och onödigt.

MS DOS räddar användaren från sådant arbete och gör det själv. För

ge tillgång till filer - MS DOS-filsystemet organiserar och

upprätthåller en specifik filstruktur på en logisk disk.

Filstrukturelement:

Starta sektor(sektor bootstrap, Boot sektor),

Dataområde (återstående ledigt diskutrymme)

Dessa element skapas av speciella program (i MS DOS-miljö) i processen

diskinitiering.

Startsektor (bootsektor, Bootsektor):

Här är informationen som krävs av MS DOS för att arbeta med disken:

OS ID (om disken är system),

Disksektorstorlek,

Antal sektorer i klustret,

Antal reservsektorer i början av skivan,

Antal FAT-kopior på disken (standard - två),

Antal objekt i katalogen,

Antal sektorer på disken,

Skivformatstyp,

Antal sektorer i FAT,

Antal sektorer per spår,

Antal ytor

OS-startblock,

Bakom startsektorn ligger FAT.

FAT (filallokeringstabell):

Diskdataområdet (se ovan) presenteras i MS DOS som en sekvens

numrerade kluster.

FAT är en uppsättning element som adresserar kluster i diskens dataområde.

Varje dataområdeskluster motsvarar ett FAT-element.

FAT-element fungerar som en kedja av länkar till filkluster i området

FAT är en oerhört viktig del av filstrukturen.Brott i FAT kan

leda till fullständig eller partiell förlust av information på hela den logiska disken.

Det är därför två kopior av FAT lagras på disken. Det finns speciella program

som övervakar statusen för FAT och korrigerar överträdelser.

Rotkatalog:

Detta är ett specifikt område på disken som skapades under initieringsprocessen.

(formatera) disken, som innehåller information om filer och kataloger,

lagras på disk.

Rotkatalogen finns alltid på en formaterad disk. På

Det finns alltid bara en rotkatalog på en disk. Rotstorlek

katalogen för en given disk är ett fast värde, så det maximala

antalet filer och andra (underordnade) kataloger "bifogade" till den

(Underkataloger) - strikt definierad.

Så, sammanfattande av allt ovan, kan vi avsluta MS-DOS - 16-

bitoperativsystem som körs i riktigt processorläge.

4 § Operativt filsystem Windows-system 95.

4.1. Bakgrund till skapandet av FAT 32.

På området persondatorer uppstod en kris 1987.

Funktioner i FAT-filsystemet, utvecklat av Microsoft under tio år

år innan för den fristående Disk Basic-tolken och senare

anpassade för DOS-operativsystemet var slut. FETT

var avsedd för hårddiskar med en kapacitet på högst 32 MB, och de nya hårddiskarna

större kapacitet visade sig vara helt värdelös för PC-användare.

Vissa oberoende leverantörer har erbjudit sina egna lösningar

detta problem, men först med tillkomsten av DOS 4.0 övervanns denna kris -

ett tag.

Betydande förändringar av filsystemstrukturen i DOS 4.0

tillät operativsystemet att arbeta med diskar med en kapacitet på upp till 128 MB; Med

Efterföljande mindre tillägg höjde denna gräns till

2 GB. På den tiden verkade det som att denna mängd minne översteg någon

tänkbara behov. Men om persondatorernas historia är något att gå efter

och lärde, då just att kapaciteten ”överstiger alla tänkbara

behov", blir mycket snabbt "nästan otillräcklig för seriösa

fungerar." Hårddiskar finns för närvarande kommersiellt tillgängliga

kapacitet är vanligtvis 2,5 GB och högre, och ibland mycket hög och

Taket på 2 GB som befriade oss från begränsningar har förvandlats till ännu ett

ett hinder att övervinna.

4.2. Beskrivning av FAT 32.

Microsoft har utvecklat ett nytt tillägg för Windows 95-system.

FAT - FAT32-system, utan några högljudda uttalanden som anges i

OEM Service Pack 2.

FAT32-systemet installeras endast i nya datorer och räknas inte med

få det när du går till ny version Windows 95, även om det hävdar

Microsoft kommer detta tillägg att bli en del av huvudpaketet för

Windows uppgraderingar

4.2.1. Diskområden

Detta filsystem tillhandahåller ett antal speciella områden på

disk tilldelad för att organisera diskutrymme under dess

formatering - starthuvudrekord, diskpartitionstabell, post

nedladdningar, filallokeringstabell (från vilken FAT-systemet fick sin

namn) och rotkatalogen.

fysisk nivå diskutrymme delas upp i 512-byte

områden som kallas sektorer. FAT-systemet allokerar utrymme för filer

block, som består av ett heltal av sektorer och kallas kluster.

Antalet sektorer i ett kluster måste vara en multipel av en potens av två. Hos Microsoft

dessa kluster kallas minnesallokeringsenheter, och in

SCANDISK-rapporten indikerar deras storlek, till exempel "16 384 byte vardera

minnesallokeringsenhet."

4.2.2. FET kedja

FAT är en databas som länkar ihop diskkluster

filutrymmen. Denna databas tillhandahåller varje kluster

endast ett element. De två första elementen innehåller information om

FAT system. Det tredje och efterföljande elementet matchas

kluster av diskutrymme, med början med det första tilldelade klustret

för filer. FAT-element kan innehålla flera speciella värden,

indikerar att

Klustret är gratis, d.v.s. används inte av någon fil;

Klustret innehåller en eller flera sektorer med fysiska defekter och

bör inte användas;

Detta kluster är det sista klustret i filen.

För alla element som används av filen, men inte det sista klustret

FAT innehåller numret på nästa kluster som upptas av filen.

Varje katalog - oavsett rot eller underkatalog - också

är en databas. I DOS-katalogen för varje fil

det finns ett masterrekord (B Windows-miljö 95 för långa namn

filer, ytterligare poster har lagts in). Till skillnad från FAT, där varje element

består av ett enda fält, poster för en fil i en katalog består av

flera fält. Vissa fält - namn, tillägg, storlek, datum och tid -

kan visas på skärmen med kommandot DIR. Men FAT-systemet ger

fältet som inte visas av DIR-kommandot är det fält som numreras först

kluster tilldelat för filen.

När ett program skickar en begäran till operativsystemet, med

begäran att förse den med innehållet i någon fil, ser OS igenom

en katalogpost för att hitta det första klustret i den filen. Sen hon

åtkomst till FAT-posten för ett givet kluster för att hitta nästa

kluster i kedjan. Upprepa denna process tills den sista detekteras

filkluster, bestämmer OS exakt vilka kluster som hör till detta

fil och i vilken ordning. På så sätt kan systemet ge

programmera någon del av filen den begär. Det här sättet att organisera

Filen kallas en FAT-kedja.

I FAT-systemet tilldelas filer alltid ett heltal av kluster. Vid 1,2-

GB-hårddisk med 32 KB-kluster i katalogen kan anges,

vilken storlek textfil som innehåller orden "hej, världen" är

endast 12 byte, men i själva verket tar den här filen upp 32 KB diskutrymme

Plats. Den oanvända delen av klustret kallas för bortkastat utrymme

(slak). I små filer kan nästan hela klustret gå förlorat

plats, och i genomsnitt är förlusterna hälften så stora som klustret.

På en 850 MB hårddisk med 16 KB-kluster i medelstorlek

filer cirka 50 KB cirka 16 % av det diskutrymme som tilldelats för filer

utrymme kommer att gå förlorat till oanvända men allokerade filer

Ett sätt att frigöra diskutrymme är att använda

diskkomprimeringsprogram som DriveSpace, som markerar "förlorad"

space" för användning av andra filer.

4.2.3. Andra ändringar i FAT32

För att säkerställa förmågan att arbeta med ett ökat antal kluster, i

katalogposter för varje fil måste tilldela 4 byte för initialen

filkluster (istället för 2 byte i FAT16-systemet). Traditionellt sett är varje inträde i

katalogen består av 32 byte (fig. 1). I mitten av denna post finns 10 byte

används (byte 12 till 21), som Microsoft har reserverat för

sina egna behov i framtiden. Två av dem är nu tilldelade som

ytterligare byte krävs för att indikera startklustret i systemet

Operativsystemet har alltid sörjt för närvaron av två

FAT-instanser, men bara en av dem användes. Med övergången till FAT32

operativsystemet kan fungera med vilken som helst av dessa kopior. Annan

Förändringen är att rotkatalogen, som tidigare hade en fast

storlek och strikt definierat diskutrymme kan du nu fritt

växa efter behov, som en underkatalog. Finns inte nu

begränsningar för antalet poster i rotkatalogen. Detta är särskilt viktigt

eftersom det finns flera poster för varje långt filnamn

katalog.

Kombination av Roaming Root och Feature

att använda båda kopiorna av FAT är goda förutsättningar för obehindrat

dynamisk storleksändring av diskpartitioner, till exempel reducering av en partition

för att frigöra utrymme för ett annat operativsystem. Den här nya

tillvägagångssätt är mindre farligt än de som används i tredjepartsprogram

för att ändra diskpartitioner när du arbetar med FAT16.

Av allt ovanstående kan vi dra slutsatsen:

MS-DOS var ett rent 16-bitars operativsystem och kördes in

riktigt processorläge. I Windows-versioner 3.1 del av koden var 16-

bitar, och vissa är 32-bitars. Windows 3.0 stödde real mode

processordrift, när man utvecklade version 3.1 beslutade man att överge den

Stöd.

Windows 95 är ett 32-bitars operativsystem som

bitkod för kompatibilitet med MS-DOS-läge. Windows 95 32-bitars

bitkod.

§ 5 Filsystemet för operativsystemet Windows NT.

5.1. Kort beskrivning Windows NT operativsystem.

För närvarande utvecklas den globala datorindustrin mycket

Systemets prestanda ökar, och därför

Möjligheten att bearbeta stora datamängder ökar.

Operativsystem av MS-DOS-klassen klarar inte längre av detta

dataflöde och kan inte fullt ut använda moderna resurser

datorer. Därför i Nyligen det finns en övergång till mer kraftfull och

de mest avancerade operativsystemen i UNIX-klassen, ett exempel på det är

är Windows NT släppt av Microsoft Corporation

När användaren ser Microsofts operativsystem för första gången

Windows NT, en tydlig extern likhet med

favoritgränssnittet för Windows 3.+-systemet, men detta är en synlig likhet

är endast mindre del av Windows N.T.

Windows NT är ett 32-bitars operativsystem med

prioriterad multitasking. Som grundläggande komponenter

Operativsystemet innehåller säkerhetsfunktioner och

utvecklad nättjänst.

Windows NT ger också kompatibilitet med många andra

operativsystem och filsystem, samt nätverk.

Som visas i följande figur är Windows NT

ett modulärt (mer avancerat än ett monolitiskt) operativsystem som

består av separata sammankopplade relativt enkla moduler.

Huvudmodulerna i Windows NT är (listade i ordning

från den nedre nivån av arkitekturen till den övre): nivå

hårdvaruabstraktioner HAL (Hardware Abstraction Layer), kärna (Kernel),

exekveringssystem (Executive), skyddade delsystem (skyddade

delsystem) och miljödelsystem.

Modulär struktur för Windows NT

5.2. Windows NT filsystem.

När Windows NT först kom ut, inkluderade det

stöd för tre filsystem. Detta är filallokeringstabellen (FAT),

ger kompatibilitet med MS-DOS, ett filsystem med ökad

prestanda (HPFS), ger kompatibilitet med LAN Manager, och

ett nytt filsystem som kallas Emerging Technologies File System

NTFS hade ett antal fördelar jämfört med de som används på

den punkten för de flesta filservrar är filsystem.

För att säkerställa dataintegritet har NTFS en transaktionslogg.

Detta tillvägagångssätt utesluter dock inte möjligheten till informationsförlust,

avsevärt ökar sannolikheten att tillgång till filsystem

kommer att vara möjligt även om systemets integritet äventyras

server. Detta blir möjligt genom att använda en transaktionslogg för att

spåra ofullständiga försök att skriva till disk under efterföljande uppstart

Windows NT. Transaktionsloggen används också för att kontrollera disken efter

förekomst av fel istället för att kontrollera varje fil, vid användning

filallokeringstabeller.

En av de främsta fördelarna med NTFS är säkerhet. NTFS

ger möjlighet att göra åtkomstkontrollposter (Access Control

Entries, ACE) till Access Control List (ACL). ESS

innehåller ett grupp- eller användarnamn och en åtkomsttoken,

som kan användas för att begränsa åtkomsten till vissa

katalog eller fil. Denna åtkomst kan innefatta möjligheten att läsa,

spela in, ta bort, köra och till och med äga filer.

Å andra sidan är en ACL en behållare som innehåller en

eller fler ACE-poster. Detta gör att du kan begränsa åtkomsten till vissa

användare eller användargrupper till specifika kataloger eller filer i

Dessutom stöder NTFS att arbeta med långa namn som har

upp till 255 tecken långa och innehållande stora och små bokstäver i valfri

sekvenser. En av de viktigaste egenskaperna hos NTFS är

automatiskt skapande av motsvarande namn som är kompatibla med MS-DOS.

NTFS har också en komprimeringsfunktion, som först dök upp i NT-versionen

3,51. Det ger möjlighet att komprimera vilken fil, katalog eller disk som helst

NTFS. Till skillnad från MS-DOS-komprimeringsprogram som skapar en virtuell disk,

att se ut som en dold fil och komprimera all data på den här disken,

Windows NT använder ytterligare ett lager av filundersystemet för komprimering

och dekomprimera de nödvändiga filerna utan att skapa virtuell disk. Detta

visar sig vara användbart när du komprimerar antingen en specifik del av disken (till exempel,

användarkatalog), eller filer av en specifik typ

(till exempel grafikfiler). Den enda nackdelen med NTFS-komprimering är

är låg, i jämförelse med MS-DOS-komprimeringsscheman, nivå

kompression. Men NTFS är mer pålitligt och

produktivitet.

Så från allt ovan kan vi dra slutsatsen:

För att vara kompatibel med olika operativsystem, Windows

NT innehåller filsystemet FAT 32. Dessutom innehåller Windows NT sitt eget

sitt eget NTFS-filsystem, som inte är kompatibelt med FAT 16. Detta

filsystemet har ett antal fördelar jämfört med FAT, liksom

har högre tillförlitlighet och prestanda.

Slutsats.

MS-DOS - 16-bitars operativsystem, körs på riktigt

processorläge. I versioner av Windows 3.1 är en del av koden 16-bitars och en del

32-bitars. Windows 3.0 stödde verkligt processorläge,

Under utvecklingen av version 3.1 beslutades det att överge sitt stöd.

Windows 95 är ett 32-bitars operativsystem som

fungerar endast i skyddat processorläge. Kärna inklusive ledning

minne och processutsändning, innehåller endast 32-bitars kod. Detta

minskar kostnaderna och påskyndar arbetet. Endast vissa moduler har 16-

bitkod för kompatibilitet med MS-DOS-läge. På Windows 95 32-bitars

koden används när det är möjligt, vilket gör att vi kan säkerställa

ökad tillförlitlighet och feltolerans hos systemet. Utöver detta, för

kompatibilitet med äldre applikationer och drivrutiner används och 16-

bitkod.

Windows NT är inte en vidareutveckling av tidigare

existerande produkter. Dess arkitektur skapades från grunden, med hänsyn tagen

krav på ett modernt operativsystem. Strävan

säkerställa kompatibilitet för det nya operativsystemet,

Windows NT-utvecklare behöll det välbekanta Windows-gränssnittet och implementerade

stöd för befintliga filsystem (som FAT) och diverse

applikationer (skrivna för MS - Dos, Windows 3.x). Utvecklarna också

ingår i Windows NT-verktyg för att arbeta med olika nätverk

betyder att.

Tillförlitlighet och robusthet

tillhandahålla arkitektoniska funktioner som skyddar applikationen

program från att skadas av varandra och av operativsystemet. Windows NT

använder feltolerant strukturerad undantagshantering på

alla arkitektoniska nivåer, vilket inkluderar återställningsbar fil

NTFS-system och ger skydd med hjälp av det inbyggda systemet

säkerhet och avancerade minneshanteringstekniker.

Användare kommer åt filer med symboliska namn. Men mänskligt minne begränsar antalet objektnamn som en användare kan referera till med namn. Den hierarkiska organisationen av namnutrymmet tillåter oss att avsevärt utöka dessa gränser. Det är därför de flesta filsystem har en hierarkisk struktur, där nivåer skapas genom att tillåta en katalog på lägre nivå att finnas i en katalog på högre nivå (Figur 19).

Ris. 19. Filsystemhierarki:

a – organisation på en nivå; b – träd; i – nätverk

Grafen som beskriver kataloghierarkin kan vara ett träd eller ett nätverk. Kataloger bildar ett träd om en fil tillåts inkluderas i endast en katalog (fig. 19, b), och ett nätverk - om filen kan inkluderas i flera kataloger samtidigt (fig. 19, c). Till exempel i MS-DOS och Windows bildar kataloger en trädstruktur, medan de i UNIX bildar en nätverksstruktur. I en trädstruktur är varje fil ett löv. Katalogen på översta nivån kallas rotkatalogen eller roten.

Med denna organisation är användaren befriad från att komma ihåg namnen på alla filer; han behöver bara ha en grov uppfattning om vilken grupp en viss fil kan tilldelas för att hitta den genom att sekventiellt bläddra i kataloger. Den hierarkiska strukturen är bekväm för fleranvändararbete: varje användare med sina filer är lokaliserad i sin egen katalog eller underträd av kataloger, och samtidigt är alla filer i systemet logiskt anslutna.

Ett specialfall av en hierarkisk struktur är en organisation på en nivå, när alla filer ingår i en katalog (Fig. 19, a).

Filnamn

Alla filtyper har symboliska namn. Hierarkiskt organiserade filsystem använder vanligtvis tre typer av filnamn: enkla, sammansatta och relativa.

Ett enkelt eller kort symboliskt namn identifierar en fil i en enda katalog. Enkla namn tilldelas filer av användare och programmerare, och de måste ta hänsyn till OS-begränsningar för både teckenintervallet och längden på namnet. Fram till relativt nyligen var dessa gränser mycket snäva. I FAT-filsystemet var längden på namn begränsad till schema 8.3 (8 tecken - själva namnet, 3 tecken - namntillägget), och i s5-filsystemet, som stöds av många versioner av UNIX OS, en enkla symboliska namn får inte innehålla mer än 14 tecken. Det är dock mycket bekvämare för användaren att arbeta med långa namn eftersom de låter dig ge filerna lätta att komma ihåg namn som tydligt indikerar vad som finns i filen. Därför tenderar moderna filsystem, såväl som förbättrade versioner av redan existerande filsystem, att stödja långa, enkla symboliska filnamn. Till exempel, på filsystemen NTFS och FAT32 som ingår i operativsystemet Windows NT, kan ett filnamn innehålla upp till 255 tecken.

Exempel på enkla fil- och katalognamn:

Tillägg till CD 254L på ryska.doc

installerbar filsystemhanterare.doc

I hierarkiska filsystem tillåts olika filer ha samma enkla symboliska namn, förutsatt att de tillhör olika kataloger. Det vill säga, "många filer - ett enkelt namn"-schemat fungerar här. För att unikt identifiera en fil i sådana system används ett så kallat fullständigt namn.

Det fullständiga namnet är en kedja av enkla symboliska namn på alla kataloger genom vilka sökvägen från roten till den givna filen går. Således är det fullständiga namnet ett sammansatt namn, där enkla namn separeras från varandra av separatorn som accepteras i operativsystemet. Ofta används ett snedstreck framåt eller bakåt som avgränsare, och det är vanligt att inte ange namnet på rotkatalogen. I fig. 19, b två filer har det enkla namnet main.exe, men deras sammansatta namn /depart/main.exe och /user/anna/main exe är olika.

I ett trädfilsystem finns det en en-till-en-överensstämmelse mellan en fil och dess fullständiga namn "en fil – ett fullständigt namn". I filsystem som har en nätverksstruktur kan en fil inkluderas i flera kataloger, vilket innebär att den kan ha flera fullständiga namn, här är korrespondensen "en fil - många fullständiga namn" giltig. I båda fallen identifieras filen unikt med sitt fullständiga namn.

En fil kan också identifieras med ett relativt namn. Det relativa filnamnet bestäms genom konceptet "nuvarande katalog". För varje användare, vid varje given tidpunkt, är en av filsystemkatalogerna den aktuella katalogen, och denna katalog väljs av användaren själv på ett OS-kommando. Filsystemet fångar namnet på den aktuella katalogen så att det sedan kan använda det som ett komplement till relativa namn för att bilda ett fullständigt kvalificerat filnamn. När man använder relativa namn identifierar användaren en fil genom kedjan av katalognamn genom vilken rutten från den aktuella katalogen till den givna filen går. Till exempel, om den aktuella katalogen är /user, då är det relativa filnamnet /user/anna/main.exe anna/main.exe.

Vissa operativsystem låter dig tilldela flera enkla namn till samma fil, vilket kan tolkas som alias. I detta fall, precis som i ett system med nätverksstruktur, upprättas korrespondensen "en fil – många fullständiga namn", eftersom varje enkelt filnamn motsvarar minst ett fullständigt namn.

Och även om det fullständiga namnet unikt identifierar filen, är det lättare för operativsystemet att arbeta med filen om det finns en en-till-en-överensstämmelse mellan filerna och deras namn. För detta ändamål tilldelar den ett unikt namn till filen, så att förhållandet "en fil - ett unikt namn" är giltigt. Det unika namnet finns tillsammans med ett eller flera symboliska namn som tilldelats filen av användare eller applikationer. Det unika namnet är en numerisk identifierare och är endast avsett för operativsystemet. Ett exempel på ett sådant unikt filnamn är inodnumret i UNIX-system.

Montering

I allmänhet kan ett datorsystem ha flera diskenheter. Även en vanlig persondator har vanligtvis en hårddisk, en diskettenhet och en CD-ROM-enhet. Kraftfulla datorer är vanligtvis utrustade med stor mängd diskenheter på vilka diskpaket är installerade. Dessutom kan även en fysisk enhet, som använder operativsystemverktyg, representeras som flera logiska enheter, särskilt genom att dela upp diskutrymmet i partitioner. Frågan uppstår: hur organiserar man fillagring i ett system med flera enheter? externt minne?

Den första lösningen är att varje enhet är värd för ett fristående filsystem, det vill säga filerna som finns på den här enheten beskrivs av ett katalogträd som inte på något sätt är kopplat till katalogträden på andra enheter. I det här fallet, för att unikt identifiera filen, måste användaren ange den logiska enhetsidentifieraren tillsammans med det sammansatta symboliska filnamnet. Ett exempel på en sådan autonom existens av filsystem är MS-DOS-operativsystemet, där det fullständiga filnamnet inkluderar bokstavsidentifieraren för den logiska enheten. Så när användaren kommer åt en fil som finns på enhet A måste användaren ange namnet på denna enhet: A:\privat\letter\uni\let1.doc.

Ett annat alternativ är att organisera fillagring där användaren ges möjlighet att kombinera filsystem som finns på olika enheter till ett enda filsystem, beskrivet av ett enda katalogträd. Denna operation kallas montering. Låt oss titta på hur denna operation utförs med UNIX OS som ett exempel.

Bland alla logiska diskenheter som finns tillgängliga i systemet särskiljer operativsystemet en enhet, kallad system ett. Låt det finnas två filsystem på olika logiska enheter (Fig. 20), och en av enheterna är systemenheten.

Filsystemet finns på systemdisk, är tilldelad root. För att länka filhierarkier i rotfilsystemet väljs en befintlig katalog, i detta exempel man-katalogen. När monteringen är klar blir den valda man-katalogen rotkatalogen för det andra filsystemet. Genom denna katalog kopplas det monterade filsystemet som ett underträd till det allmänna trädet (fig. 21).

Ris. 20. Två filsystem före montering

Ris. 21. Delat filsystem efter montering

När ett delat filsystem väl har monterats finns det ingen logisk skillnad för användaren mellan rot- och monterade filsystem, i synnerhet görs filnamn på samma sätt som om det hade varit ett enda filsystem till att börja med.

Filattribut

Begreppet "fil" inkluderar inte bara data och namn som lagras, utan också dess attribut. Filattribut är information som beskriver egenskaperna hos en fil. Exempel på möjliga filattribut:

 filtyp (vanlig fil, katalog, specialfil, etc.);

 filägare;

 skapare av filer;

 lösenord för att komma åt filen;

 information om tillåtna filåtkomstoperationer;

 tider för skapande, senaste åtkomst och sista ändring;

 aktuell filstorlek;

maximal storlek fil;

 "skrivskyddad"-tecken;

 "dold fil"-tecken;

 tecken " systemfil”;

 signera "arkivfil";

 "binary/character"-attribut;

 "temporary" attribut (ta bort efter att processen är klar);

 blockerande tecken;

 längden på posten i filen;

 pekare till nyckelfältet i posten;

 nyckellängd.

Uppsättningen av filattribut bestäms av filsystemets särdrag: i filsystem olika typer Olika uppsättningar av attribut kan användas för att karakterisera filer. Till exempel, på filsystem som stöder platta filer, finns det inget behov av att använda de tre sista attributen i listan som är relaterade till filstrukturering. I ett enanvändaroperativsystem kommer uppsättningen attribut att sakna egenskaper som är relevanta för användare och säkerhet, såsom ägaren till filen, skaparen av filen, lösenordet för åtkomst till filen, information om behörig åtkomst till filen.

Användaren kan komma åt attribut med hjälp av de faciliteter som filsystemet tillhandahåller för detta ändamål. Vanligtvis kan du läsa värdena för alla attribut, men bara ändra några. En användare kan till exempel ändra behörigheterna för en fil (förutsatt att de har de nödvändiga behörigheterna för att göra det), men de kan inte ändra skapandets datum eller nuvarande storlek på filen.

Filattributvärden kan finnas direkt i kataloger, vilket görs i MS-DOS-filsystemet (Fig. 22, a). Figuren visar strukturen för en katalogpost som innehåller ett enkelt symboliskt namn och filattribut. Här anger bokstäverna filens egenskaper: R - skrivskyddad, A - arkiverad, H - dold, S - system.

Ris. 22. Katalogstruktur:

a – MS-DOS katalogpoststruktur (32 byte); b – UNIX OS-katalogpoststruktur

Ett annat alternativ är att placera attribut i speciella tabeller, när katalogerna endast innehåller länkar till dessa tabeller. Detta tillvägagångssätt implementeras till exempel i ufs-filsystemet i UNIX OS. I detta filsystem är katalogstrukturen mycket enkel. En post om varje fil innehåller ett kort symboliskt filnamn och en pekare till filindexbeskrivningen, detta är namnet i ufs för tabellen där filattributvärdena är koncentrerade (fig. 22, b).

I båda versionerna tillhandahåller kataloger en länk mellan filnamnen och själva filerna. Men metoden att separera filnamnet från dess attribut gör systemet mer flexibelt. Till exempel kan en fil enkelt inkluderas i flera kataloger samtidigt. Poster för denna fil i olika kataloger kan ha olika enkla namn, men länkfältet kommer att ha samma inodnummer.

Artiklar att läsa:

Hierarkisk klustring | Stanford University

Ett objekt med variabel längd som kallas fil.

Arkiv -är en namngiven sekvens av byte av godtycklig längd. Eftersom en fil kan ha noll längd, innebär att skapa en fil att ge den ett namn och registrera den i filsystemet - detta är en av OS-funktionerna.

Vanligtvis i separat fil lagra data som tillhör samma typ. I det här fallet avgör datatypen filtyp.

Eftersom det inte finns någon storleksbegränsning i fildefinitionen kan man tänka sig en fil som har 0 byte (tom fil), och en fil med valfritt antal byte.

När man definierar en fil ägnas särskild uppmärksamhet åt namnet. Den bär faktiskt adressdata, utan vilken data som lagras i filen inte kommer att bli information på grund av bristen på en metod för att komma åt den. Förutom adresseringsrelaterade funktioner kan ett filnamn också lagra information om vilken typ av data som finns i det. Detta är viktigt för automatiska verktyg för att arbeta med data, för baserat på filnamnet (eller snarare dess tillägg) kan de automatiskt bestämma en adekvat metod för att extrahera information från filen.

Filstruktur - hierarkisk struktur där operativsystemet visar filer och kataloger (mappar).

Fungerar som toppen av strukturen operatörens namn, där filerna sparas. Därefter grupperas filerna i kataloger (mappar), inom vilken kan skapas kapslade kataloger

Namn på externa lagringsmedia. Diskarna som information lagras på på datorn har sina egna namn - varje disk heter en bokstav i det latinska alfabetet, följt av ett kolon. Så, disketter är alltid tilldelade bokstäver A: Och I:. De logiska enheterna på hårddisken namnges som börjar med bokstaven MED:. Alla logiska enhetsnamn följs av CD-enhetsnamn. Till exempel installerat: en diskettenhet, en hårddisk uppdelad i 3 logiska enheter och en CD-enhet. Identifiera bokstäverna för alla lagringsmedier. A:- diskettenhet; MED:, D:, E:- logiska enheter på hårddisken; F:- CD-enhet.

Logisk enhet eller volym(Engelsk) volym eller engelska dela) - en del av datorns långtidsminne, betraktad som en helhet för enkel användning. Termen "logisk disk" används i motsats till "fysisk disk", som hänvisar till minnet på ett specifikt diskmedium.

För operativsystemet spelar det ingen roll var data finns - på laserskiva, på en hårddiskpartition eller på en flashenhet. För att förena de representerade områdena i långtidsminnet introduceras konceptet med en logisk disk.

Utöver den lagrade informationen innehåller volymen en beskrivning av filsystemet - som regel är detta en tabell som listar alla filer och deras attribut (File Allocation Table, FAT). Tabellen bestämmer i synnerhet i vilken katalog (mapp) en viss fil finns. Tack vare detta, när en fil flyttas från en mapp till en annan inom samma volym, överförs inte data från en del av den fysiska disken till en annan, utan ändrar helt enkelt posten i filallokeringstabellen. Om en fil överförs från en logisk enhet till en annan (även om båda logiska enheterna finns på samma fysiska enhet), kommer fysisk dataöverföring nödvändigtvis att ske (kopiering med ytterligare radering av originalet om det lyckas).

Av samma anledning påverkar inte formatering och defragmentering av varje logisk enhet de andra.

Katalog (mapp) - disk utrymme (speciell systemfil) som lagrar tjänstinformation om filer (namn, filnamnstillägg, skapandedatum, storlek, etc.). Kataloger på lägre nivåer är kapslade i kataloger på högre nivåer och är till för dem kapslade. Den översta katalogen (superkatalogen) i förhållande till kataloger på lägre nivå kallas den överordnade katalogen. Den översta nivån av kapsling av den hierarkiska strukturen är rotkatalogen disk (Fig. 1). Katalogen som användaren för närvarande arbetar med anropas nuvarande.

Reglerna för att namnge en katalog skiljer sig inte från reglerna för att namnge en fil, även om det inte är vanligt att ange namntillägg för kataloger. När du skriver en filåtkomstväg genom ett system av underkataloger, separeras alla mellanliggande kataloger med en specifik symbol. Många operativsystem använder "\" (omvänt snedstreck) som detta tecken.

Kravet på ett unikt filnamn är uppenbart - utan detta är det omöjligt att garantera entydig tillgång till data. Med medel datateknik Kravet på unika namn säkerställs automatiskt - varken användaren eller automatiseringen kan skapa en fil med ett namn som är identiskt med ett befintligt.

När en fil används som inte finns i den aktuella katalogen måste programmet som kommer åt filen ange exakt var filen finns. Detta görs genom att ange sökvägen till filen.

Sökvägen till filen- detta är namnet på mediet (disken) och en sekvens av katalognamn, åtskilda av tecknet "\" i Windows OS (tecknet "/" används i UNIX-rad OS). Denna sökväg anger vägen till katalogen där den önskade filen finns.

Det finns två olika metoder som används för att ange filsökvägen. I det första fallet ges varje fil absolut sökvägsnamn (fullständigt filnamn), som består av namnen på alla kataloger från roten till den som innehåller filen, och namnet på själva filen. Till exempel stigen C:\Abby\Doc\otchet.doc betyder att rotkatalogen på disken MED: innehåller en katalog Abby, som i sin tur innehåller en underkatalog Dok var filen finns rapport.doc. Absoluta sökvägsnamn börjar alltid med medianamnet och rotkatalogen och är unika. Gäller också relativ sökvägsnamn. Det används tillsammans med konceptet aktuell katalog. Användaren kan ange en av katalogerna som den aktuella arbetskatalogen. I det här fallet anses alla sökvägsnamn som inte börjar med ett avgränsningstecken vara relativa och räknas i förhållande till den aktuella katalogen. Till exempel om den aktuella katalogen är C:\Abby, sedan till filen med absolut sökväg C:\Abby\ kan kontaktas som Doc\otchet.doc.

På grund av det faktum att filstrukturen på en dator kan vara betydande, sök efter de nödvändiga dokumenten genom att helt enkelt navigera igenom filstruktur inte alltid bekvämt. Man brukar tro att varje datoranvändare bör känna till (och komma ihåg) strukturen för de mappar där han lagrar dokument. Det finns dock tillfällen då dokument sparas utanför denna struktur. Till exempel sparar många applikationer dokument i standardmappar om användaren har glömt att uttryckligen ange var dokumentet ska sparas. Denna standardmapp kan vara den mapp som senast sparades, mappen där själva applikationen finns, någon form av tjänstemapp, till exempel \ Mina dokument och så vidare. I liknande fall Dokumentfiler kan "försvinna" i massan av annan data.

Behovet av att söka efter filer uppstår särskilt ofta under installationsarbetet. Ett typiskt fall är när du, på jakt efter källan till okontrollerade ändringar i operativsystemet, behöver hitta alla filer som nyligen har ändrats. Med hjälp av det automatisk sökning filer används också i stor utsträckning av specialister som installerar datorsystem - det är svårt för dem att navigera i filstrukturen för "alien" personlig dator, och sök nödvändiga filer genom att navigera är inte alltid produktivt för dem.

Primärt sökverktyg Windows XP starta från huvudmenyn med kommandot Start > Sök > Filer och mappar. Ett annat startalternativ är inte mindre bekvämt - från vilket mappfönster som helst (Visa > Utforskarfält > Sök > Filer och mappar eller nyckel F3).

Kontrollerna på sökpanelen låter dig lokalisera sökområdet baserat på tillgänglig information om filnamn och adress. Jokertecken är tillåtna när du anger ett filnamn «*» Och «?» . Symbol «*» ersätter valfritt antal godtyckliga tecken och tecknet «?» ersätter ett tecken. Så, till exempel, söka efter en fil med namnet *.Text kommer att sluta med att alla filer har ett namntillägg visas. Text, och resultatet av att söka efter filer med namnet *.??t kommer att vara en lista över alla filer med namntillägg. txt, .bat, .dat och så vidare.

När du söker efter filer med "långa" namn, bör du tänka på att om det "långa" namnet innehåller mellanslag (och detta är acceptabelt), då när du skapar en sökuppgift, bör ett sådant namn omges av citattecken, till exempel: "Aktuellt arbete.doc".

Sökfältet har ytterligare dolda kontroller. De visas när du klickar på den expanderande nedåtpilen.

· Fråga När gjordes de senaste ändringarna? låter dig begränsa sökomfånget efter det datum då filen skapades, senast ändrades eller öppnades.

· Fråga Vad är filstorleken? låter dig begränsa din sökning till filer av en viss storlek.

· Paragraf Extra tillval låter dig ange filtyp, tillåt visning dolda filer och mappar, samt ställ in några andra sökparametrar.

I de fall där ett oformaterat textdokument söks är det möjligt att söka inte bara på filattribut, utan också på dess innehåll. Önskad text kan skrivas in i fältet Ett ord eller en fras i en fil.

Att söka efter ett dokument baserat på ett textfragment ger inga resultat om det är ett dokument som har formatering, eftersom formateringskoderna bryter mot den naturliga sekvensen av textteckenkoder. I dessa fall kan du ibland använda sökverktyget som följer med programmet som formaterar dokumenten.

19.Datakomprimering och filarkivering.

Ett utmärkande drag för de flesta "klassiska" datatyper som folk traditionellt arbetar med är en viss redundans. Graden av redundans beror på typen av data. Dessutom beror graden av dataredundans på vilket kodningssystem som används. Så vi kan till exempel säga att kodning textinformation med hjälp av det ryska språket (med det ryska alfabetet) ger i genomsnitt 20-30% mer redundans än att koda adekvat information med hjälp av det engelska språket.
Redundans spelar också en viktig roll vid informationsbehandling. Men när det gäller att inte bearbeta, utan att lagra färdiga dokument eller sända dem, kan redundansen reduceras, vilket ger effekten av datakomprimering.
Om tillämpas på färdiga dokument, ersätts termen datakomprimering ofta med termen dataarkivering, och programvara De som utför dessa operationer kallas arkiverare.
Beroende på objektet där data som komprimeras finns finns det:
- komprimering (arkivering) av filer;
- komprimering (arkivering) av mappar;
- skivkomprimering.
Om datainnehållet ändras under datakomprimering är komprimeringsmetoden oåterkallelig och när data återställs från en komprimerad fil återställs inte den ursprungliga sekvensen helt. Sådana metoder kallas även förlustkontrollerade kompressionsmetoder. De är endast tillämpliga för de typer av data för vilka den formella förlusten av en del av innehållet inte leder till en betydande minskning av konsumentegenskaper. Först och främst gäller det multimediadata: videosekvenser, musikinspelningar, ljudinspelningar och ritningar. Förlustkompressionsmetoder ger vanligtvis mycket högre kompressionsförhållanden än reversibla metoder, men de kan inte tillämpas på textdokument, databaser och särskilt till programkod. Typiska förlustformat för komprimering är:
- JPG för grafiska data;
- .MPG för videodata;
- . M RZ för ljuddata.
Om datakomprimering bara ändrar sin struktur, är komprimeringsmetoden reversibel. Från den resulterande koden kan du återställa den ursprungliga arrayen genom att använda den omvända metoden. Reversibla metoder används för att komprimera alla typer av data. Typiska förlustfria komprimeringsformat är:
- .GIF, TIPS,. PCX och många andra för grafikdata;
- .AVI för videodata;
- .ZIP, .ARJ, .BAR, .LZH, .LH, .CAB och många andra för alla datatyper.
De "klassiska" datakomprimeringsformaten, som ofta används i det dagliga datorarbetet, är formaten .ZIP och .ARJ. Nyligen har det populära .RAR-formatet lagts till dem.
De grundläggande funktionerna som de flesta moderna arkivförvaltare utför inkluderar:
- extrahera filer från arkiv;
- Skapande av nya arkiv;
- lägga till filer till ett befintligt arkiv;
- Skapande av självutdragande arkiv;
- Skapande av distribuerade arkiv på media med låg kapacitet;
- testa arkivstrukturens integritet;
- hel eller partiell restaurering av skadade arkiv;
- Skydd av arkiv från visning och obehörig ändring.
Självutdragande arkiv Ett självutdragande arkiv förbereds utifrån ett vanligt arkiv genom att en liten mjukvarumodul kopplas till det. Själva arkivet får ett namntillägg.EXE, vilket är typiskt för körbara filer.
Distribuerade arkiv. Vissa hanterare (till exempel WinZip) utför uppdelning direkt på disketter, och vissa (till exempel WinRAR och WinArj) låter dig dela upp arkivet i förväg i fragment av en given storlek på hårddisken. Därefter kan de överföras till externa media genom kopiering.
När du skapar distribuerade arkiv har WinZip Manager obehagligt inslag: Varje volym innehåller filer med samma namn. Som ett resultat är det inte möjligt att bestämma volymnumren som är lagrade på varje diskett efter filnamn WinArj och WinRAR arkivhanterare märker alla distribuerade arkivfiler med olika namn och skapar därför inte sådana problem.
Arkivskydd. I de flesta fall skyddas arkiv med ett lösenord, som efterfrågas när du försöker visa, packa upp eller ändra arkivet.
TILL ytterligare funktioner arkivansvariga inkluderar servicefunktioner som gör arbetet mer bekvämt. De implementeras ofta extern anslutning ytterligare verktyg och tillhandahåller:
- visa filer i olika format utan att extrahera dem från arkivet;
söka efter filer och data i arkiv;
installation av program från arkiv utan preliminär uppackning;
frånvarokontroll datorvirus i arkivet innan det packas upp;
kryptografiskt skydd av arkivinformation;
meddelandeavkodning E-post;
"transparent" komprimering av körbara filer.EXE och.DLL;
skapande av självextraherande arkiv med flera volymer;
välja eller justera informationskomprimeringsförhållandet.

Du kan dubbelklicka på mappikonen, varefter Explorer startar och visar innehållet i den valda mappen (se Fig. 21.1).

När du dubbelklickar på en fils ikon startar programmet som skapade filen och visar dess innehåll. Även om det i själva verket kanske inte är samma program som skapade filen. Till exempel, grafiska filer kan öppnas med specialprogram för att se dem, inte grafikredigeringsprogrammet som skapade dem.

När du öppnar programfil, programmet startar.

När du öppnar en mapp kommer du att se dess innehåll i mappfönstret. Du kan konfigurera Windows så att varje mapp öppnas i ett eget fönster. Så här gör du.

1. I mappfönstret väljer du Verktyg=>Mappalternativ.

Dialogrutan Mappalternativ visas.

2. På fliken Allmänt väljer du Öppna varje mapp i ett separat fönster.

3. Klicka på OK.

När du är klar, glöm inte att stänga alla mappfönster.

Se trädstrukturen

Det svåraste med att arbeta med mappar och filer är att organisera dem i vad datavetare kallar en trädstruktur. Trädstrukturen är tydligt synlig på vänster sida av Explorer-fönstret. Denna del av fönstret kallas mappar (se figur 21.1). Om du inte ser den här listan klickar du på knappen Mappar i verktygsfältet. Eller välj Visa^ Webbläsarpaneler^ Mappar från menyn.

Med hjälp av musen kan du snabbt hitta vilken mapp som helst i trädstrukturen, om du förstås vet var du ska leta efter den. Efter att ha klickat på en mapp visas dess innehåll till höger i fönstret.

Genom att klicka på "+" (plus) bredvid motsvarande mapp kan du se alla dess undermappar, d.v.s. gren av en trädstruktur.

Genom att klicka på "-" (minustecknet) bredvid en mapp stänger du motsvarande gren av trädstrukturen.

Hur man döljer en trädstruktur

När mapparpanelen är stängd visar Explorer-fönstret en lista med uppgifter för filer och mappar, som visas i Fig. 21.2. Den här listan innehåller grundläggande operationer med filer i en given mapp, övergångar till andra kataloger på datorn och andra liknande uppgifter.

Listan över uppgifter beror på vilken typ av mapp du visar, den valda filen och dess typ.

Observera att alla aktivitetsfälten kan visas eller döljas genom att klicka på pilikonen.

Den initiala sektorn på hårddisken innehåller huvudrotposten, som laddas in i minnet och exekveras.

Den sista delen av denna sektor innehåller partitionstabellen - en 4-elementstabell med 16-byteelement. Den här tabellen manipuleras av FDISK-programmet (eller ett motsvarande verktyg i ett annat operativsystem).

Under uppstart laddar ROM-BIOS huvudrotposten och överför kontrollen till dess kod. Den här koden läser partitionstabellen för att avgöra vilken partition som är markerad som aktiv. Rätt rotsektor läses sedan in i minnet och exekveras.

Bord 1. Struktur för huvudrotposten och partitionstabellen

Tabell 2. Avsnittsbeskrivningsstruktur

Partitionskoden används för att bestämma närvaron och platsen för de primära och utökade partitionerna på disken. När den önskade partitionen har lokaliserats kan dess storlek och koordinater extraheras från motsvarande deskriptorfält. Om 0 skrivs i partitionskodfältet anses deskriptorn vara tom, det vill säga den definierar inte någon partition på disken.

Tabell 3. Partitionskoder för Microsofts operativsystem

KodaSektionstypStorlekFET typOS
01hGrundläggande0-15 MBFAT12MS-DOS 2.0
04hGrundläggande16-32 MBFAT16MS-DOS 3.0
05hAvancerad0-2 GB- MS-DOS 3.3
06hGrundläggande32 MB-2 GBFAT16MS-DOS 4.0
0BhGrundläggande512 MB-2 GBFAT32OSR2
0ChAvancerad512 MB-2 TBFAT32OSR2
0 EhGrundläggande32 MB-2 GBFAT16Windows 95
0FhAvancerad0-2 GB- Windows 95

Följande koder är reserverade för operativsystem från andra företag:

  • 02h - CP/M-sektion;
  • 03h - Xenix-sektionen;
  • 07h - OS/2-partition (HPFS-filsystem).

Anmärkningar:

  1. Cylinder- och sektornummer upptar 10 respektive 6 bitar:
    15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
    ccccccccccssssss

    De är arrangerade så att när du laddar CX med ett 16-bitars värde är den redo att anropa interrupt INT 13h för att läsa den önskade delen av disken. Sålunda, efter att ha läst in Master Load Record i sect_buf minnesområdet, är koden CMP byte ptr sect_buf, 80h

    kommer att kontrollera om den första partitionen är aktiv och koden

    MOV CX, sect_buf

    kommer att ladda CX för att anropa INT 13h för att läsa rotsektorn för partition #1.

  2. Värdet för "relativ sektor" vid offset 08h i varje partition är ekvivalent med huvudet, sektorn och cylindern för partitionens startadress. Relativ sektor 0 sammanfaller med cylinder 0, huvud 0, sektor 1. Det relativa sektornumret ökar först för varje sektor på huvudet, sedan för varje huvud och slutligen för varje cylinder.

    Tillämplig formel:

    Rel_sec = (#Cyl * sec_per_cyl * heads) + (#Goal * sec_per_cyl) + (#Sec -1)

    Partitioner börjar med ett jämnt cylindernummer, med undantag för den första partitionen, som kan börja vid cylinder 0, huvud 0, sektor 2 (eftersom sektor 1 är upptagen av Master Boot Record).

    När rotpartitionsposten får kontroll pekar DS:SI på motsvarande partitionstabellpost.

Rotsektorns struktur

Tabell 4. Format av rotsektorn för en diskett eller hårddiskpartition

00h3 JMPxx xxNEAR hoppa för att ladda ner kod
03h8 "jag""B""M" "4" "." "0" OEM företagsnamn och systemversion
0Bh2 SectSizantal byte i sektor (alltid 512)början av BPB
0Dh1 ClustSizantal sektorer i klustret
0 Eh2 ResSecantal reservsektorer (sektorer före FAT #1)
10h1 FatCntantal FAT-tabeller
11h2 RootSizantal 32-byte element i rotkatalogen (för FAT32 - 0)
13h2 TotSectotalt antal sektorer på media (DOS-partition)
15h1 Mediamediatyp (samma som 1:a byte av FAT)
16h2 FatSizeantal sektorer i en FATslut BPB
18h2 TrkSec antal sektorer per spår
1 Ah2 HeadCnt antal huvuden
1 kap4 HidnSecantal dolda sektorer (används i partitionsscheman)
20h4 TotSectotala sektorer om storlek >32 MB
24h1 128 fysiskt disknummer
25h1 boka
26h1 29h tecken på utökad struktur
27h4 Volym-ID (serienummer)
2BhBh etikett (INGET NAMN)
36h8 Filsystem-ID (FAT12)
3 Eh start av laddning av kod och data

Anmärkningar:

  1. Typer av lagringsmedia:
    • F0h - diskett, 2 sidor, 18 sektorer per spår;
    • F8h - hårddisk;
    • F9h - diskett, 2 sidor, 15 sektorer per spår;
    • FCh - diskett, 1 sida, 9 sektorer per spår;
    • FDh - diskett, 2 sidor, 9 sektorer per spår;
    • FEh - diskett, 1 sida, 8 sektorer per spår;
    • FFh - diskett, 2 sidor, 8 sektorer per spår.
  2. Använd absolut avläsning INT 25h (DX=0) för att läsa denna sektor. ELLER:
    • disketter: rotsektor = BIOS INT 13h huvud 0, spår 0, sektor 1;
    • hård: läs Partition_Table för huvud/spår/sektor BIOS.
  3. BPB (BIOS Parameter Block) är en delmängd av data som finns i root_sector. "Bygg BPB"-drivrutinsförfrågan kräver att föraren fyller i blocket som anges ovan. BPB-längd = 13 byte

Tabell för diskettparametrar

Denna 10-byte struktur är också känd som en "Disk Base Table". Den är belägen vid avbrottsvektoradressen INT 1Eh (4-byte adress vid 0:0078). Den här tabellen specificerar några viktiga variabler för diskettenheter. Den initieras av ROM-BIOS och modifieras av DOS för att förbättra prestandan för disketter.

Tabell 5. Diskettparametertabellformat

PartiskhetLängdInnehåll
00h1 Första byten i specifikationen:
bitar 0-3 - huvudladdningstid;
bitar 4-7 - varaktighet för huvudsteg
01h1 Andra byte i specifikationen:
bit 0 - DMA-lägesflagga;
bitar 1-7 - huvudladdningstid
02h1 Fördröjning innan motorn stängs av (i "tickar" på systemklockan)
03h1 Sektorstorlek (byte): 0 - 128, 1 - 256, 2 - 512, 3 - 1024
04h1 Antal sektorer per spår
05h1 Intersektorgaplängd för läs/skrivoperationer
06h1 Dataarealängd
07h1 Intersector gap längd för formatdrift
08h1 Platshållartecken för formatering (vanligtvis 0F6h, d.v.s. "Í")
09h1 Huvudinstallationstid (i millisekunder)
0 Ah1 Motorns starttid (i 1/8 s)

Tabell för hårddiskparametrar

Denna 16-byte struktur är belägen vid avbrottsvektoradress INT 41h (4-byte adress vid 0:0104). Parametrarna för den andra hårddisken (om det finns en) finns på vektoradressen INT 46h. Dessa tabeller definierar några viktiga variabler för hårddiskoperationer.

Tabell 6. Hårddisk tabellformat

PartiskhetLängdInnehåll
00h2 Antal cylindrar
02h1 Antal huvuden
03h2 Ej använd (alltid 0)
05h2 Förkompensation startcylindernummer
07h1 Maximal ECC-blocklängd
08h1 Kontrollbyte:
bitar 0-2 - används inte (alltid 0);
bit 3 - ställ in om antalet huvuden är mer än 8;
bit 4 - används inte (alltid 0);
bit 5 - ställ in om tillverkaren har placerat en defektkarta på cylindern med numret "maximal arbetscylinder + 1";
bit 6 - ECC-återkontrollförbud;
bit 7 - ECC-kontroll avaktiverad
09h1 Ej använd (alltid 0)
0 Ah1 Ej använd (alltid 0)
0Bh1 Ej använd (alltid 0)
0Ch2 Parkeringszonens cylindernummer
0 Eh1 Antal sektorer per spår
0Fh1 Boka

Filallokeringstabell (FAT)

Filstorleken kan ändras med tiden. Om du tillåter att en fil endast lagras i angränsande sektorer, när filstorleken ökar, måste operativsystemet helt skriva om den till ett annat lämpligt (fritt) område på disken. För att förenkla och påskynda driften av att lägga till ny data till en fil använder moderna operativsystem fildistributionstabeller (File Allocation Table, förkortat FAT), som låter dig lagra en fil i flera icke-sammanhängande sektioner.

När du använder FAT är dataområdet för en logisk enhet uppdelat i lika stora sektioner - kluster. Ett kluster kan bestå av en eller flera sektorer placerade sekventiellt på en disk. Antalet sektorer i ett kluster måste vara en multipel av 2 N och kan ta värden från 1 till 64 (klusterstorleken beror på vilken typ av FAT som används och storleken på den logiska disken).

Varje kluster tilldelas sitt eget FAT-tabellelement. De två första FAT-elementen är reserverade - om det finns K datakluster på disken kommer antalet FAT-element att vara K+2. FAT-typen bestäms av värdet på K:

  1. om K<4085 - используется FAT12;
  2. om 4084>K<65525 - используется FAT16;
  3. om 65524> K - FAT32 används.

Namnet på FAT-typer kommer från storleken på elementet. Så ett FAT12-element har en storlek på 12 bitar, FAT16 - 16 bitar, FAT32 - 32 bitar. Observera att i FAT32 är de fyra mest signifikanta binära bitarna reserverade och ignoreras under OS-drift (det vill säga endast de sju minst signifikanta hexadecimala bitarna i elementet är signifikanta).

FAT är en länkad lista som operativsystemet använder för att hålla reda på den fysiska platsen för data på en disk och för att hitta ledigt minne för nya filer.

Filkatalogen (innehållsförteckningen) för varje fil innehåller numret på startelementet i FAT-tabellen, motsvarande det första klustret i fildistributionskedjan. Motsvarande FAT-element indikerar antingen slutet på kedjan eller hänvisar till nästa element, etc. Exempel:

Detta diagram illustrerar de grundläggande begreppen FAT. Av det framgår att:

  1. MYFILE.TXT upptar 10 kluster. Det första klustret är klustret 08, det sista klustret är 1Bh. Klusterkedja - 08h, 09h, 0Ah, 0Bh, 15h, 16h, 17h, 19h, 1Ah, 1Bh. Varje element pekar på nästa element i kedjan, och det sista elementet innehåller specialkod(se tabell 7).
  2. Cluster 18h är märkt som defekt och ingår inte i distributionskedjan.
  3. Kluster 06h, 07h, 0Ch-14h och 1Ch-1Fh är tomma och tillgängliga för distribution.
  4. En annan kedja börjar med kluster 02h och slutar med kluster 05h. För att ta reda på filnamnet måste du hitta innehållsförteckningselementet med startklusternumret 02h.

Tabell 7. FAT element värden

FAT börjar vanligtvis vid logisk sektor 1 i DOS-partitionen (dvs den kan läsas av INT 25h med DX=1). I allmänhet måste du först läsa root_sector (DX=0) och ta offset 0Eh . Den indikerar hur många rot- och reservsektorer som finns framför FAT. Använd sedan detta nummer (vanligtvis 1) som innehållet i DX för att läsa FAT via INT 25h .

Det kan finnas flera kopior av FAT. Vanligtvis behålls två identiska kopior. I dessa fall ligger alla kopior direkt bredvid varandra.

Kommentar:

  • Enligt en vanlig missuppfattning tror man att 16-bitars FAT inte tillåter DOS att fungera med diskar större än 32 megabyte. Faktum är att begränsningen är att INT 25h/26h inte kan arbeta med SECTOR-nummer större än 65535. Eftersom sektorstorleken vanligtvis är 512 byte, eller en halv kilobyte, dikterar detta en gräns på 32 megabyte. Å andra sidan är det inget som hindrar dig från att ha större sektorer, så teoretiskt kan DOS fungera med vilken disk som helst.
  1. Multiplicera klusternumret med 3.
  2. Om elementnumret är jämnt, OCH ordet läst och masken 0FFFh. Om elementnumret är udda, flytta värdet åt höger med 4 bitar. Som ett resultat får du det önskade värdet på FAT-elementet.

Låt oss nu titta på proceduren för att skriva ett element till FAT12.

  1. Multiplicera klusternumret med 3.
  2. Dividera resultatet med 2 (elementlängden är 1,5 (3/2) byte).
  3. Läs ett 16-bitars ord från FAT med resultatet av föregående operation som adress.
  4. Om elementnumret är jämnt, utför en AND-operation på ordet läst och masken 0F000h, och sedan en ELLER-operation på det resulterande resultatet och värdet på det skrivna elementet. Om elementnumret är udda, OCH ordet läst och masken 0F000h, flytta sedan värdet 4 bitar åt vänster och ELLER resultatet av föregående operation.
  5. Skriv tillbaka det resulterande 16-bitarsordet till FAT.

Kommentar:

  • Ett 12-bitars element kan korsa två sektorsgränser, så var försiktig om du läser en FAT-sektor åt gången.
    16-bitars element är enklare - varje element innehåller 16-bitars offset (från början av FAT) för nästa element i kedjan.
    32-bitars element - Varje element innehåller 32-bitars offset för nästa element i kedjan.

I assemblerprogram används ofta skift-och-lägg-algoritmen istället för MUL-instruktionen för att utföra multiplikation med 3: det ursprungliga numret kopieras, kopian av talet flyttas åt vänster en plats (multipliceras med 2), och sedan båda talen läggs till (x + 2x = 3x). Istället för DIV-kommandot, skift höger en bit.

FAT-elementet innehåller klusternumret, men när man arbetar med diskar på en låg nivå är den adresserbara dataenheten sektorn, inte klustret.

En diskett (eller hårddiskpartition) är strukturerad enligt följande:

  1. rot- och reservsektorer;
  2. FAT#1;
  3. FETT #2;
  4. rotkatalog (finns inte i FAT32);
  5. dataområde.

Varje sektion i denna struktur har en variabel längd, och för att korrekt konvertera klusternumret till sektornumret måste du veta längden på varje sådan sektion.

För att få klustrets startsektornummer från ClustNum-klusternumret (läs från motsvarande fält i katalogposten eller FAT-kedjan), kan du använda den odokumenterade OS 32h-funktionen, eller läsa rotsektorn och tillämpa följande formler:

root_sectors = (RootSiz * 32) / 512 start_data = ResSecs + (FatSize * FatCnt) + root_sectors start_sector = start_data + ((ClustNum - 2) * ClustSiz) ,

där värdena för variablerna: RootSiz, ResSecs, FatSize, FatCnt, ClustSiz hämtas från rotsektorn eller från BPB.

Ställ in DX=start_sector före INT 25h läs eller INT 26h skrivoperation.

Filkataloger

Filkatalogen är en array av 32-byte element - filbeskrivningar. Ur operativsystemets synvinkel ser alla kataloger (förutom rotkatalogen i FAT12- och FAT16-system) ut som filer och kan innehålla ett godtyckligt antal poster.

Rotkatalogen är huvudkatalogen på disken från vilken underkatalogträdet börjar. För rotkatalogen i FAT12 och FAT16 tilldelas ett speciellt utrymme med fast storlek (16 KB) i systemområdet på den logiska disken, utformad för att lagra 512 element. I ett FAT32-system är rotkatalogen en fil av valfri storlek.

Tabell 8. Katalogobjektstruktur

PartiskhetLängdInnehåll
00h11 Kort filnamn
0Bh1 Filattribut
0Сh1 *Reserverad för Windows NT (måste innehålla 0)
0Dh1 *Fält som anger tiden för att skapa filen (i tiotals millisekunder).
Fältvärdet kan variera från 0 till 199
0 Eh2 * Tid för att skapa filer
10h2 *Datum då filen skapades
12h2 *Datum för senaste åtkomst till filen för att skriva eller läsa data
14h2 *Det viktigaste ordet av numret för det första klustret i filen
16h2 Tidpunkt för senaste skrivoperation till fil
18h2 Datum för den senaste skrivoperationen till filen
1 Ah2 Lågt ord för filens första klusternummer
1 kap4 Filstorlek i byte (32-bitars nummer)

"*"-tecknet betyder att fältet endast bearbetas i FAT32-filsystemet. I FAT12- och FAT16-system anses fältet vara reserverat och innehåller värdet 0.

Det korta filnamnet består av två fält: ett 8-byte-fält som innehåller det faktiska filnamnet och ett 3-byte-fält som innehåller filtillägget. Om filnamnet som angetts av användaren är kortare än åtta tecken, är det utfyllt med mellanslag (mellanslagskod - 20h), om det angivna tillägget är kortare än tre tecken, är det också utfyllt med mellanslag.

Vissa DOS-funktioner kräver en filattributbyte som parameter. Bitarna i attributbyten sätts till 1 om filen har motsvarande egenskap:

  • bit 0 - skrivskyddad;
  • bit 1 - dold;
  • bit 2 - system;
  • bit 3 - volymidentifierare;
  • bit 4 - katalog;
  • bit 5 - arkiverad;
  • bitarna 6 och 7 är reserverade (inställd på 0).

Tidsfältet för filskapande och tidsfältet för den senaste skrivoperationen till filen har följande format:

15 9 8 5 4 0

När man skapar filer räknas datum från början av MS-DOS-eran, d.v.s. daterad 1980-01-01. Bitarna 9-15 innehåller årtalet minus 1980 (giltiga värden från 0 till 127).

Långa filnamn

Från och med Windows 95 kan en fil (utöver ett kort namn) tilldelas ett så kallat långt namn. För att lagra ett långt namn används tomma katalogelement intill huvudelementet - fildeskriptorn. Närvaron av ettor i bitarna 0-3 av attributbyte är ett tecken på att ett ledigt katalogelement används för att lagra en del av ett långt filnamn (denna kombination är inte möjlig för fil- och katalogbeskrivningar). De korta och långa filnamnen är unika, d.v.s. får inte förekomma två gånger i samma katalog.

Ett långt namn skrivs inte med ASCII-tecken, utan i Unicode-format, där varje nationellt alfabet har en motsvarande uppsättning koder. Priset att betala för Unicodes universalitet är en minskning av informationslagringstätheten - varje tecken upptar två byte (16-bitars ord). I tomma katalogelement skrivs det långa namnet skuret i bitar (se tabell 9).

Tabell 9. Struktur av ett katalogelement som lagrar ett fragment av ett långt filnamn

Det långa namnet skrivs till katalogen först, med fragmenten placerade i omvänd ordning, med början med det sista:

Alla kataloger, med undantag för rotkatalogen, innehåller speciella länkar i de två första elementen istället för filbeskrivningar. Element nr 0 innehåller en pekare till själva katalogen och namnfältet innehåller en enda punkt ("."). Element #1 innehåller en pekare till den överordnade katalogen och namnfältet innehåller två punkter (".."). Om FAT-tabellreferensen för artikel #1 har ett nollvärde, så finns den aktuella katalogen i rotkatalogen.

Diskinformationsblocket bildas av 32h-funktionen ODOKUMENTERAD DOS.

All information som finns här kan erhållas genom att läsa rotsektorn och anropa ett antal andra OS-funktioner med vissa beräkningar, men informationsblocket är användbart eftersom det innehåller all data tillsammans. Detta är det enda anropet som returnerar adressen till enhetens drivrutinhuvud.

Tabell 10. Diskinformation blockdiagram

PartiskhetLängdInnehåll
00h1 Skivnummer (0=A, 1=B, etc.)
01h1 Underenhetsnummer från enhetshuvudet (en drivrutin kan hantera flera enheter)
02h2 Sektorstorlek i byte
04h1 Antal sektorer per kluster -1 (max. sektor per kluster)
05h1 Flytta ett kluster till en sektor (kluster = 2# sektorer) (sektorer per kluster i två potenser: 2 för 4, 3 för 8)
06h2 Antal reservsektorer (rot, början av rotsektion) (N för första FAT-sektor)
08h1 Antal FAT-tabeller
09h2 Max. antal element i rotinnehållsförteckningen
0Bh2 Sektornummer för kluster nr 2 (1:a dataklustret)
0Dh2 Totalt antal kluster +2 (högsta antal kluster)
0Fh1 Antal sektorer upptagna av en FAT
10h2 Sektornummer i början av rotinnehållsförteckningen
12h4 Device_header-adress
16h1 media_descriptor byte
17h1 Åtkomstflagga: 0 om enheten användes
18h4 Adress till nästa diskinformationsblock
(0FFFFh om blocket är det sista)

Bitflaggor för öppningsläge:

  1. 0-2: Processåtkomsträttigheter på nätverket
    000 - läsning; 001 - rekord; 010 - läs och skriv.
  2. 4-6: Delat läge:
    000 - kompatibilitetsläge
    001 = exklusiv filinsamling
    010 = avvisa inträde
    011 = avvisa läsning
    100 = förkasta ingenting
  3. 7: Arv:
    1 - filen är privat för denna process 0 - ärvd av underordnade processer

Om filattributet byte indikerar skrivskyddad åsidosätter den dessa flaggor.

Nätverksbehörigheterna och delningslägesbitarna har bara effekt när SHARE-programmet är installerat.