op de meeste moderne besturingssystemen worden bestanden georganiseerd in eendimensionale arrays van bytes. Het formaat van een bestand wordt gedefinieerd door zijn inhoud aangezien een bestand alleen een container voor gegevens is, hoewel op sommige platforms het formaat gewoonlijk wordt aangegeven door zijn bestandsnaamuitbreiding, die de regels specificeert voor hoe de bytes betekenisvol moeten worden georganiseerd en geïnterpreteerd. Bijvoorbeeld, de bytes van een platte tekst bestand (.txt in Windows) worden geassocieerd met ASCII-of UTF-8-tekens, terwijl de bytes van beeld -, video-en audiobestanden anders worden geïnterpreteerd., De meeste bestandstypen kennen ook een paar bytes toe voor metadata, waardoor een bestand wat basisinformatie over zichzelf kan bevatten.
sommige bestandssystemen kunnen willekeurige (niet geïnterpreteerd door het bestandssysteem) bestandsspecifieke gegevens opslaan buiten het bestandsformaat, maar gekoppeld aan het bestand, bijvoorbeeld uitgebreide attributen of vorken. Op andere bestandssystemen kan dit gedaan worden via sidecar bestanden of software-specifieke databases. Al deze methoden zijn echter vatbaarder voor verlies van metadata dan container-en archiefbestandsindelingen.,
File sizeEdit
op elk moment in de tijd kan een bestand een grootte hebben, normaal gesproken uitgedrukt als aantal bytes, die aangeeft hoeveel opslag is gekoppeld aan het bestand. In de meeste moderne besturingssystemen kan de grootte elk NIET-negatief geheel aantal bytes tot een systeemlimiet zijn., Veel oudere besturingssystemen bijgehouden alleen van het aantal blokken of tracks bezet door een bestand op een fysiek opslagapparaat. In dergelijke systemen, software gebruikt andere methoden om de exacte byte telling volgen (bijvoorbeeld, CP / M gebruikt een speciaal besturingskarakter, Ctrl-Z, om het einde van tekstbestanden te signaleren).
De algemene definitie van een bestand vereist echter niet dat de grootte ervan enige echte betekenis heeft, tenzij de gegevens in het bestand overeenkomen met gegevens binnen een pool van permanente opslag., Een speciaal geval is een zero byte bestand; deze bestanden kunnen nieuw gecreëerde bestanden zijn die nog geen gegevens naar hen geschreven hebben, of kunnen dienen als een soort vlag in het bestandssysteem, of zijn ongelukken (de resultaten van afgebroken schijfbewerkingen). Bijvoorbeeld, het bestand waarnaar de link /bin/ls wijst in een typisch Unix-achtig systeem heeft waarschijnlijk een gedefinieerde grootte die zelden verandert. Vergelijk dit met /dev / null dat ook een bestand is, maar als een speciaal karakterbestand, is de grootte niet zinvol.,
organisatie van gegevens in een bestanddit
informatie in een computerbestand kan bestaan uit kleinere pakketten met informatie (vaak “records” of “regels” genoemd) die individueel verschillend zijn, maar enkele gemeenschappelijke kenmerken delen., Een payroll-bestand kan bijvoorbeeld informatie bevatten over alle werknemers in een bedrijf en hun payrollgegevens; elk record in het payroll—bestand betreft slechts één werknemer, en alle records hebben de gemeenschappelijke eigenschap dat ze verband houden met payroll-dit is zeer vergelijkbaar met het plaatsen van alle payroll-informatie in een specifieke archiefkast in een kantoor dat geen computer heeft. Een tekstbestand kan regels tekst bevatten die overeenkomen met afgedrukte regels op een stuk papier. Als alternatief kan een bestand een willekeurig binair image (een blob) bevatten of het kan een uitvoerbaar bestand bevatten.,
de manier waarop informatie wordt gegroepeerd in een bestand is volledig afhankelijk van hoe het is ontworpen. Dit heeft geleid tot een overvloed aan min of meer gestandaardiseerde bestandsstructuren voor alle denkbare doeleinden, van de eenvoudigste tot de meest complexe. De meeste computerbestanden worden gebruikt door computerprogramma ‘ s die bestanden maken, wijzigen of verwijderen voor eigen gebruik op een als-nodig basis. De programmeurs die de programma ‘ s maken bepalen welke bestanden nodig zijn, hoe ze gebruikt moeten worden en (vaak) hun namen.
in sommige gevallen manipuleren computerprogramma ‘ s bestanden die zichtbaar zijn gemaakt voor de computergebruiker., Bijvoorbeeld, in een tekstverwerkingsprogramma, de gebruiker manipuleert documentbestanden die de gebruiker persoonlijk namen. Hoewel de inhoud van het documentbestand is gerangschikt in een formaat dat het tekstverwerkingsprogramma begrijpt, is de gebruiker in staat om de naam en de locatie van het bestand te kiezen en het grootste deel van de informatie (zoals woorden en tekst) die zal worden opgeslagen in het bestand te verstrekken.
veel toepassingen verpakken al hun gegevensbestanden in een enkel bestand, een archiefbestand genaamd, met behulp van interne markeringen om de verschillende soorten informatie binnen te onderscheiden., De voordelen van het archiefbestand zijn om het aantal bestanden te verlagen voor eenvoudiger overdracht, om het opslaggebruik te verminderen of gewoon om verouderde bestanden te organiseren. Het archiefbestand moet vaak worden uitgepakt voor het volgende gebruik.,
OperationsEdit
De meest elementaire bewerkingen die programma ‘ s kan uitvoeren op een bestand zijn:
- een nieuw bestand Maken
- Wijzig de machtigingen voor de toegang tot en de kenmerken van een bestand
- Open een bestand, dat maakt de inhoud van het bestand aan het programma beschikbaar
- data te Lezen van een bestand
- Schrijven van gegevens naar een bestand.
- een bestand Verwijderen
- een bestand Sluiten, beëindigen van de vereniging tussen het apparaat en de programma
Bestanden op een computer kan worden gemaakt, verplaatst, gewijzigd, verbouwd, gekrompen (afgebroken), en verwijderd., In de meeste gevallen behandelen computerprogramma ‘ s die op de computer worden uitgevoerd deze bewerkingen, maar de gebruiker van een computer kan ook bestanden manipuleren indien nodig. Bijvoorbeeld, Microsoft Word-bestanden worden normaal gemaakt en gewijzigd door het Microsoft Word-programma in reactie op de commando ‘ s van de gebruiker, maar de gebruiker kan ook verplaatsen, hernoemen of verwijderen van deze bestanden rechtstreeks met behulp van een file manager programma zoals Windows Verkenner (op Windows-computers) of door command lines (CLI).
In Unix – achtige systemen werken gebruikersruimteprogramma ‘ s niet direct, op een laag niveau, op een bestand., Alleen de kernel behandelt bestanden, en het behandelt alle gebruikersruimte interactie met bestanden op een manier die transparant is voor de gebruikersruimte programma ‘ s. Het besturingssysteem biedt een niveau van abstractie, wat betekent dat de interactie met een bestand uit de gebruikersruimte is gewoon door middel van de bestandsnaam (in plaats van de inode). Bijvoorbeeld, rm bestandsnaam zal het bestand zelf niet verwijderen, maar alleen een link naar het bestand. Er kunnen veel links naar een bestand zijn, maar wanneer ze allemaal verwijderd zijn, beschouwt de kernel de vrije geheugenruimte van het bestand opnieuw toe te wijzen., Deze vrije ruimte wordt algemeen beschouwd als een veiligheidsrisico (als gevolg van het bestaan van file recovery software). Om het even welk veilig-schrappingsprogramma gebruikt kernel-ruimte (systeem) functies om de gegevens van het dossier af te vegen.
bestand beweegt binnen een bestandssysteem bijna onmiddellijk voltooid omdat de inhoud van de gegevens niet hoeft te worden herschreven. Alleen de paden hoeven veranderd te worden.
Moving methodebedit
Er zijn twee verschillende implementaties van bestandsbewegingen.,
bij het verplaatsen van bestanden tussen apparaten of partities verwijdert Sommige software voor bestandsbeheer elk geselecteerd bestand afzonderlijk uit de bronmap nadat het is overgedragen, terwijl andere software alle bestanden in één keer verwijdert nadat elk bestand is overgedragen.
met het mv
Commando bijvoorbeeld, wordt de eerste methode gebruikt bij het selecteren van bestanden afzonderlijk, mogelijk met jokertekens (voorbeeld: mv -n sourcePath/* targetPath
, terwijl de laatste methode wordt gebruikt bij het selecteren van volledige mappen (voorbeeld: mv -n sourcePath targetPath
)., Microsoft Windows Verkenner maakt gebruik van de eerste methode voor massa opslag filemoves, maar de laatste methode met behulp van Media Transfer Protocol, zoals beschreven in Media Transfer Protocol § File move behaviour.
de vorige methode (individuele verwijdering van de bron) heeft het voordeel dat er ruimte vrijkomt van het bronapparaat of de partitie onmiddellijk nadat de overdracht is begonnen, wat betekent nadat het eerste bestand is voltooid. Bij deze laatste methode wordt pas ruimte vrijgemaakt nadat de overdracht van de gehele selectie is voltooid.,
als een onvolledige bestandsoverdracht met de laatste methode onverwacht wordt afgebroken, misschien als gevolg van een onverwachte uitschakeling, systeemstoring of het verbreken van de verbinding van een apparaat, zal er geen ruimte zijn vrijgemaakt op het bronapparaat of de partitie. De gebruiker moet de resterende bestanden van de bron samenvoegen, inclusief het onvolledig geschreven (afgekapt) laatste bestand.
met de individuele verwijderingsmethode hoeft de software voor het verplaatsen van bestanden ook niet cumulatief alle bestanden bij te houden die zijn overgezet voor het geval dat een gebruiker de bestandsoverdracht handmatig afbreekt., Een file manager met behulp van de laatste (daarna verwijdering) methode moet alleen de bestanden uit de bron directory die al klaar zijn met de overdracht te verwijderen.