Was ist icon-theme.cache?

10

Wenn ich den folgenden Befehl auf meinem Lubuntu 12.10 ausführe

[11:09 PM] ~ $ find /usr/share/icons/ -iname icon-theme.cache -type f

Ich erhalte Folgendes (nachdem ich das Datum und die Größe der letzten Änderung hinzugefügt habe):

/usr/share/icons/lubuntu/icon-theme.cache              20121125  61.2 KiB
/usr/share/icons/Humanity-Dark/icon-theme.cache        20120810  40.6 KiB
/usr/share/icons/Humanity/icon-theme.cache             20120810 931.9 KiB
/usr/share/icons/gnome/icon-theme.cache                20121017  65.8 MiB
/usr/share/icons/ubuntu-mono-light/icon-theme.cache    20130408 140.0 KiB
/usr/share/icons/LoginIcons/icon-theme.cache           20130408   628 bytes
/usr/share/icons/ubuntu-mono-dark/icon-theme.cache     20130408 139.9 KiB
/usr/share/icons/hicolor/icon-theme.cache              20130406  12.4 MiB
/usr/share/icons/elementary-mono-dark/icon-theme.cache 20120926  12.4 KiB

Und alle diese Dateien, wie im folgenden Beispiel gezeigt, sind vom Typ TrueType font data:

[11:09 PM] ~ $ file /usr/share/icons/hicolor/icon-theme.cache
/usr/share/icons/hicolor/icon-theme.cache: TrueType font data

Meine Fragen, die alle eng miteinander verbunden sind, sind:

  • Was ist icon-theme.cacheund welche Funktion hat es? Was bedeuten cachediese Dateinamen? Die Cache-Tag- Definition lautet wie folgt: " Ein Cache speichert temporäre Daten in der Nähe, sodass sie viel schneller abgerufen werden können, als sie aus dem realen Sicherungsspeicher (Festplatte, Netzwerk) abzurufen oder ein Ergebnis erneut neu zu berechnen ."
  • Warum sind die Dateigrößen so unterschiedlich? Sind die gnomeund hicolordiejenigen die größten, weil sie die Fallback-Symbole enthalten (wie ich irgendwo gelesen habe)?
  • Was ist mit den Daten? Ich bin mir nur über diese sicher ubuntu-mono, da sie bei der Installation light-themesauf 20130408 ​​hinzugekommen sind. Werden diese Dateien im Verlauf des Themenwechsels geändert oder spiegeln die Daten nur das Installationsdatum wider?
Gemeinschaft
quelle

Antworten:

12

Um zu verstehen, warum wir diese Dateien benötigen, müssen Sie zunächst das Konzept der Zuordnung von Dateien zum Speicher verstehen .

Speicherzugeordnete Dateien: Speicherzugeordnete Dateien sind Segmente des virtuellen Speichers, die byteweise direkt einer physischen Datei auf der Festplatte zugeordnet werden. Es bietet eine Reihe von Vorteilen gegenüber herkömmlichen Stream-basierten E / A-Vorgängen, z. B. die Leistung beim wahlfreien Zugriff auf große Dateien oder die Möglichkeit, den zugeordneten Speicher zwischen verschiedenen Threads und Prozessen gemeinsam zu nutzen.

Der Zugriff auf Speicherzuordnungsdateien ist aus zwei Gründen schneller als die Verwendung direkter Lese- und Schreibvorgänge. Erstens ist ein Systemaufruf um Größenordnungen langsamer als eine einfache Änderung des lokalen Speichers eines Programms. Zweitens ist in den meisten Betriebssystemen der zugeordnete Speicherbereich tatsächlich der Seitencache (Dateicache) des Kernels, was bedeutet, dass keine Kopien im Benutzerbereich erstellt werden müssen.

Nehmen Sie nun Ihre Fragen einzeln auf:

  1. Was ist icon-theme.cache und welche Funktion hat es? Was bedeutet Cache in diesen Dateinamen?

    Die Datei icon-theme.cache enthält zwischengespeicherte Informationen zu den Symbolen im Verzeichnisbaum unterhalb eines bestimmten Verzeichnisses (das zufällig dasjenige ist, das index.themefür das jeweilige Thema enthält).

    GTK + kann die Cache-Dateien verwenden, um beim Start der Anwendung viel Aufwand für Systemaufrufe und Festplattensuche zu vermeiden. Da das Format der Cache-Dateien eine gemeinsame Speicherzuordnung zwischen mehreren Anwendungen ermöglicht, wird auch der Gesamtspeicherverbrauch reduziert.

  2. Warum sind die Dateigrößen so unterschiedlich?

    Die Dateigröße hängt von der Anzahl der Symbole im Symbolthema ab.

  3. Was ist mit den Daten?

    Wenn wir Speichercaches verwenden, ist etwas im Cache nur vorhanden, wenn ein Prozess auf einen bestimmten Speicherort zugreift und dort verbleibt, es sei denn, der Cache ist voll und dieses Element muss entfernt werden.

    Daher hängt das Änderungsdatum höchstwahrscheinlich davon ab, wann ein Prozess es aktualisiert hat. In diesem Fall kann es sein, dass die Symbole aus dem Thema verwendet wurden.

    Es gibt tatsächlich einen Befehl zum Aktualisieren des genannten Symbolcaches gtk-update-icon-cache.

Quellen und weitere Informationen:

Grün
quelle