Поддержка multiple personalities в strace, или как обеспечить корректную трассировку 32-битных программ на 64-битных архитектурах — различия между версиями
Материал из 0x1.tv
StasFomin (обсуждение | вклад) |
StasFomin (обсуждение | вклад) (Batch edit: replace PCRE (\n\n)+(\n) with \2) |
||
== Расширенные тезисы == == Примечания и отзывы == <!-- <blockquote>[©]</blockquote> --> <references/> <!-- topub --> {{stats|disqus_comments=0|refresh_time=2021-08-31T17:52:34.210585|vimeo_comments=0|vimeo_plays=40|youtube_plays=0}} [[Категория:OSSDEVCONF-2015]] [[Категория:Strace]] |
Версия 12:22, 4 сентября 2021
Аннотация
- Докладчик
- Эльвира Хабирова
Исторически поддержка multipers в strace была ненадежной.
Некоторые системные вызовы совсем не поддерживали различия между моделями данных, например, между LP64 и ILP32 — в таких случаях аргументы системных вызовов типов long, pointer, а также всех составных типов, содержащих long и pointer, печатались неправильно.
Поскольку это в большинстве случаев единственное, чем различается трассировка системных вызовов для разных personality, верным решением было бы использовать один и тот же исходный код для разных personality.
Видео
Слайды
Расширенные тезисы
Примечания и отзывы
Plays:40 Comments:0