Итак!
PD>Ну 100 Кб — это не большой, а маленький файл. Большой — это 10 Гбайт
PD>
. Но дело, конечно, не в этом.
Большой — относительно размера кластера

в смысле бОльше чем размер кластера.
>> Далее, если открыть диск (не файл), и начать в нем искать кусок своих данных, вы вполне его не найдете, ведь первая треть его находится в одном кластере, а вторая — совсем в другом, не идущем непосредственно за первым.
PD>Вот здесь твоя ошибка (точнее, непонимание) и заключается.
PD>Работа с файлами идет на разных уровнях.
PD>A.На нашем уровне (обычное Win32 приложение) файл — это
PD>последовательность байт определенного размера. Все. Больше ничего. Как
PD>они там хранятся — НАС ВООБЩЕ НЕ КАСАЕТСЯ. Хоть в кластерах, хоть с
PD>помощью духа святого. Мы этого не знаем, не хотим знать и не имеем права
PD>знать. В любом случае, для нас файл непрерывный. Других НЕ БЫВАЕТ.
Вполне возможно, я чего не понимаю. Постараюсь объяснить, что я имею в виду.
Представьте себе ситуацию: у вас есть некие данные в некоем файле. Допустим для вас они представляют собой расскз Тургенева. С физической точки зрения, это пресловутые нолики и единички.
Что случится с вашим рассказом при записи на сильно фрагментированные диск? — он тоже будет фрагментированным.
На физическом уровне фраза "возчик был невысокий, крепкого сложения" (точнее последовательность ноликов-единичек, ее представляющая) разорвется на (предположим) два куска "возчик был невы" и "сокий, крепкого сложения".
Далее представим ситуацию, когда вы файл случайно затерли. И теперь, единственная для вас возможность (на уровне А) восстановит ваш файл — открыть ваш диск — CreateFile("\\.\C",....) и считывать оттуда куски информации пока не найдете свою фразу.
Одна проблема — вы ее не найдете никогда- потому что физически она хранится разорвано.
Вот собственно, ход моих размышлений. Я не права?
PD>Я упростил. В действительности уровень B состоит из ряда подуровней
PD>(драйвер файловой системы, драйвер томов (кстати, он позволяет (о ужас!
PD>
хранить файл не только фрагментированным на диске, но хранить его
PD>куски на разных дисках вообще), драйвер физического диска. И каждый из
PD>этих подуровней ничего не знает о подуровне ниже и не хочет знать.
Мдаа... Сильно. а где можно про это прочитать? МСДН Дефрагментация — уже читала.
Я бы не сказала, что там очень подробно...