Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.15;
Скачать: CL | DM;

Вниз

FAT32,NTFS и 65536 файлов...   Найти похожие ветки 

 
Art_Z   (2004-07-26 20:53) [0]

С другом спор уже пару месяцев:
Он утверждает,что в данных файловых системах невозможно создать более 65536 файлов!

По-моему это чушь!


 
Rouse_ ©   (2004-07-26 20:58) [1]

А проверить не судьба? :)
За пару месяцев давно уже тестовую программу можно было написать :)


 
Art_Z   (2004-07-26 21:05) [2]

Его это не удедило...:))


 
Rouse_ ©   (2004-07-26 21:10) [3]

> удедило
В смысле, его колбасит? :)


 
Art_Z   (2004-07-26 21:13) [4]

В смысле путаю кнопки!:)(давно хотел клаву с подсветкой...Есть такая?)

Это его не убедило!


 
uny   (2004-07-26 21:18) [5]

и правда проблема, многие не хотят убеждаться..


 
Rouse_ ©   (2004-07-26 21:32) [6]

> [4] Art_Z   (26.07.04 21:13)
Ты знаешь, если ты сделал тестовую программу которая при этом же парне создает кол-во файлов больше заявленной цифры и это его не убеждает, тогда тебе остается только спросить у него: "Паря, ты че - тупой?" :)


 
Art_Z   (2004-07-26 21:37) [7]

Обижать не охота...

А так ему это покажу,авось у него в мозгах проясниться...


 
Art_Z   (2004-07-26 21:39) [8]

А началось всё с того,что он меня начал убеждать,что Win98 лучше WinXP...

А вроде не геймер...


 
Fay ©   (2004-07-26 21:41) [9]

File System Specifications
The largest possible file for a FAT32 drive is 4GB minus 2 bytes. Applications can open files this large without special handling. However, 16-bit applications must use Int 21h Function 6Ch with the EXTENDED_SIZE flag.

The FAT32 file system includes four bytes per cluster within the file allocation table. This differs from the FAT16 file system, which contains 2 bytes per cluster, and the FAT12 file system, which contains 1.5 bytes per cluster within the file allocation table.

Note that the high 4 bits of the 32-bit values in the FAT32 file allocation table are reserved and are not part of the cluster number. Applications that directly read a FAT32 file allocation table must mask off these bits and preserve them when writing new values.

System Cluster limit  
FAT12 The count of data clusters is less than 4087 clusters.  
FAT16 The count of data clusters is between 4087 and 65526 clusters, inclusive.  
FAT32 The count of data clusters is between 65526 and 268,435,456 clusters, inclusive.


 
Кириешки ©   (2004-07-26 21:42) [10]

А мне вот вирус как-то попался, мерзкий примерзкий - "Japan"  называется. Сидел я как-то за компом 6 августа прошлого года и тут на экране сообщение такое :
"Сегодня трагическая для всей Японии дата - сброс Америкой бомбы "Little Boy" (Малыш) с урановой начинкой на город Хиросима. В честь каждого погибшего в тот жудкий день - на вашем компьютере будут созданы траурные файлы".
И пошло-поехало, давай винт хламить с жудкой скоростью, файла назывались таким образом :

"В память о 1 погибшем при взрыве бомбы в городе Хиросима.dll"
"В память о 2 погибшем при взрыве бомбы в городе Хиросима.dll"
"В память о 3 погибшем при взрыве бомбы в городе Хиросима.dll"
"В память о 4 погибшем при взрыве бомбы в городе Хиросима.dll"
"В память о 5 погибшем при взрыве бомбы в городе Хиросима.dll"
"В память о 6 погибшем при взрыве бомбы в городе Хиросима.dll"
"В память о 7 погибшем при взрыве бомбы в городе Хиросима.dll"
"В память о 8 погибшем при взрыве бомбы в городе Хиросима.dll"

