Provided by: manpages-ro_4.21.0-2_all bug

NUME

       intro - introducere la apelurile de sistem

DESCRIERE

       Secțiunea  2  a  manualului  descrie apelurile de sistem Linux.  Un apel de sistem este un
       punct de intrare în nucleul Linux.  De  obicei,  apelurile  de  sistem  nu  sunt  invocate
       direct:   în   schimb,   majoritatea   apelurilor   de  sistem  au  funcții  de  învăluire
       corespunzătoare din biblioteca C care execută pașii  necesari  (de  exemplu,  trecerea  în
       modul  nucleu)  pentru  a invoca apelul de sistem.  Astfel, efectuarea unui apel de sistem
       arată la fel ca și invocarea unei funcții normale de bibliotecă.

       În multe cazuri, funcția de învăluire a bibliotecii C nu face nimic mai mult decât:

       •  copierea argumentelor și a numărului unic de apel  de  sistem  în  registrele  în  care
          nucleul le așteaptă;

       •  trecerea  în  modul  nucleu,  moment în care nucleul face adevărata muncă a apelului de
          sistem;

       •  definirea errno în cazul în care apelul de sistem returnează un număr de eroare  atunci
          când nucleul readuce CPU în modul utilizator.

       Cu  toate acestea, în unele cazuri, o funcție de învăluire poate face mai mult decât atât,
       de exemplu, poate efectua o preprocesare a argumentelor înainte de a trece în modul nucleu
       sau  o postprocesare a valorilor returnate de apelul de sistem.  În acest caz, paginile de
       manual din secțiunea 2 încearcă, în general, să noteze detaliile atât ale interfeței API a
       bibliotecii  C  (de  obicei  GNU),  cât și ale apelului de sistem brut.  Cel mai frecvent,
       DESCRIEREA principală se va concentra pe interfața bibliotecii C, iar  diferențele  pentru
       apelul de sistem sunt tratate în secțiunea NOTE.

       Pentru o listă a apelurilor de sistem Linux, consultați syscalls(2).

VALOAREA RETURNATĂ

       În  caz  de eroare, majoritatea apelurilor de sistem returnează un număr de eroare negativ
       (adică valoarea negată a uneia dintre  constantele  descrise  în  errno(3)).   Funcția  de
       învăluire a bibliotecii C ascunde acest detaliu apelantului: atunci când un apel de sistem
       returnează o valoare negativă, funcția de învăluire copiază valoarea absolută în variabila
       errno și returnează -1 ca valoare de întoarcere a funcției de învăluire.

       Valoarea returnată de un apel de sistem reușit depinde de apelul respectiv.  Multe apeluri
       de sistem returnează 0 în caz de succes, dar unele pot returna valori diferite de zero  în
       urma unui apel reușit.  Detaliile sunt descrise în paginile de manual individuale.

       În   unele   cazuri,   programatorul   trebuie   să   definească  o  macro  de  testare  a
       caracteristicilor pentru a obține declarația  unui  apel  de  sistem  din  fișierul  antet
       specificat  în  secțiunea  SYNOPSIS din pagina de manual.  (În cazul în care este necesar,
       aceste macrocomenzi de testare a caracteristicilor trebuie să fie definite  înainte  de  a
       include  fișiere  de antet any).  În astfel de cazuri, macrocomanda necesară este descrisă
       în pagina de manual.  Pentru informații suplimentare despre macrocomenzile  de  testare  a
       caracteristicilor, consultați feature_test_macros(7).

STANDARDE

       Anumiți  termeni  și  anumite  abrevieri  sunt  utilizate  pentru  a  indica variantele și
       standardele UNIX la care sunt  conforme  apelurile  din  această  secțiune.   A  se  vedea
       standards(7).

NOTE

   Apelarea directă
       În  cele  mai multe cazuri, nu este necesar să se apeleze direct la un apel de sistem, dar
       există momente în care biblioteca Standard C nu implementează o funcție de învăluire utilă
       pentru a face acest lucru.  În acest caz, programatorul trebuie să invoce manual apelul de
       sistem folosind syscall(2).  Din punct de vedere istoric, acest lucru era posibil și  prin
       utilizarea uneia dintre macrocomenzile _syscall descrise în _syscall(2).

   Autori și termenii drepturilor de autor
       Uitați-vă  în  antetul  paginii  sursă  a  manualului  pentru  a afla autorul (autorii) și
       condițiile de drepturi de autor.  Rețineți că acestea pot fi diferite de la  o  pagină  la
       alta!

CONSULTAȚI ȘI

       _syscall(2), syscall(2), syscalls(2), errno(3), intro(3), capabilities(7), credentials(7),
       feature_test_macros(7), mq_overview(7), path_resolution(7), pipe(7), pty(7),
       sem_overview(7), shm_overview(7), signal(7), socket(7), standards(7), symlink(7),
       system_data_types(7), sysvipc(7), time(7)

TRADUCERE

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

       Această traducere este documentație gratuită; citiți Licența publică generală GNU
       Versiunea 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ 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⟩.