ps를 실행하면 다음과 같은 결과가 나타납니다.
root 2 0.0 0.0 0 0 ? S< 00:00 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S< 00:00 0:00 [ksoftirqd/0]
root 4 0.0 0.0 0 0 ? S< 00:00 0:00 [events/0]
모든 데몬 프로세스에는 일반적으로 ‘[..]’괄호가 있습니다.
무엇을 의미합니까? 이와 같은 프로세스를 어떻게 만듭니 까?
내가 묻는 이유는 rcS에서 시스템 데몬을 생성하기 때문에 (프로그램은 포크를 사용하여 데몬을 생성) ps 항목은 다음과 같습니다.
root 207 0.0 0.2 1516 200 ? S 00:00 0:00 /root/testdaemo
그래서 우리는 ‘[..]’괄호를 갖는 것이 중요한지 그리고 프로세스가 처음에 어떻게 그것들을 얻는 지 궁금합니다.
감사.
답변
대괄호는 관련 명령 줄이없는 프로세스 (대개 커널 스레드 및 일부 시스템 서비스)에 사용됩니다.
올바르게 기억 argv[0]
하면 빈 문자열 로 설정하여 프로세스에 동일한 효과를 얻을 수 있습니다 .
답변
예, 커널 서브 시스템에 의해 생성 된 커널 스레드입니다. 커널에서 kthread_create () 또는 kernel_thread () 함수를 사용하여 작성됩니다.
답변
귀하의 예는조차도 표시하지 않으므로 [...]
귀하가 말하는 것을 100 % 확신하지 못합니다. 그러나 argv
(리눅스에서) 모든 프로그램 의 인수 를 수정할 수 있습니다 . 인수는의 출력에 반영됩니다 ps
.