Оптимизируйте структуру файла для минимизации поиска в определенных ситуациях

Оптимизируйте структуру файла для минимизации поиска в определенных ситуациях

Запуск VLC на моей системе происходит медленно. Причина: он читает более 1000 разных .soфайлов. Есть ли способ заставить его читать эти файлы быстрее?

Я думаю, если бы все файлы следовали сразу друг за другом на диске, то диску не пришлось бы искать, а можно было бы просто продолжить чтение. Может быть, есть инструмент, чтобы перемещать блоки файлов в последовательные сектора?

Я использую ext4, если это имеет значение.

решение1

Есть ли способ ускорить чтение этих файлов?

Да:

Может быть, есть инструмент для перемещения блоков файлов в последовательные сектора?

Есть Accelerated Knoppix, который может сделать это для образа CD, но я не знаю ничего подобного для ext4...

решение2

Вы можете сжимать данные, и в зависимости от характера файлов это может значительно сократить использование диска, так что вы сможете получить больше данных с фактически меньшим количеством чтений.

В вашем случае сжатие двоичных файлов не сократит объем хранилища так сильно, как в случае с обычными текстовыми файлами, но все же поможет вашим данным располагаться последовательно на диске, что позволит читать файлы общей библиотеки с меньшим количеством поисков.

Вы можете использоватьСквошФСчтобы сделать сжатый образ /usr/lib. Используяауфсвы сопоставляете /usr/libдва других каталога. Один каталог чтения, который является вашим быстрым, сжатым образом squash, смонтированным как squashтипизированный раздел. И один каталог записи, который необходим для хранения обновлений, которые вы сделали /usr/libс момента создания сжатого образа. Через некоторое время, путем установки и удаления программного обеспечения, каталог записи будет расти, и тогда вы сможете переделать новый сжатый образ.Это руководство по Gentoo, которым я пользовался пару лет.

Связанный контент