'\" t .\" Title: readprofile .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.26 .\" Date: 2026-09-02 .\" Manual: Administracja systemem .\" Source: util-linux 2.42.3 .\" Language: English .\" .TH "READPROFILE" "8" "2026-09-02" "util\-linux 2.42.3" "Administracja systemem" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "NAZWA" readprofile \- wyświetla informacje profilujące jądra .SH "SKŁADNIA" .sp \fBreadprofile\fP [opcje] .SH "WERSJA" .sp Niniejszy podręcznik dokumentuje wersję 2.0 programu. .SH "OPIS" .sp Polecenie \fBreadprofile\fP używa informacji z \fI/proc/profile\fP do wypisywania danych ascii na standardowe wejście. Wynik jest zorganizowany w trzech kolumnach: w pierwszej jest podana liczba cykli zegara, w drugiej nazwa funkcji C w jądrze gdzie te cykle wystąpiły, w trzeciej znormalizowane obciążenie procedury, obliczone jako współczynnik pomiędzy liczbą cykli a wielkością procedury. Wynik jest wypełniany odstępami, aby go uczytelnić. .sp This utility is a diagnostic tool and is not designed or intended for use in security\-sensitive contexts (e.g., setuid, setgid, sudo, or similar privilege\-elevation scenarios). It is installed without any special permissions. .SH "OPCJE" .sp \fB\-a\fP, \fB\-\-all\fP .RS 4 Wypisuje wszystkie symbole z pliku mapy. Domyślnie, procedury ze zgłoszonymi cyklami nie są wypisywane. .RE .sp \fB\-b\fP, \fB\-\-histbin\fP .RS 4 Wypisuje poszczególne liczniki histogram\-bin. .RE .sp \fB\-i\fP, \fB\-\-info\fP .RS 4 Informacja. \fBreadprofile\fP jedynie wypisze krok profilowania używany przez jądro. Krok profilowania to rozdzielczość bufora profilowania, wybierana przy konfiguracji jądra (za pomocą \fBmake config\fP) lub z wiersza polecenia jądra. Jeśli zastosuje się przełącznik \fB\-t\fP (terse \- zwięźle) wraz z \fB\-i\fP, to wypisze samą liczbę dziesiętną. .RE .sp \fB\-m\fP, \fB\-\-mapfile\fP \fIplik\-mapy\fP .RS 4 Określa plik mapy, domyślnym jest \fI/boot/System.map\fP. Plik mapy należy podać w wierszu polecenia wtedy, gdy bieżące jądro nie jest ostatnim, jakie się kompilowało albo chce się przechowywać System.map w innym miejscu. Jeśli nazwa pliku mapy kończy się rozszerzeniem \fI.gz\fP, jest rozpakowywana w locie. .RE .sp \fB\-n\fP, \fB\-\-no\-auto\fP .RS 4 Wyłącza automatyczne wykrywanie kolejności bajtów. .RE .sp \fB\-M\fP, \fB\-\-multiplier\fP \fImnożnik\fP .RS 4 Na niektórych architekturach można zmienić częstotliwość, z jaką jądro dostarcza przerwania profilowania do każdego procesora. Opcja ta pozwala ustawić częstotliwość, jako wielokrotność częstotliwości zegara systemowego w HZ. Linux 2.6.16 porzucił obsługę mnożnika w większości systemów. Opcja resetuje również bufor profilowania i wymaga uprawnień superużytkownika. .RE .sp \fB\-p\fP, \fB\-\-profile\fP \fIplik\-profilowania\fP .RS 4 Określa inny bufor profilowania, zamiast domyślnego \fI/proc/profile\fP. Stosowania innego pliku\-profilowania jest przydatne, gdy chce się "zamrozić" profilowanie jądra na jakiś moment i odczytać je później. Plik \fI/proc/profile\fP można kopiować za pomocą \fBcat\fP(1) lub \fBcp\fP(1). Obecnie nie są już obsługiwane skompresowane bufory profilowania, jak miało to miejsce w \fBreadprofile\-1.1\fP, ponieważ program z góry musi znać rozmiar bufora. .RE .sp \fB\-r\fP, \fB\-\-reset\fP .RS 4 Reset the profiling buffer. This can only be invoked by root, because \fI/proc/profile\fP is readable by everybody but writable only by the superuser. .RE .sp \fB\-s, \-\-counters\fP .RS 4 Wypisuje poszczególne liczniki wewnątrz funkcji. .RE .sp \fB\-v\fP, \fB\-\-verbose\fP .RS 4 Tryb szczegółowy. Wynik jest zorganizowany w czterech kolumnach i wypełniany odstępami. Pierwsza kolumna zawiera adres pamięci RAM funkcji jądra, w drugiej jest nazwa funkcji, w trzeciej liczba cykli zegara, a w ostatniej znormalizowane obciążenie. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 Wyświetla ten tekst i wychodzi. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 Wyświetla wersję i wychodzi. .RE .SH "PLIKI" .sp \fI/proc/profile\fP .RS 4 Binarna migawka bufora profilowania. .RE .sp \fI/usr/src/linux/System.map\fP .RS 4 Tablica symboli jądra. .RE .sp \fI/usr/src/linux/*\fP .RS 4 Profilowany program :\-) .RE .SH "USTERKI" .sp \fBreadprofile\fP działa tylko z jądrami 1.3.x lub nowszymi, ponieważ krok \fI/proc/profile\fP zmienił się pomiędzy wersjami 1.2 i 1.3. .sp Program działa tylko z jądrami ELF. Zmiana wymagana do działania z jądrami a.out jest trywialna i pozostawia się ją jako ćwiczenie dla użytkownika a.out. .sp Do włączenia profilowania konieczne jest przeładowanie jądra, ponieważ nie jest dostępny moduł profilowania, a jego zbudowanie nie byłoby łatwe. Do włączenia profilowania można podać \fBprofile\fP=\fI2\fP (lub z inną liczbą) w wierszu polecenia jądra. Podana liczba jest potęgą dwójki służącą jako krok profilowania. .sp Profilowanie jest wyłączone, gdy wstrzymane są przerwania. Oznacza to, że wiele cykli profilowania wystąpi przy wznowieniu przerwań. Należy wystrzegać się tych mylących informacji. .SH "PRZYKŁAD" .sp Przeglądanie bufora profilowania według cykli zegara: .sp .if n .RS 4 .nf .fam C readprofile | sort \-nr | less .fam .fi .if n .RE .sp Wypisanie 20 najbardziej obciążających procedur: .sp .if n .RS 4 .nf .fam C readprofile | sort \-nr +2 | head \-20 .fam .fi .if n .RE .sp Wypisanie jedynie profilu systemu plików: .sp .if n .RS 4 .nf .fam C readprofile | grep _ext2 .fam .fi .if n .RE .sp Sprawdzenie wszystkich informacji jądra, łącznie z adresami ram: .sp .if n .RS 4 .nf .fam C readprofile \-av | less .fam .fi .if n .RE .sp Przeglądanie "zamrożonego" bufora profilowania niedziałającego obecnie jądra: .sp .if n .RS 4 .nf .fam C readprofile \-p ~/profile.freeze \-m /zImage.map.gz .fam .fi .if n .RE .sp Żądanie profilowania przy 2kHz na procesor i zresetowanie bufora profilowania: .sp .if n .RS 4 .nf .fam C readprofile \-M 20 .fam .fi .if n .RE .SH "ZGŁASZANIE BŁĘDÓW" .sp Problemy należy zgłaszać w \c .URL "https://github.com/util\-linux/util\-linux/issues" "systemie śledzenia błędów" "." .SH "DOSTĘPNOŚĆ" .sp Polecenie \fBreadprofile\fP jest częścią pakietu util\-linux, który można pobrać ze strony \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "Archiwum jądra Linux" "."