Scroll to navigation

PROFIL(3) Manualul programatorului Linux PROFIL(3)

NUME

profil - profilul timpului de execuție

REZUMAT

#include <unistd.h>
int profil(unsigned short *buf, size_t bufsiz,
           size_t offset, unsigned int scale);


Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

profil():


Începând cu glibc 2.21:
_DEFAULT_SOURCE
În glibc 2.19 și 2.20:
_DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
Până la și inclusiv glibc 2.19:
_BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

DESCRIERE

Această rutină oferă un mijloc de a afla în ce zone programul dumneavoastră își petrece cel mai mult timp. Argumentul buf indică bufsiz octeți de memorie. La fiecare 10 milisecunde virtuale, este examinat contorul de program al utilizatorului (PC): offset se scade, iar rezultatul se înmulțește cu scale și se împarte la 65536. Dacă valoarea rezultată este mai mică decât bufsiz, atunci intrarea corespunzătoare din buf este incrementată. În cazul în care buf este NULL, profilarea este dezactivată.

VALOAREA RETURNATĂ

Întotdeauna se returnează zero.

ATRIBUTE

Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).

Interfață Atribut Valoare
profil() Siguranța firelor MT-Unsafe

ÎN CONFORMITATE CU

Similar cu un apel din SVr4 (dar nu POSIX.1).

ERORI

profil() nu poate fi utilizată într-un program care utilizează, de asemenea, cronometrele de interval ITIMER_PROF (a se vedea setitimer(2)).

Profilarea adevărată a nucleului oferă rezultate mai precise. Libc 4.4 conținea o corecție a nucleului care furniza un profil al apelurilor de sistem.

CONSULTAȚI ȘI

gprof(1), sprof(1), setitimer(2), sigaction(2), signal(2)

COLOFON -- NOTĂ FINALĂ

Această pagină face parte din versiunea 4.16 a proiectului Linux man-pages. O descriere a proiectului, informații despre raportarea erorilor și cea mai recentă versiune a acestei pagini pot fi găsite la https://www.kernel.org/doc/man-pages/.

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 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.

15 septembrie 2017 Linux