Site icon EfmSoft

Что означает код возврата ядра macOS 1024 (MACH_MSG_VM_KERNEL)?

 
Предыдущий Следующий
KERN_DENIED MACH_MSG_IPC_KERNEL

MACH_MSG_VM_KERNEL

Как используется этот бит

MACH_MSG_VM_KERNEL является дополнительным битом, а не полным результатом mach_msg сам по себе. Ядро добавляет его посредством OR к MACH_RCV_HEADER_ERROR, MACH_RCV_BODY_ERRORлибо к результату отправки, псевдоприём которого не смог полностью восстановить сообщение. Он обозначает нехватку ресурсов виртуальной памяти ядра при передаче дескриптора внестрочной памяти.

Это различие важно, поскольку сообщение уже могло быть извлечено из очереди или частично преобразовано. Неудачная отправка также может вернуть буфер, в котором адреса внестрочной памяти или имена портов изменились во время псевдоприёма. Код должен сначала отделить базовый результат от специальных битов, а затем выполнить очистку, соответствующую базовому результату.

Что следует проверить

Ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.

Exit mobile version