introduktion:-da diskplads er begrænset, bør vi genbruge pladsen fra slettede filer til nye filer. For at holde styr på ledig diskplads opretholder systemet en ledig pladsliste. Listen ledig plads registrerer alle gratis diskblokke dem, der ikke er tildelt en fil eller mappe. Denne gratis pladsliste kan implementeres som en af følgende:
a) Bitvektorfri pladsliste implementeres som et bitkort eller en bitvektor. Hver blok er repræsenteret af en bit. Hvis blokken er fri, er bit 1, hvis blokken er tildelt, er bit 0.
den største fordel ved denne tilgang er dens relative enkelhed og dens effektivitet ved at finde den første gratis blok eller N på hinanden følgende frie blokke på disken. Beregningen af bloknummeret er (antal bits pr.ord) * (antal 0-værdi ord) forskydning af første 1 bit
b) linket liste – en anden tilgang til ledig pladsstyring er at forbinde alle de gratis diskblokke, der holder en markør til den første gratis blok på en særlig placering på disken og cachelagre den i hukommelsen. Den første blok indeholder en markør til den næste gratis diskblok.
c) gruppering – en ændring af den gratis liste tilgang er at gemme adresserne på n gratis blokke i den første gratis blok.
d) tælling – en anden tilgang er at drage fordel af det faktum, at flere sammenhængende blokke kan tildeles eller frigøres samtidigt, når Plads tildeles med den sammenhængende tildelingsalgoritme eller klyngedannelse.
effektivitet og ydeevne
diske har tendens til at repræsentere en stor flaskehals i systemets ydeevne, da de er den langsomste hovedcomputerkomponent. Effektivitet:- Den effektive brug af diskplads afhænger meget af diskallokering og katalogalgoritmer, der er i brug.
ydeevne: de fleste diskcontrollere inkluderer lokal hukommelse til at danne en indbygget cache, der er stor nok til at gemme hele spor ad gangen. Når en søgning er udført, læses sporet i diskcachen, der starter ved sektoren under diskhovedet. Diskcontrolleren overfører derefter sektoranmodninger til OS. Nogle systemer opretholder et separat afsnit af hovedhukommelsen til en buffercache, hvor blokke holdes under den antagelse, at de vil blive brugt igen. Andre systemer cache fildata ved hjælp af en side cache. Sidecachen bruger virtuelle hukommelsesteknikker til at cache fildata som sider snarere end som filsystemorienterede blokke. Caching fildata ved hjælp af virtuelle adresser er mere effektiv end caching gennem fysiske diskblokke som adgang interface med virtuel hukommelse snarere end filsystemet. Flere systemer bruger sidecaching til at cache både processider og fildata. Dette er kendt som unified buffer cache.
der er andre problemer, der kan påvirke ydeevnen for I/O, såsom om skrivning til filsystemet forekommer synkront eller asynkront. Synkrone skrivninger forekommer i den rækkefølge, hvor diskundersystemet modtager dem, og skrivningerne er ikke bufferet. Asynkrone skrivninger udføres størstedelen af tiden. Nogle systemer optimerer deres sidecache ved hjælp af forskellige erstatningsalgoritmer afhængigt af filens adgangstype. Sekventiel adgang kan optimeres ved hjælp af teknikker kendt som gratis bag og læs videre. Gratis bag fjerner en side fra buffer, så snart der anmodes om den næste side. Med read ahead læses og cachelagres en anmodet side og flere efterfølgende sider.