En informatique, le nom .bss ou bss est utilisé par de nombreux compilateurs et éditeurs de liens pour désigner une partie du segment de données contenant les variables statiques représentées initialement (c'est-à-dire, quand l’exécution commence) uniquement par des bits à zéro. On l’utilise souvent dans des expressions telles que « section bss » ou « segment bss ». En C, les variables statiquement allouées sans initialisation explicite sont initialisées à zéro (pour les types arithmétiques) ou au pointeur nul (pour les types pointeurs). Les implémentations de C représentent typiquement les valeurs et les pointeurs nuls comme une suite de bits mis à zéro (bien que le standard C ne le requière pas). Partant, la section bss inclut typiquement toutes les variables non utilisées déclarées au niveau du fichier (c'est-à-dire, en dehors de toute fonction) ainsi que les variables locales non initialisées déclarées avec le mot-clef static. Une implémentation peut aussi assigner des variables allouées statiquement initialisées avec une valeur codée par une suite de bits à zéro dans cette section bss. Typiquement, le chargeur de programme initialise la mémoire allouée pour la section bss quand il charge le programme. Les systèmes d’exploitation peuvent utiliser une technique appelée « remplissage à la demande par des zéros » pour implémenter efficacement le segment bss. Dans un logiciel embarqué, le segment bss est lié à une mémoire qui est initialisée à zéro par l’exécuteur C avant que la fonction main() soit exécutée. Quelques interfaces binaire-programme prennent aussi en charge un segment sbss (pour “small data”). Typiquement, un code simple peut accéder à ces données en utilisant des instructions qui ne peuvent accéder qu’à une plage limitée d’adresses. Historiquement, BSS (“Block Started by Symbol”) était une pseudo-opération en UA-SAP (United Aircraft Symbolic Assembly Program), l’assembleur développé dans les années 1950 pour l’IBM 704 par Roy Nutt, Walter Ramshaw, et leur équipe à la United Aircraft and Transport Corporation .
Daniel Kuhn, Wolfram Wiesemann