Нет ограничений на количество записей в каталоге ни в POSIX, ни в типичных реализациях Unix. Может существовать косвенное ограничение на количество подкаталогов, которое составляет максимальное количество жестких ссылок (запись ..
каждого подкаталога является жесткой ссылкой на каталог); это 2 16 для многих распространенных файловых систем, что ограничивает каталог до 65533 подкаталогов (по крайней мере, для тех файловых систем, которые явно хранят записи ..
). Еще до этого вы начнете падать с плохой производительностью. Согласно POSIX, реализация может поддерживать только 8 жестких ссылок на файл ( _POSIX_LINK_MAX
), но фактическая реализация не ограничивается 6 подкаталогами. В любом случае, во многих файловых системах, включая ext4, количество жестких ссылок не поддерживается для записей ..
, поэтому единственным ограничением является количество места или количество inode, доступных в файловой системе.
POSIX мало что говорит об организации файлов в системе. Он только требует наличия нескольких файлов . Единственными обязательными записями в корневом каталоге являются / dev
и / tmp
. Другие обычные записи Unix, такие как / usr
, / var
, / bin
, / etc
, / lib
, / home
и т. Д. - это соглашения Unix , которые не кодируются POSIX.
В Linux FHS кодифицирует классику и некоторые другие. Большинство дистрибутивов Linux придерживаются записей FHS.Другие системы Unix обычно имеют в основном такие же записи, возможно, с некоторыми отличиями, но их количество примерно такое же.
Системные администраторы могут создавать больше, хотя это не рекомендуется: для большинства вещей есть четко определенные места (программное обеспечение находится в / usr
или / opt
, системные данные - в / var
, пользовательские данные находятся в / net
, точки монтирования находятся в / media
или / mnt
и т. Д.), Поэтому есть редко есть веская причина для создания новых каталогов на верхнем уровне.
Это полностью зависит от того, что делают процессы. приятный процесс с радостью пропустит другие процессы мимо себя в очереди выполнения, но все равно получит 100% ЦП (или столько, сколько ему нужно ), если нет другого процесса, которому требуется это на данный момент.