Nächste Seite: Aufruf und Bedienung Aufwärts: Hilfsprogramme zu M2Amiga Vorherige Seite: Rückgabewerte

# Cache (`m2cache`) und `m2amiga.library`

Die `m2amiga.library` enthält Prozeduren, die von allen Werkzeugen von benötigt werden. Nebenbei dient sie als Cache für alle Dateien. `m2cache` erlaubt dem Anwender das Verhalten der `m2amiga.library` zu beeinflussen. Normalerweise muss `m2cache` nicht benutzt werden, allenfalls zu Beginn, um die Grösse des Caches einzustellen. Die Grösse kann beliebig eingestellt werden. Man kann vorgeben, wieviel Speicher maximal benutzt werden darf oder wieviel Speicher mindestens freigehalten werden soll.

Bei einem Überlauf werden die am längsten nicht benutzten Dateien aus dem Cache entfernt.

Der Cache bietet bei Symboldateien nicht die schnellstmögliche Lösung zum Einlesen, da die Dateien zur Verarbeitung entpackt werden müssen.3.2Insgesamt ist das System aber sehr schnell, weil die Suche in den Projekten entfällt und auch Objektdateien im Speicher gehalten werden. Ausserdem können die im Cache gelagerten Dateien beliebig oft gleichzeitig benutzt werden.

Es wird immer nur eine `obx`-Datei (pro CPU) eines Moduls im Cache gehalten. Der Cache merkt sich auch, welche Typen von Objekt-Dateien nicht existieren und versucht dann gar nicht erst, sie zu finden.

Wird vom Compiler eine neue Datei erzeugt, wird die alte natürlich automatisch aus dem Cache gelöscht.

Im Cache werden niemals voll erweiterte Pfadnamen gespeichert, sondern nur Namen, die sich aus den Pfadangaben der ,,`path```-Dateien ergeben. Deshalb sollte unbedingt jedes Modul nur einmal vorkommen. Für den Fall, dass ein Modul mehrfach existiert, können bei einem Wechsel des Projektes mit

> `m2cache -f`

alle lokalen Objekte, d.h. solche des Projekts, aus dem Cache gelöscht werden.

Momentan werden nur Symbol-, Referenz- und Objekt-Dateien permanent gehalten. Der Compiler lädt die Quelltexte zur Beschleunigung zwar auch in den Cache, gibt sie aber unmittelbar wieder frei. Bei Texten kann leider nicht sichergestellt werden, dass eine Veränderung vom Cache bemerkt wird.

Unterabschnitte

- Aufruf und Bedienung
- Rückgabewerte

Nächste Seite: Aufruf und Bedienung Aufwärts: Hilfsprogramme zu M2Amiga Vorherige Seite: Rückgabewerte