НАЗВА
readprofile — витання даних профілювання ядраКОРОТКИЙ ОПИС
readprofile [параметри]ВЕРСІЯ
На цій сторінці підручника описано версію 2.0 програми.ОПИС
Програма readprofile використовує відомості /proc/profile для виведення даних ascii до стандартного виведення. Виведені дані буде поділено між трьома стовпчиками: у першому буде виведено такти годинника, у другому — назву функції C у ядрі, у якій відбулася ця кількість тактів, а у третьому — нормалізоване «навантаження» процедури, обчислене, як відношення кількості тактів до довжини процедури. Виведені дані буде доповнено пробілами для полегшення читання.ПАРАМЕТРИ
-a, --allВивести
усі
символи у
файлі
карти.
Типово,
процедури
із
повідомленими
позначками
виведено
не буде.
Вивести
окремі
значення
позначок
гістограми
.
Відомості.
Наказує readprofile
лише
вивести
крок
профілювання,
який
використано
ядром. Крок
профілювання
є
роздільністю
буфера
профілювання.
Його вибір
відбувається
під час
налаштовування
ядра (за
допомогою
make config) або у
рядку
команди
ядра. Якщо
використано
перемикач
-t (terse) разом із
-i, буде
виведено
лише
десяткове
число.
Вказати
файл карти,
типовим є
/usr/src/linux/System.map. Вам
слід
вказати
файл карти
у рядку
команди,
якщо ваше
поточне
ядро не є
останнім
ядром, яке
ви зібрали,
або якщо ви
зберігаєте
ваш System.map у
якомусь
нестандартному
місці. Якщо
назва
файла
карти
завершується
на .gz, його
вміст буде
розпаковано
на льоту.
На
деяких
архітектурах
можна
змінювати
частоту, з
якою ядро
надсилає
переривання
профілювання
до кожного
з
процесорів.
За
допомогою
цього
параметра
ви можете
встановити
частоту, як
коефіцієнт
частоти
годинника
системи, у
Гц. У Linux 2.6.16
відкинуто
підтримку
коефіцієнта
у
більшості
систем. Цей
параметр
також
скидає
буфер
профілювання.
Його
використання
потребує
привілеїв
надкористувача.
Вказати
інший
буфер
профілювання,
типовим є
/proc/profile.
Використання
іншого
профілю є
корисним,
якщо ви
хочете
«заморозити»
профілювання
ядра у
певний
момент
часу і
прочитати
його
пізніше.
Файл /proc/profile
може бути
скопійовано
за
допомогою
cat(1) або cp(1).
Підтримки
стиснених
буферів
профілювання,
подібних
до
передбачених
у *readprofile-1.1*, не
передбачено,
оскільки
програмі
потрібно
буде
наперед
знати
розмір
буфера.
Скинути
буфер
профілювання.
Цю команду
може бути
викликано
лише від
імені root,
оскільки
читання /proc/profile
може
здійснювати
будь-який
користувач,
а запис —
лише
надкористувач.
Втім, ви
можете
встановити
для readprofile set-user-ID 0,
щоб
скинути
буфер без
набуття
додаткових
прав
доступу.
Вивести
значення
окремих
лічильників
у
функціях.
Докладний
режим.
Виведені
дані буде
упорядковано
за чотирма
стовпчиками
і
доповнено
пробілами.
У першому
стовпчику
буде
показано
адресу
функції
ядра в
оперативній
пам'яті, у
другому —
назву
функції, у
третьому —
кількість
тактів
годинника,
а в
останньому
—
нормалізоване
навантаження.
Вивести
текст
довідки і
завершити
роботу.
Вивести
дані щодо
версії і
завершити
роботу.
ФАЙЛИ
/proc/profileДвійковий
знімок
буфера
профілювання.
Таблиця
символів
для ядра.
Програма,
профілювання
якої
виконується
:-)
ВАДИ
readprofile працює лише з ядром 1.3.x та новішими ядрами, оскільки /proc/profile було змінено десь між версіями 1.2 та 1.3.ПРИКЛАДИ
Навігація буфером профілювання, який упорядковано за тактами годинника:readprofile | sort -nr | less
readprofile | sort -nr +2 | head -20
readprofile | grep _ext2
readprofile -av | less
readprofile -p ~/profile.freeze -m /zImage.map.gz
sudo readprofile -M 20
ЗВІТИ ПРО ВАДИ
Для звітування про вади використовуйте систему стеження помилками на <https://github.com/util-linux/util-linux/issues>.ДОСТУПНІСТЬ
readprofile є частиною пакунка util-linux, який можна отримати з Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.ПЕРЕКЛАД
Український переклад цієї сторінки посібника виконано Yuri Chornoivan <[email protected]> Цей переклад є безкоштовною документацією; будь ласка, ознайомтеся з умовами GNU General Public License Version 3 НЕ НАДАЄТЬСЯ ЖОДНИХ ГАРАНТІЙ. Якщо ви знайшли помилки у перекладі цієї сторінки підручника, будь ласка, надішліть електронний лист до списку листування перекладачів: [email protected]11 травня 2022 року | util-linux 2.38.1 |