Короче захламил вин под самые "помидоры". Захламил настолько - что проводник не мог открыть папки из-за слишком большого кол-ва файлов в них и маленькой оперативки у меня. Но с точностью могу сказать что файлов было много больше 65536. Вот так-то позать по всяким подозрительным сайтам в поисках cracka для Outpost Firewall Pro 2.1


 
Art_Z   (2004-07-26 21:42) [11]

А по-русски...


 
uny   (2004-07-26 21:45) [12]

траурные файлы, надо же..


 
Кириешки ©   (2004-07-26 21:50) [13]

>uny   (26.07.04 21:45) [12]

А вот мне было тогда не до смеха.


 
Rouse_ ©   (2004-07-26 21:52) [14]

И попробуй сказать что не создасться 999999 файлов :)

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
 private
   procedure NewFile(const Index: Integer);
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
 I: Integer;
begin
 ForceDirectories("C:\Test\");
 for I := 0 to 999999 do
 begin
   NewFile(I);
   Application.ProcessMessages;
 end;
 ShowMessage(Format("Типа фсе !!! %d файлов создано", [I]));
end;

procedure TForm1.NewFile(const Index: Integer);
var
 F: TextFile;
begin
 AssignFile(F, "C:\Test\" + IntToStr(Index) + ".txt");
 try
   Rewrite(F);
 finally
   CloseFile(F);
 end;
end;

end.


 
Art_Z   (2004-07-26 21:53) [15]

>Rouse_

У меня примерно тоже...

Но мне было лень ждать...


 
keymaster ©   (2004-07-26 21:55) [16]

Невозможное возможно. (C) ADIDAS

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
 private
   Procedure CreateNewFile(L : LongWord);
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
 D : LongWord;
begin
 d := 1;
 While d < 7000 do
 begin
   CreateNewFile(d);
   Application.ProcessMessages;
   inc(D);
 end;
 MessageDlg("ok", mtWarning, [mbOK], 0);
end;

Procedure TForm1.CreateNewFile(L : LongWord);
var
 F : TextFile;
 FN : TFileName;
begin
   FN :=  inttostr(L)+".txt";
   AssignFile(F, FN);
   Rewrite(F);
   CloseFile(F);
end;

end.


 
keymaster ©   (2004-07-26 21:56) [17]

Точнее -

d := 1;
While d < 70000 do
begin
  CreateNewFile(d);


 
Art_Z   (2004-07-26 21:58) [18]

У меня всё равно прощё обоих вариантов...


 
keymaster ©   (2004-07-26 21:59) [19]

Создалось 69999 файлов (согласно условию цикла)
69999 > 65536


 
keymaster ©   (2004-07-26 21:59) [20]

2 Art_Z  
Поделишься своим способом?


 
Rouse_ ©   (2004-07-26 22:04) [21]

Всеравно советую эти програмки не запускать ибо заколебетесь потом удалять папку с энтим мусором (хотя можно тоже программку написать :)


 
Art_Z   (2004-07-26 22:05) [22]

Набор символов из которых составляется имя файла...

Но результат тотже...


 
Art_Z   (2004-07-26 22:06) [23]

>Rouse_

Я запустил...

Папка жить не мешает...

Будет время-удалю...


 
keymaster ©   (2004-07-26 22:31) [24]

Удаление кучи файлов

procedure TForm1.Button1Click(Sender: TObject);
var
 D : LongWord;
 FN : TFileName;
begin
 d := 1;
 While d < 70000 do
 begin
   FN := "d:\555555\"+ inttostr(D)+".txt";
   try
     DeleteFile(fn);
   finally
   end;
   Application.ProcessMessages;
   inc(D);
 end;
 MessageDlg("ok", mtWarning, [mbOK], 0);
end;



 
keymaster ©   (2004-07-26 22:34) [25]

Пометка:
В приведённов коде
папка d:\555555 - это локальная папка
в которой создавалась и какое-то время
существовала куча файлов.


 
Gero ©   (2004-07-27 01:27) [26]


> Удаление кучи файлов

Shift+Del


 
Reindeer Moss Eater ©   (2004-07-27 08:44) [27]

Твой друг просто слышал про известный баг Нортон Командера связанный с большим количеством файлов в одной папке.
Испорченный телефон.


 
Шел мимо   (2004-07-27 10:09) [28]

У меня на данный момент на 180Гб винте с NTFS более 3х миллионов файлов. И все шустро работает :)


 
Anatoly Podgoretsky ©   (2004-07-27 10:13) [29]

Reindeer Moss Eater ©   (27.07.04 08:44) [27]
Его друг заслуживает трех букв


 
Думкин ©   (2004-07-27 10:15) [30]

> [29] Anatoly Podgoretsky ©   (27.07.04 10:13)

Это к Игорю.


 
Ertong ©   (2004-07-27 10:32) [31]

А на дискету 224 файла точно не запишите:)


 
Anatoly Podgoretsky ©   (2004-07-27 10:39) [32]

