Bei modernen Computersystemen kann nur das Betriebssystem direkt alles mit Dateien auf der Festplatte tun. Welche Auswirkungen hat das auf:
Soweit es die Festplatte betrifft sind alle Dateien gleich. Auf der elektronischen Ebene gibt es keinen Unterschied zwischen einer Datei, die ein Programm enthält und einer Datei, die Daten enthält. Alle Dateien sind benannte Kollektionen von Bytes. Natürlich, für was die Dateien verwendet werden, das ist verschieden. Das Betriebssystem kann eine Programmdatei nehmen, sie in den Hauptspeicher kopieren und beginnen sie auszuführen. Das Betriebssystem kann eine Datendatei nehmen und deren Information einem laufenden Programm zur Verfügung stellen, wenn es danach verlangt.
Häufig zeigt der letzte Teil eines Dateinamens (die Endung) für welchen Gebrauch die Datei verwendet wird. Zum Beispiel in "meineDaten.txt" bedeutet ".txt", dass die Datei als Kollektion von Text zu verwenden sein wird, das heißt als Sammlung von Zeichen. Bei "firefox.exe" bedeutet ".exe", dass die Datei "ausführbar" ist, das heißt ein Programm, dass bereit ist ausgeführt zu werden. Bei "Programm1.java" bedeutet ".java", dass die Datei ein Quellprogramm in der Sprache Java ist (über Quellprogramme wird es später in diesen Aufzeichnungen noch mehr geben). Für die Festplatte ist jede dieser Dateien das gleiche: eine Sammlung von Bytes.
Was passiert, wenn eine Datei für etwas anderes als ihren beabsichtigten Gebrauch verwendet wird? Was passiert zum Beispiel, wenn wir versuchen eine ".EXE" Datei mit einem Textverarbeitungsprogramm zu öffnen?