GNU/Linux >> Tutoriels Linux >  >> Linux

Pourquoi les systèmes d'exploitation ont-ils des limites de taille de fichier ?

Les systèmes de fichiers doivent stocker des tailles de fichiers (soit en octets, soit dans une unité dépendante du système de fichiers, telle que des secteurs ou des blocs). Le nombre de bits alloués à la taille est généralement figé lors de la conception du système de fichiers.

Si vous autorisez trop de bits pour la taille, vous faites en sorte que chaque fichier prenne un peu plus de place et que chaque opération soit un peu plus lente. D'un autre côté, si vous autorisez trop peu de bits pour la taille, les gens se plaindront un jour parce qu'ils essaient de stocker un fichier de 20 Eb et votre système de fichiers de merde ne les laissera pas faire.

À l'époque où les systèmes de fichiers que vous mentionnez ont été conçus, avoir un disque suffisamment grand pour atteindre la limite ressemblait à de la science-fiction. (Sauf FAT32, mais l'entreprise qui en a fait la promotion l'a conçu comme une mesure intermédiaire avant que tout le monde n'adopte son tout nouveau NTFS, et ils n'ont jamais été très bons pour anticiper les besoins croissants.)

Une autre chose est que jusqu'à la fin du siècle dernier, la plupart des matériels grand public (et même des serveurs) ne pouvaient accepter que des calculs rapides avec des valeurs 32 bits, et les systèmes d'exploitation avaient tendance à utiliser des valeurs 32 bits pour la plupart des choses, y compris la taille des fichiers. 32 bits signifie 4 Go, donc les systèmes d'exploitation avaient tendance à être limités à des fichiers de 4 Go quel que soit le système de fichiers, souvent même 2 Go car ils utilisaient des entiers signés. De nos jours, tout système d'exploitation de bureau ou de serveur sérieux utilise 64 bits pour la taille des fichiers et les décalages, ce qui place la limite à 8 Eb.


Les structures de données sur disque sont généralement la limite. Recherchez comment ces systèmes d'exploitation formatent leurs disques et comment ils suivent les portions de fichiers sur le disque, et vous comprendrez pourquoi ils ont ces limitations. Le système de fichiers FAT est assez bien documenté en ligne (voir Wikipedia, par exemple) et vous pouvez voir que leur choix de tailles entières pour certains champs de structure de disque finit par limiter la taille globale du fichier que vous pouvez stocker avec ce format de disque.


Linux
  1. Pourquoi la méthode suivante ne modifie-t-elle pas la taille limite du fichier principal ?

  2. Pourquoi Ls et Hexdump ne sont-ils pas d'accord sur la taille du fichier ?

  3. Pourquoi devons-nous passer deux fois le nom du fichier dans les fonctions Exec ?

  4. Limiter la taille de téléchargement des fichiers dans NGINX

  5. Systèmes de fichiers Linux :Ext2 contre Ext3 contre Ext4

Pourquoi j'utilise exa au lieu de ls sous Linux

FSTAB &MTAB

Les 3 meilleurs systèmes d'exploitation pour serveurs Linux en 2021

Top 10 des systèmes d'exploitation basés sur Unix

Réduire la taille du fichier PDF sous Linux

Avoir un fichier nommé ~ (tilde) dans mon répertoire personnel