Ertong ©   (27.07.04 10:32) [31]
Это еще почему, даже на 360 к можно больше записать


 
Ertong ©   (2004-07-27 10:45) [33]


> Это еще почему, даже на 360 к можно больше записать

У меня на 224-м файле FAR отказывается писать


 
Игорь Шевченко ©   (2004-07-27 11:13) [34]

Ertong ©   (27.07.04 10:45)


> У меня на 224-м файле FAR отказывается писать


Надеюсь, ты уже нашел причину ?


 
Ertong ©   (2004-07-27 11:22) [35]


> Надеюсь, ты уже нашел причину ?

Надеятся, конечно, можно, но это не так :)
Если посмотреть свойства этих файлов(explorer"oм) то их обьем 1012 байт, а на диске 112 Кб. Но в этом я причину не увидел, ведь еще много места осталось.


 
Sandman25 ©   (2004-07-27 11:23) [36]

[35] Ertong ©   (27.07.04 11:22)

И дискета не была вытащена/повреждена, и следующий файл имел размер меньше "емкость дискеты" - 112Кб?


 
Anatoly Podgoretsky ©   (2004-07-27 11:25) [37]

Ertong ©   (27.07.04 10:45) [33]
Не показывай свой непрофессионализм как пользователя ОС


 
Ertong ©   (2004-07-27 11:28) [38]


> И дискета не была вытащена/повреждена

format a: - рапортирует полную исправность :)


>  на диске 112 Кб

