5

Просто вспомнил кое-что из класса ОС о фрагментации и задавался вопросом, знает ли кто-нибудь наверняка, может ли файл ВМ стать фрагментированным, если вы с самого начала скажете, какого размера должен быть жесткий диск.

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

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

Например, если у меня свободно 30 гигабайт и я создаю виртуальный файл размером 20 гигабайт (фиксированный размер), вполне вероятно, что файл не занимает непрерывное место на моем жестком диске. В идеальном мире дефрагментация может исправить это.

Но, скажем, у меня есть 150 гигабайт бесплатно, я добавляю виртуальную машину 20 гигабайт (фиксированный размер), а затем загружаю весь Star Trek The Next Generation, оставляя мне 5 гигабайт свободного места. Я открываю и закрываю свою виртуальную машину 900 раз. У меня есть фрагментация в моей виртуальной машине, или она все еще занимает тот же самый непрерывный кусок?

5 ответов5

4

, Если вы предварительно выделить все пространство, вместо того , чтобы иметь растет по мере необходимый объем, то не должно быть никакой фрагментации.

Я не знаю наверняка, но я думаю, что было бы разумно предварительно выделить все пространство, а затем выполнить дефрагментацию диска, чтобы быть уверенным.

4

Хост-ОС обрабатывает файл *.vmdk как любой другой большой файл - если он создается в непрерывном пространстве и не меняет размер, он останется таким. (Я предполагаю, что нет сжатия, шифрования, велоцирапторов или других необычных факторов)

Пока файл не меняет размер, у ОС нет причин перемещать сектора на диске. Ситуация такая же с файлом подкачки фиксированного размера.

О функции "снимков" VMware: каждый снимок хранится в отдельном файле. Ваше основное изображение может называться blah-flat.vmdk , а затем ваши снимки будут называться как что-то вроде blah-00000001.vmdk , blah-0000002.vmdk и т.д. Размер вашего плоского файла никогда не изменится, но файлы снимков могут и поэтому может стать фрагментированным.

Наконец, дефрагментатор Windows (IIRC) перечисляет файлы, которые он не смог дефрагментировать - это был бы самый авторитетный источник информации.

2

Жесткий диск виртуальной машины может обрабатываться так же, как обычный жесткий диск, включая фрагментацию.

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

1

Существует два уровня фрагментации (если vm-диск хранится в виде файла на хост-компьютере), фрагментация, вызванная файловой системой на хост-компьютере, и фрагментация в гостевой файловой системе.

Но если предположить, что ваш предварительно выделенный vm-диск совершенно не фрагментирован, то у виртуальной машины нет причин для повторного создания / перестановки vm-диска, и он будет использовать то, что существует. Таким образом, сама по себе виртуальная машина не имеет причин вызывать фрагментацию в файловой системе хоста.

Но в зависимости от файловой системы хоста (возможно) нет никакой гарантии, что она навсегда останется нефрагментированной, если файловая система решит, что ей нужно упорядочить некоторые файлы, которые она может сделать (если есть файловые системы, которые делают это или нет, я понятия не имею, рассмотрим эту теорию). Я не специалист по файловой системе, но если нет причины (не видишь?) для этого, я сомневаюсь, что это просто случайным образом фрагментирует файлы для развлечения. Так что в большинстве случаев это останется не разделенным на части.

Но гостевая файловая система, конечно же, все равно будет фрагментирована (может быть, не очень много, только при открытии / закрытии 900 раз).

И если файловая система хоста фрагментирует файл vm-disk, внутренняя гостевая файловая система может показаться совершенно неуправляемой, когда в действительности это полный беспорядок, гость будет совершенно не подозревать об этом.

0

Виртуальные жесткие диски такие же, как обычные жесткие диски, не имеет значения, что они хранятся в файловом контейнере, а не на физическом диске. Если вы используете Windows на виртуальной машине, это то же самое, что запуск Windows на вашем компьютере. Операционная система по-прежнему работает так же, и диск также может стать фрагментированным.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .