woensdag 21 december 2011

Programma's begrijpen: Bestanden en hun formaten uitgelegd


“De informatie per signaal is omgekeerd evenredig aan de waarschijnlijkheid van het signaal”
                                                                                                            - Piet Heil
Informatieverwerking is de eerste stap dat dient voor het echte doel: de uitwisseling van de informatie. Zonder uitwisseling zou de verwerking immers onpraktisch zijn. Vele vormen van deze uitwisseling nemen we al voor vanzelfsprekend; of we nu onze touchpads bewegen en toetsenborden gebruiken voor de invoer of staren naar het scherm om de corresponderende acties waarnemen als de uitvoer. Informatie leeft in de computer als een data structuur.
Het werkgeheugen valt na een stroomonderbreking terug in de staat van ‘leegte’; dit ontwerp is doelbewust, omdat een software fout de computer in zijn geheel defect zou maken én persistent geheugen langzamer is in verwerking. Het is echter wel belangrijk om informatie te kunnen archiveren, het zou anders een oneindig lang proces worden om de computer te starten en een tragedie om mee te werken. Daarom hebben computers opslagmedia tot hun beschikking: de harde schijf, DVD-media en USB ingangen; programma’s en documenten kunnen via het besturingssysteem informatie opslaan én teruglezen. Wanneer informatie voor dit doeleinde wordt opgeslagen, spreekt men over een ‘bestand’.
Bestanden zijn de fysieke vertaling van een data structuur naar de mechaniek van de opslagmedia; een harde schijf manipuleert m.b.v. magnetische ‘koppen’ een gedeelte van optische ‘film’, terwijl een DVD-schrijver met een laser dunne sporen ‘brandt’. Het besturingssysteem is verantwoordelijk voor het gehele proces; programma’s geven alleen aan het besturingssysteem door dat ze óf van een bestand willen lezen óf er naar schrijven, besturingssystemen beheren namelijk alle toegankelijke bestanden.
Bestanden moeten daarom een conventie volgen om door een besturingssysteem bewerkt te kunnen worden. Zonder deze ‘afspraken’ zouden bestanden andere bestanden overschrijven of zou er in informatie verloren kunnen gaan. Daarom geldt voor ieder bestand een standaard ontwerp: zo heeft een bestand twee delen, namelijk de ‘envelop’ (header) en het daadwerkelijke ‘bericht’ (body). De envelop bevat informatie voor het besturingssysteem: de grootte, de opmaak en controle berekeningen die de geldigheid kunnen garanderen. Het tweede gedeelte bestaat uit de daadwerkelijke informatie die is opgeslagen.
Omdat informatie wordt verwerkt in data structuren is het handig om deze ook conform de structuur op te slaan; een bestand wordt geplaatst in het geheugen precies zoals deze in het bestand is opgeslagen. Echter willen programmeurs vaak meer informatie plaatsen in een bestand buiten de ‘ruwe’ informatie of willen bestanden kunnen uitwisselen met andere programma’s. Omdat computers eenmaal niet kunnen raden en zeer foutgevoelig zijn is er een oplossing nodig om al deze benodigdheden te verkrijgen. Deze oplossing is het bestandsformaat.
Het bestandsformaat is de opmaak van de informatie. Wanneer een bestand is ingedeeld in een structuur kan deze gemakkelijker verwerkt én uitgewisseld worden. Office bestanden kunnen hierdoor uitgewisseld worden over diverse versies van het software pakket en veel boekhoudprogramma’s kunnen een rapportage opslaan, die geopend kunnen worden Excel. Zo werkt het ook met media bestanden: als een film niet afgespeeld kan worden, ondersteund de speler het ‘formaat’ niet, het bestand is wel geldig en kan mechanisch ‘gelezen’ worden maar de opmaak is voor het programma geheimschrift.
Formaten zijn belangrijk in gegevensuitwisseling; informatie kan gepresenteerd worden op vele manieren. Daarom hebben veel bestanden een ‘extensie’, het bestand krijgt een achtervoegsel (zoals mijn-verhaal.doc, of vakantie.jpg) om het formaat aan te duiden voor de gebruiker. Het bestand zelf heeft immers de ‘envelop’ die het formaat bevat.
Bestandsformaten zijn vrij om te ontwerpen, echter zullen de enige ontwerpers die zich met deze opgave bemoeien bezig zijn met zeer gevorderde technologieën zoals media compressie of eigen faciliteiten.

Meer lezen hierover? Klik hier voor de inhoudsopgave voor alle artikelen!

Geen opmerkingen:

Een reactie posten