По поводу msgrcv в андроид-ядре?
Я запускал набор тестов для тестирования функциональности, связанной с IPC, в ядре Android. во время тестирования системного вызова msgrcv функция возврата не реализована.
Так верно ли, что системный вызов msgrcv() не реализован в ядре Android, если да, то почему и какой системный вызов в ядре Android служит цели системного вызова msgrcv().
Я получил соответствующее заявление, в котором говорится, что IPC System V (включая очереди сообщений) не реализованы в Bionic. но не уверен, что это значит.
Обновление: я могу найти определение msgrcv в ядре Android, но не уверен, почему функция возврата не реализована.
Ниже фрагмент кода:
SYSCALL_DEFINE5(msgrcv, int, msqid, struct msgbuf __user *, msgp, size_t, msgsz,
long, msgtyp, int, msgflg)
{
return do_msgrcv(msqid, msgp, msgsz, msgtyp, msgflg, do_msg_fill);
}
Пожалуйста, прокомментируйте, если информация кажется неполной или расплывчатой, помощь приветствуется.
1 ответ
IPC System V может быть доступен в ядре, но интерфейсы системных вызовов не реализованы в Bionic lib C. Например, /bionic/libc/arch-arm/syscalls/
содержит все реализации системных вызовов относительно ARM.