TGViewer
Kali Linux Kali Linux @linuxkalii · 55.8K subscribers
Post #2025 9.74K
Pointer tagging: как рантаймы прячут данные прямо внутри указателя

В x86-64 Linux пользовательские процессы обычно используют не все 64 бита адреса. На практике адреса занимают около 48 бит, а верхние биты часто остаются свободными.

И вот тут начинается низкоуровневая магия.

Некоторые рантаймы кладут в эти верхние биты служебную информацию: тип объекта, флаги, состояние GC, короткий идентификатор или другой metadata-tag. Перед разыменованием указатель очищается маской, и процессор снова видит обычный валидный адрес.

Это называется pointer tagging.

Зачем это нужно:

- можно хранить метаданные без отдельной структуры
- меньше аллокаций
- лучше cache locality
- быстрее проверка типа или состояния объекта
- меньше overhead в рантайме

Такой подход используют Lisp-рантаймы, garbage collectors, JavaScript-движки и VM, где каждый байт и каждый лишний переход по памяти имеют значение.

Идея простая: если часть битов в указателе всё равно не участвует в адресации, почему бы не заставить их работать.
  • 👍 27
  • 🔥 10
  • ❤ 9
More from @linuxkalii
  1. Oct 13, 2026🚨 ИИ-черви могут научиться размножаться без дата-центров Anthropic проверила, достаточно…
  2. Oct 12, 2026🐧 Линус Торвальдс использует Claude Code для ускорения ядра Linux. Он опубликовал экспери…
  3. Oct 11, 2026🧮 Математика для ИИ на русском: от школьной базы до трансформеров и диффузии Бесплатный к…
  4. Oct 11, 2026🚨 Банкам показали реальную атаку с ИИ. Через две недели началась волна взломов. 17 сентяб…
  5. Oct 10, 2026🚀 DevOps Interview 2026 - шпаргалка-курс для подготовки к собеседованию Всё, что спрашива…
  6. Oct 9, 2026🐧 Файл в `/dev/shm` может оказаться на диске. Даже если вы считали его «строго в RAM». На…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →