Icon-theme.cache là gì?


10

Khi tôi chạy lệnh sau trên LubFi 12.10 của tôi

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

Tôi nhận được những điều sau đây (sau khi thêm ngày và kích thước sửa đổi cuối cùng):

/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

Và tất cả các tệp này, như trong ví dụ dưới đây, thuộc loại TrueType font data:

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

Câu hỏi của tôi, tất cả liên quan chặt chẽ, là:

  • Cái gì icon-theme.cachevà chức năng của nó là gì? Ý nghĩa của cachenhững tên tập tin này là gì? Các thẻ nhớ cache định nghĩa là: " một bộ nhớ cache tạm thời dữ liệu lân cận để nó có thể được lấy ra nhanh hơn nhiều so lấy nó từ các cửa hàng thực sự ủng hộ (đĩa, mạng), hoặc tính toán lại kết quả một số trên một lần nữa ".
  • Tại sao kích thước tập tin rất đa dạng? Là gnomehicolornhững cái lớn nhất bởi vì chúng cung cấp các biểu tượng dự phòng (như tôi đọc ở đâu đó)?
  • Ngày tháng thì sao? Tôi chỉ chắc chắn về ubuntu-mononhững cái đó vì chúng đã xuất hiện khi tôi cài đặt light-themesvào năm 20130408. Vậy các tệp này có được sửa đổi trong quá trình chuyển đổi chủ đề hay ngày chỉ là sự phản ánh của ngày cài đặt?

Câu trả lời:


12

Để hiểu lý do tại sao chúng ta cần các tệp này, trước tiên bạn cần hiểu khái niệm ánh xạ tệp vào bộ nhớ .

Các tập tin được ánh xạ bộ nhớ : Các tập tin ánh xạ bộ nhớ là các phân đoạn của bộ nhớ ảo được ánh xạ trực tiếp vào một tập tin vật lý trên đĩa, từng byte một. Nó có một số lợi ích so với I / O dựa trên luồng truyền thống, chẳng hạn như hiệu suất trong khi truy cập ngẫu nhiên vào các tệp lớn hoặc khả năng chia sẻ bộ nhớ được ánh xạ giữa các luồng và quy trình khác nhau.

Truy cập các tập tin ánh xạ bộ nhớ nhanh hơn so với sử dụng các thao tác đọc và ghi trực tiếp vì hai lý do. Thứ nhất, một cuộc gọi hệ thống là các đơn đặt hàng có cường độ chậm hơn so với thay đổi đơn giản đối với bộ nhớ cục bộ của chương trình. Thứ hai, trong hầu hết các hệ điều hành, vùng bộ nhớ được ánh xạ thực sự là bộ đệm trang của kernel (bộ đệm tệp), nghĩa là không cần tạo bản sao trong không gian người dùng.

Bây giờ, lấy từng câu hỏi của bạn:

  1. Icon-theme.cache là gì và chức năng của nó là gì? Ý nghĩa của bộ đệm trong các tên tệp này là gì?

    Tệp icon-theme.cache chứa thông tin được lưu trong bộ nhớ cache về các biểu tượng trong cây thư mục bên dưới một thư mục nhất định (có thể là thư mục chứa index.themechủ đề cụ thể).

    GTK + có thể sử dụng các tệp bộ đệm để tránh nhiều cuộc gọi hệ thống và đĩa tìm kiếm trên đầu khi ứng dụng khởi động. Vì định dạng của các tệp bộ đệm cho phép chúng được ánh xạ bộ nhớ được chia sẻ giữa nhiều ứng dụng, nên mức tiêu thụ bộ nhớ chung cũng giảm theo.

  2. Tại sao kích thước tập tin rất đa dạng?

    Kích thước tệp tùy thuộc vào số lượng biểu tượng trong chủ đề biểu tượng.

  3. Ngày tháng thì sao?

    Nếu chúng ta lấy bộ nhớ cache, một cái gì đó chỉ xuất hiện trong bộ đệm nếu một số tiến trình truy cập vào một vị trí bộ nhớ cụ thể và vẫn ở đó trừ khi bộ đệm đầy và phần tử đó cần được loại bỏ.

    Do đó, ngày sửa đổi rất có thể phụ thuộc vào thời điểm một số quy trình cập nhật nó. Trong trường hợp này, có thể là khi các biểu tượng từ chủ đề được sử dụng.

    Thực sự, có một lệnh để cập nhật bộ đệm biểu tượng được đặt tên gtk-update-icon-cache.

Nguồn và thông tin thêm:

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.