Il segmento bss (indicato come .bss o bss) è una porzione di un programma che contiene variabili statiche che sono dichiarate ma non esplicitamente inizializzate. In alcuni sistemi operativi tale sezione viene inizializzata a zero quando il programma viene caricato in memoria.
Il nome della sezione è un acronimo di "block started by symbol" e deriva da un opcode presente nell'assembler per IBM 704.[1]
Alcune architetture presentano il segmento tbss che ha scopi analoghi per la programmazione a thread.[2]
- ^ (EN) Unix - Frequently Asked Questions (1/7), su faqs.org.
«Actually the acronym (in the sense we took it up; it may have other credible etymologies) is "Block Started by Symbol." It was a pseudo-op in FAP (Fortran Assembly [-er?] Program), an assembler for the IBM 704-709-7090-7094 machines.»
- ^ (EN) Special Sections, su Linux Standard Base PDA Specification, refspecs.linuxbase.org.
- Robert Love, Memory Management, in Linux System Programming, O'Reilly, 2007, p. 245, ISBN 978-0-596-00958-8.
- Marshall Kirk McKusick, George V. Neville-Neil e Robert N.M. Watson, Glossary, in The Design and Implementation of the FreeBSD Operating System, Addison-Wesley, 2015, p. 931, ISBN 978-0-321-96897-5.
- Douglas Comer, Basic Memory Management, in Operating System Design, CRC Press, 2012, p. 142, ISBN 978-1-4398-8111-8.