최근에 msg120에 관한 질문을 만났습니다.msgget이 악의적 일 수 있습니까?
while(1)
{
msqid = msgget(IPC_PRIVATE,IPC_CREAT);
if(msqid<0)
break;
printf("msqid=%d\n",msqid);
}
곧 커널의 모든 msqid를 사용합니다.
msgget이 커널 지속성이므로 다음에 프로세스가 실행되고 ENOSPC를 사용하여 종료됩니다.
sysconf를 구성하여 문제가 나 빠지지 만. 악의적 인 코드가 계속 실행되면 다시 구성해야합니다.
내 의견에 심각한 누수가 있고 다른 프로세스가 msqid가 부족합니다.
어떻게 시스템 관리자가이를 피할 수 있습니까?