Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Kirill Frolov                        2:5030/827.2   08 Feb 2004  07:27:08
 To : Andrew Alexandrov
 Subject : Re: FAT32 file size limit - кто виноват?
 -------------------------------------------------------------------------------- 
 
 
 On Mon, 02 Feb 04 08:02:44 +0300, Andrew Alexandrov wrote:
 
  AA> Почему в эхотаге 2.4.5 лимит на размер файла на разделе с FAT32 - 2Gb
 
 вместо
 
  AA> положенных 4Gb. Кого винить и как пофиксить?
 
    Потому, что в FAT32, как и в любом FAT, на размер файла отведено 32
 разряда. Двоичные числа со знаком представляются в ЭВМ таким образом,
 что самый старший разряд содержит знак числа. Таким образом, остаётся 31
 двоичный разряд на представление размера файла. Это 2^31 == 2ГБайт - 1 байт.
 
   Возникает вопрос -- а почему со знаком?  А потому, что программы так
 написаны, что очень часто используются именно числа со знаком, для хранения
 каких угодно величин. Теоретически, с помощью дискового редактора например,
 возможно создать файл размером 4ГБайт - 1 байт.
 
   Почему минус один байт? Потому, что 0 означает именно то что он и
 означает -- пустой файл, а все 32 установленных разряда -- 4ГБайт - 1 байт.
 Так вот файл такого размера создать можно, но значительная часть
 программ, с ним корректно работать не сможет, как раз из-за знакового
 разряда. Файл получит отрицательный размер. 
 
   Хочу особо подчеркнуть: файл размером ДВА ГИГАБАЙТА тоже невозможно
 создать. Максимальный размер файла для любой модификации файловой
 системы FAT -- ДВА ГИГАБАЙТА МИHУС ОДИH БАЙТ. Именно так. Поэтому
 говорить об /максимальном размере файла/ в 2 ГБайт некорректно, на самом
 деле верхний предел меньше ровно на один байт.
 --- [ZX]
  * Origin: Это письмо написано в Vim (2:5030/827.2)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 FAT32 file size limit - кто виноват?   Andrew Alexandrov   02 Feb 2004 09:02:44 
 Re: FAT32 file size limit - кто виноват?   Alex Korchmar   04 Feb 2004 01:30:50 
 Re: FAT32 file size limit - кто виноват?   Kirill Frolov   08 Feb 2004 07:27:08 
 Re: FAT32 file size limit - кто виноват?   Boris Kassiantchouk   08 Feb 2004 14:01:28 
 FAT32 file size limit - кто виноват?   Sergei Dubarev   08 Feb 2004 21:14:26 
 Re: FAT32 file size limit - кто виноват?   Eugeny Chernetcki   09 Feb 2004 04:36:02 
 Re: FAT32 file size limit - кто виноват?   Kirill Frolov   09 Feb 2004 04:46:06 
Архивное /ru.linux/3833c7051a26.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional