| Предыдущий | Следующий |
| STATUS_INVALID_LDT_SIZE | STATUS_INVALID_LDT_DESCRIPTOR |
STATUS_INVALID_LDT_OFFSET
Что означает STATUS_INVALID_LDT_OFFSET
STATUS_INVALID_LDT_OFFSET — начальное смещение при изменении LDT не выровнено по размеру записи селектора.
LDT (Local Descriptor Table) — x86-таблица дескрипторов сегментов. Операция обращается к отдельным descriptor entries, поэтому смещение должно указывать точно на границу записи, а не на произвольный байт внутри таблицы.
Что проверить
- Запишите исходное смещение до любой арифметики указателей и округления.
- Проверьте единицы: selector/index, число записей и byte offset — разные величины.
- Проверьте умножение и преобразование, которое переводит selector/index в смещение таблицы.
- Не округляйте некратное значение до ближайшей границы: это изменит целевые дескрипторы и может скрыть ошибку вычисления.
Такой код типичен для низкоуровневого x86/16-битного compatibility-пути; в обычном современном приложении LDT обычно вообще не управляется напрямую.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
