Provided by: manpages-ro-dev_4.27.0-1_all bug

NUME

       etext, edata, end - sfârșitul segmentelor de program

SINOPSIS

       extern etext;
       extern edata;
       extern end;

DESCRIERE

       Adresele acestor simboluri indică sfârșitul diferitelor segmente de program:

       etext  Aceasta este prima adresă după sfârșitul segmentului de text (codul programului).

       edata  Aceasta este prima adresă după sfârșitul segmentului de date inițializat.

       end    Aceasta  este  prima  adresă  după  sfârșitul  segmentului de date neinițializate (cunoscut și sub
              numele de segment BSS).

STANDARDE

       Niciunul.

ISTORIC

       Deși aceste simboluri  sunt  furnizate  de  mult  timp  în  majoritatea  sistemelor  UNIX,  ele  nu  sunt
       standardizate; utilizați-le cu prudență.

NOTE

       Programul  trebuie  să  declare  în  mod explicit aceste simboluri; ele nu sunt definite în niciun fișier
       antet.

       În unele sisteme, numele acestor simboluri sunt precedate de caractere  de  subliniere,  astfel:  _etext,
       _edata și _end.  Aceste simboluri sunt, de asemenea, definite pentru programele compilate în Linux.

       La  începutul  execuției  programului,  întreruperea programului se va afla undeva în apropierea lui &end
       (poate la începutul paginii următoare).  Cu toate acestea,  întreruperea  se  va  schimba  pe  măsură  ce
       memoria  este  alocată prin brk(2) sau malloc(3).  Utilizați sbrk(2) cu un argument de zero pentru a afla
       valoarea curentă a întreruperii programului.

EXEMPLE

       Atunci când este rulat, programul de mai jos produce un rezultat precum cel care urmează:

           $ ./a.out
           Prima adresă după:
               textul programului (etext)    0x8048568
               datele inițializate (edata)   0x804a01c
               datele neinițializate (end)   0x804a024

   Sursa programului

       #include <stdio.h>
       #include <stdlib.h>

       extern char etext, edata, end; /* Simbolurile trebuie să fie de un anumit tip,
                                         sau «gcc -Wall» se va plânge */

       int
       main(void)
       {
           printf("Prima adresă după:\n");
           printf("    textul programului (etext)   %10p\n", &etext);
           printf("    datele inițializate (edata)  %10p\n", &edata);
           printf("    datele neinițializate (end)  %10p\n", &end);

           exit(EXIT_SUCCESS);
       }

CONSULTAȚI ȘI

       objdump(1), readelf(1), sbrk(2), elf(5)

TRADUCERE

       Traducerea   în   limba   română   a   acestui   manual   a   fost   făcută   de   Remus-Gabriel    Chelu
       <remusgabriel.chelu@disroot.org>

       Această  traducere  este  documentație  gratuită;  citiți  Licența publică generală GNU Versiunea 3 sau o
       versiune  ulterioară  cu  privire  la  condiții  privind  drepturile  de  autor.   NU  se   asumă   NICIO
       RESPONSABILITATE.

       Dacă  găsiți  erori  în  traducerea  acestui manual, vă rugăm să trimiteți un e-mail la translation-team-
       ro@lists.sourceforge.net.

Pagini de manual de Linux 6.9.1                   15 iunie 2024                                           end(3)