Я же сказал в свойствах(те что в explorer"e), там пишется обьем, который занимают реально фалы на диске. Потом тот же explorer пишет, что на дискете осталось еще 1,28 Мб места.


 
Sandman25 ©   (2004-07-27 11:36) [39]

[38] Ertong ©   (27.07.04 11:28)

Тогда остается только выкинуть far и пользоваться чем-то другим, например, стандартным проводником windows


 
Думкин ©   (2004-07-27 11:50) [40]

А вы попробуйте записать 225 файлов на дискету. У меня не получилось, и через проводник тоже.


 
Sandman25 ©   (2004-07-27 11:51) [41]

[40] Думкин ©   (27.07.04 11:50)

Уже завтра. Сегодня нет с собой дискеты.


 
Gero ©   (2004-07-27 11:53) [42]


> Тогда остается только выкинуть far и пользоваться чем-то
> другим, например, стандартным проводником windows

Советую Total Commander. ИМХО он - The best.


 
Думкин ©   (2004-07-27 11:54) [43]

>  [42] Gero ©   (27.07.04 11:53)

И им тоже не получилось.


 
Sandman25 ©   (2004-07-27 11:56) [44]

[43] Думкин ©   (27.07.04 11:54)

Значит, Ertong - квалифицированный пользователь, а у меня не было знаний о максимальном числе файлов на дискете.
Кстати, это ограничение на уровне каталогово или всего диска? Позволяет ли создать 2 каталога по 130 файлов в каждом?


 
Gero ©   (2004-07-27 11:57) [45]


> Думкин ©   (27.07.04 11:54)

Вы меня заинтриовали.
Пойду попробую.

P.S. Вы не будете против если я буду с Вами на ты?


 
Игорь Шевченко ©   (2004-07-27 11:57) [46]

http://www.microsoft.com/resources/documentation/Windows/XP/all/reskit/en-us/Default.asp?url=/resources/documentation/Wi ndows/XP/all/reskit/en-us/prkc_fil_tdrn.asp

Эт по поводу файловых систем и 655536 файлов.


 
Ertong ©   (2004-07-27 12:03) [47]


> А вы попробуйте записать 225 файлов на дискету.

Я считал с 0.


> Позволяет ли создать 2 каталога по 130 файлов в каждом?

Поидее можно! Создал 223 файла в корне и папку, а в папке еще 5 файлов. Вышло!


 
Sandman25 ©   (2004-07-27 12:06) [48]

[47] Ertong ©   (27.07.04 12:03)

Понятно, спасибо. Значит, для каждого каталога выделеятся 1110 0000b слотов для файлов.


 
Anatoly Podgoretsky ©   (2004-07-27 12:07) [49]

Никаких проблем, только что скопировал 600 файлов на дискету


 
Думкин ©   (2004-07-27 12:08) [50]

> [45] Gero ©   (27.07.04 11:57)

Я к нетикету отношусь положительно. Конечно.


 
Sandman25 ©   (2004-07-27 12:09) [51]

[49] Anatoly Podgoretsky ©   (27.07.04 12:07)

Получается, что бывают разные файловые системы для дискет?...


 
Думкин ©   (2004-07-27 12:10) [52]

> [49] Anatoly Podgoretsky ©   (27.07.04 12:07)

В один каталог?


 
Anatoly Podgoretsky ©   (2004-07-27 12:14) [53]

Думкин ©   (27.07.04 12:10) [52]
Да в один каталог, вот сейчас еще 600 туда же копируется. Ограничение задается файловой системой. На дискетах FAT12, но нет ограничения на количество файлов, по крайней мере на дискетах его не реально достигнуть.

Для интересующих Руководство пользователя по файловой системе MS DOS, оно распространяется на дос начиная с 2.0 и до 2003 для FAR


 
Думкин ©   (2004-07-27 12:31) [54]

> [53] Anatoly Podgoretsky ©   (27.07.04 12:14)

Да в каталог засунул много. А вот в корень....


 
Sandman25 ©   (2004-07-27 12:33) [55]

[54] Думкин ©   (27.07.04 12:31)

Кстати, а может и для C:\ есть такое же ограничение?


 
Anatoly Podgoretsky ©   (2004-07-27 12:34) [56]

А вот в корень смотрим указаное руководство, для FAT12 - 224 файла. У меня каждой заразе (пользователю) сказано в корень писать запрещено, это для системы и любые файлы в корне уничножаются не гляда. Кстати разместил уже свыше 1000 файлов, надоело слушать как головка шуршит.


 
Игорь Шевченко ©   (2004-07-27 12:36) [57]

Думкин ©   (27.07.04 12:31)

А на корень отдельные ограничения :)

http://www.pcguide.com/ref/hdd/file/fatRoot-c.html


 
Думкин ©   (2004-07-27 12:37) [58]

> [56] Anatoly Podgoretsky ©   (27.07.04 12:34)
> А вот в корень смотрим указаное руководство, для FAT12 -
> 224 файла. У меня каждой заразе (пользователю) сказано в
> корень писать запрещено

Да уж. Век живи - век учись. Больше не буду заразой. :))


 
Ertong ©   (2004-07-27 13:01) [59]


> [57] Игорь Шевченко ©   (27.07.04 12:36)

