| Предыдущий | Следующий |
| KERN_RPC_SERVER_TERMINATED | KERN_RPC_CONTINUE_ORPHAN |
KERN_RPC_TERMINATE_ORPHAN
Устаревший управляющий результат Mach RPC
KERN_RPC_TERMINATE_ORPHAN не является обычной ошибкой приложения. XNU обозначает его как указание завершить осиротевшую активацию, помещая в внутренний поток управления устаревшего Mach RPC и обработку активаций потоков.
Если значение появляется в низкоуровневой диагностике, отделяйте его от бизнес-результата запроса. Нужно выяснить, почему контекст выполнения RPC осиротел: например, исчезла ли другая сторона, задача или владеющая служба до обычного завершения.
Что исследовать
- Зафиксируйте RPC endpoint, события жизненного цикла задачи или потока и предшествующий статус IPC.
- Найдите завершение службы или демонтаж, конкурирующие с незавершённым запросом.
- Не выдавайте этот код вызывающим сторонам как доказательство семантического отклонения их операции.
- При наличии предпочитайте поддерживаемый высокоуровневый API службы зависимости от устаревшего поведения активаций Mach.
Ссылки
- Apple XNU: kern_return.h
- Руководство Apple по программированию ядра: Mach IPC и MIG
- Apple Developer Documentation: коллекция интерфейсов Mach
Нужно найти другой код? Найти другой код состояния или ошибки.