1

Допустим, у меня есть жесткий диск емкостью 1 ТБ, а компьютер сообщает, что 750 ГБ из него бесплатны. Как компьютер определяет, свободен ли определенный объем пространства на жестком диске или нет? Я спрашиваю, потому что для всех, кого я знаю, оба этих типа пробелов - это просто набор магнитных значений 0 и 1.

1 ответ1

5

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

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

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

Механики, которые я описываю, связаны с файловой системой NTFS, и хотя метаданные файловой системы по-разному проявляются для разных типов файловых систем, все они имеют одни и те же общие понятия для определения и описания файлов на диске.

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