저는 프로세스와 관련된 업무를 수행하는 대학원생입니다. Linux 작업 목록에 대해 질문이 있습니다.
내가 이해한 바로는 컴퓨터가 부팅될 때마다 프로세스를 받아들이는 것입니다. 허용되는 프로세스는 어디에서나 생성될 수 있습니다. 어떻게 하는 걸까요? Linux에서 어떻게 널리 수용되고 실행될 수 있는지 상상하기 어렵습니다.
나는 Linux를 처음 접했기 때문에 무지하다면 사과드립니다. 미리 감사드립니다!
답변1
Linux가 생성하는 첫 번째 프로세스는 특정 터미널에 대한 로그인 프로세스를 시작하기 위해 (다른 작업을 수행한 후) init 프로세스를 생성하는 스위치 프로세스입니다. 거기에서 시스템 호출(fork, clone, vfork...)과 같은 다른 프로세스가 fork()가 발생하기 쉬운 프로세스에 의해 생성됩니다.
또한 Linux 커널 자체에는 커널 스레드라고 하는 스레드가 거의 없습니다. 스레드는 커널 자체에 의해 생성되며 (분명히) 해당 task_struct도 작업 목록에 있습니다.