по вашей ссылке написано, что на хард ограничения в 512. Я создал уже 22000 :)

Хочу попробовать до 65535, но это уже где-то вечером.


 
Anatoly Podgoretsky ©   (2004-07-27 13:03) [60]

Under FAT32, the root directory is treated much more like a regular directory, and can be relocated and expanded in size like any other. (It"s still a good idea not to load up the root directory with too many files.)

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


 
Gero ©   (2004-07-27 13:05) [61]

А реально ли дискету под NTFS форматнуть?


 
Anatoly Podgoretsky ©   (2004-07-27 13:12) [62]

Gero ©   (27.07.04 13:05) [61]
Интересный вопрос, пробовать надо. НО кажется нет.


 
AndB ©   (2004-07-27 13:30) [63]

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


 
Anatoly Podgoretsky ©   (2004-07-27 13:38) [64]

AndB ©   (27.07.04 13:30) [63]
Ты наверно догадываешься, что для каталога тоже нужны кластеры


 
Игорь Шевченко ©   (2004-07-27 13:38) [65]

Gero ©   (27.07.04 13:05)

Что быстрее - вставить дискету и попробовать ее отформатировать или задать вопрос в форум ?


 
Gero ©   (2004-07-27 13:52) [66]


> Игорь Шевченко ©   (27.07.04 13:38)

Если бы я не пробовал - не задавал бы вопрос в форум.
Но если у меня не получилось, это не значит что это невозможно, не так ли?


 
Anatoly Podgoretsky ©   (2004-07-27 14:03) [67]

Gero ©   (27.07.04 13:52) [66]
Это значит что эта операция бессмысленная, это переносная вещь, что же с ней заодно еше и компьютер носить, на котором эта дискета сделана.
Это уже другое руководство по файловой системе NTFS


 
AndB ©   (2004-07-27 14:48) [68]

к слову: zip также вещь переносная, однако, позволяет. flash тоже. Странно? ;)


 
Игорь Шевченко ©   (2004-07-27 14:50) [69]

AndB ©   (27.07.04 14:48)

К слову: Zip и flash видны в системе, как жесткие диски. А для гибких только FAT


 
Ertong ©   (2004-07-28 08:25) [70]

У меня в корне создалось ровно 65521 файлов. Юольше не могет. ФАТ32


 
Думкин ©   (2004-07-28 08:26) [71]

>  [70] Ertong ©   (28.07.04 08:25)

Ну ты зверь. А теперь дело за NTFS.


 
Ertong ©   (2004-07-28 08:33) [72]


> Ну ты зверь. А теперь дело за NTFS.

Сначала эти удалить нодо :)

Ну а NTFS, Надо раздел диска создать, поскольку все FAT32. Может попробую :)


 
Anatoly Podgoretsky ©   (2004-07-28 09:35) [73]

Ertong ©   (28.07.04 08:33) [72]
Проще всего и быстрее format a: /q


 
Ertong ©   (2004-07-28 10:06) [74]


> Проще всего и быстрее format a: /q

С дискетой так и делал, а с винтом где кроме "мусора" есть еще что-то - нехорошо



Страницы: 1 2 вся ветка

Текущий архив: 2004.08.15;
Скачать: CL | DM;

Наверх




Память: 0.65 MB
Время: 0.034 c
1-1091462197
GuAV
2004-08-02 19:56
2004.08.15
Что лучше применить - отдельный Thread или ProcessMessages?


1-1091190213
johny
2004-07-30 16:23
2004.08.15
Как заставить маргать кнопку на панели задачь


14-1090950265
Art_Z
2004-07-27 21:44
2004.08.15
Издательсво "Питер",серия "Для професионалов"


14-1091014194
peypivo
2004-07-28 15:29
2004.08.15
Для абонентов UMC и Киевстар


14-1090820397
syte_ser78
2004-07-26 09:39
2004.08.15
как програмно создать ярлык?