Data segment

In computing, a data segment (often denoted .data) is a portion of an object file or the corresponding address space of a program that contains initialized static variables, that is, global variables and static local variables. The size of this segment is determined by the size of the values in the program's source code, and does not change at run time. This segmenting of the memory space into discrete blocks with specific tasks carried over into the programming languages of the day and the concept is still widely in use within modern programming languages.

Comment
enIn computing, a data segment (often denoted .data) is a portion of an object file or the corresponding address space of a program that contains initialized static variables, that is, global variables and static local variables. The size of this segment is determined by the size of the values in the program's source code, and does not change at run time. This segmenting of the memory space into discrete blocks with specific tasks carried over into the programming languages of the day and the concept is still widely in use within modern programming languages.
Has abstract
enIn computing, a data segment (often denoted .data) is a portion of an object file or the corresponding address space of a program that contains initialized static variables, that is, global variables and static local variables. The size of this segment is determined by the size of the values in the program's source code, and does not change at run time. The data segment is read/write, since the values of variables can be altered at run time. This is in contrast to the read-only data segment (rodata segment or .rodata), which contains static constants rather than variables; it also contrasts to the code segment, also known as the text segment, which is read-only on many architectures. Uninitialized data, both variables and constants, is instead in the BSS segment. Historically, to be able to support memory address spaces larger than the native size of the internal address register would allow, early CPUs implemented a system of segmentation whereby they would store a small set of indexes to use as offsets to certain areas. The Intel 8086 family of CPUs provided four segments: the code segment, the data segment, the stack segment and the extra segment. Each segment was placed at a specific location in memory by the software being executed and all instructions that operated on the data within those segments were performed relative to the start of that segment. This allowed a 16-bit address register, which would normally be able to access 64 KB of memory space, to access 1 MB of memory space. This segmenting of the memory space into discrete blocks with specific tasks carried over into the programming languages of the day and the concept is still widely in use within modern programming languages.
Homepage
bravegnu.org
Hypernym
Portion
Is primary topic of
Data segment
Label
enData segment
Link from a Wikipage to an external page
blog.ooz.ie/2008/09/0x03-notes-on-assembly-memory-from.html
web.archive.org/web/20090202113414/http:/blog.ooz.ie/2008/09/0x03-notes-on-assembly-memory-from.html
www.bravegnu.org/gnu-eprog/c-startup.html
www.electroons.com/8051/ebooks/expert%20C%20programming.pdf
Link from a Wikipage to another Wikipage
.bss
Address space
Automatic variable
BSS segment
Call stack
Category:Executable file formats
Category:Memory management
Code segment
Computing
EEPROM
EPROM
Executable
File:Program memory layout.pdf
Global variable
Here document
Intel 8086
LIFO (computing)
Linker (computing)
Malloc
Mask ROM
Mmap
Object file
Perl
Process control block
Programmable read-only memory
Read-only memory
Ruby (programming language)
Run time (program lifecycle phase)
Sbrk
Segmentation (memory)
Segmentation fault
Stack (abstract data type)
Static local variable
Static variable
Uninitialized variable
Virtual address space
X86 architecture
SameAs
4YuXN
Data segment
Datensegment
m.05gp01
Q491179
Segment de données
قطعة بيانات (شبكات)
数据段
Subject
Category:Executable file formats
Category:Memory management
WasDerivedFrom
Data segment?oldid=1105687621&ns=0
WikiPageLength
7262
Wikipage page ID
1613235
Wikipage revision ID
1105687621
WikiPageUsesTemplate
Template:Cite book
Template:Cite web
Template:Main
Template:Reflist
Template:Visible anchor