Сколько времени делают пользователя =>, переходы привилегированного режима берут?

Простым способом улучшить трассировочную информацию является следующий фрагмент кода:

  PS4='[${BASH_SOURCE[0]:-inherited}:${LINENO}:${FUNCNAME[0]:-main}] '
  set -o xtrace

Это покажет Вам:

  1. исходный файл
  2. исходный номер строки
  3. имя функции

см. также страницу Wiki для c42-common-functions

Выходной пример:

   $ c42_loglevel_trace
   $ pidkill --help
   ++ '[' '+ ' == '+ ' ']'
   ++ PS4='[${BASH_SOURCE[0]:-inherited}:${LINENO}:${FUNCNAME[0]:-main}] '
   ...
   [/usr/local/bin/pidkill:224:main] '[' 1 -eq 0 ']'
   [/usr/local/bin/pidkill:230:main] signal=KILL
   [/usr/local/bin/pidkill:231:main] '[' 1 -gt 0 ']'
   [/usr/local/bin/pidkill:233:main] case $1 in
   [/usr/local/bin/pidkill:268:main] shift 1
   [/usr/local/bin/pidkill:269:main] help
   [/usr/local/bin/pidkill:57:help] cat
   pidkill <-h|--help>                                              this help
   [/usr/local/bin/pidkill:70:help] copyLeft
   [/usr/local/bin/pidkill:13:copyLeft] echo ''
   ...

Альтернатива является bashdb:

Это - полное, переписывают отладчика Shell Korn от 'Приобретения знаний Bill Rosenblatt Shell Korn', опубликованный O'Reilly and Associates (ISBN 1-56592-054-6) с изменениями Michael Loukides и Cigy Cyriac. Однако этот код теперь зависит в ряде отладки функций поддержки, которые не являются ни частью стандарта POSIX, ни существующий, находятся во многих подобных POSIX оболочках. Хотя можно просто использовать bashdb для отладки сценариев, записанных в Bash, он может также использоваться в качестве фронтенда для получения дополнительной информации о программировании в Bash. Как дополнительная помощь, отладчик может использоваться в контексте существующего сценария с его функциями и переменными, которые были уже инициализированы; с фрагментами существующего кода можно провести эксперименты путем изменения их в отладчике.

2
14.02.2014, 01:07
1 ответ

Это зависит вполне немного от точного ядра (точный используемый механизм изменился и мог бы даже зависеть от конфигурации), и (очевидно) от точного процессора. Все, что может быть сказано с некоторой уверенностью, - то, что разработчики ядра прилагают все усилия для создания этого максимально быстро (в конце концов, это - что-то, что миллионы систем делают десятки времен в секунду).

0
27.01.2020, 23:02
  • 1
    я использую процессор Intel Atom без EPT, который я подозреваю, вызывает много издержек. –  chronospoon 15.02.2014, 02:23
  • 2
    "Подозреваемый" не достаточно. Необходимо измерить это так или иначе. Существуют сравнительные тесты для производительности системы низкого уровня, не может искать их прямо сейчас из-за облупленной сети. установка закладки –  vonbrand 18.02.2014, 02:54
  • 3
    Вы могли искать их? Существуют многие, много сравнительных тестов, которые я мог выполнить, который является, почему я пытаюсь оценить вероятные/маловероятные издержки, и сокращают количество сравнительных тестов для попытки. –  chronospoon 22.02.2014, 02:24
  • 4
    Как я сказал, моя сеть облуплена. Но ищите практическое руководство сравнительного тестирования на tldp.org. Вероятно, довольно старый, но все еще полезный. –  vonbrand 22.02.2014, 17:02
  • 5
    На работе с достойной сетью теперь. Посмотрите на lmbench, или это - последняя альфа. Датированный, но это - ряд портативных сравнительных тестов низкого уровня для материала как стоимость системных вызовов. –  vonbrand 24.02.2014, 18:31

Теги

Похожие вопросы