각 커널 프로세스의 목적을 이해하는 방법은 무엇입니까?

각 커널 프로세스의 목적을 이해하는 방법은 무엇입니까?

(관련된:프로세스 주변의 괄호는 무엇을 의미하나요?)

내가 찾고 있는 것이 무엇인지 더 잘 이해하고 싶습니다. 빠른 이해를 위해 실제 커널 소스 코드를 파헤칠 필요는 없습니다.

예를 들어, kacpid초기 검색에서는 결과가 거의 나오지 않았습니다. 결국 나는 그것이 커널 ACPI 데몬이라는 것을 알고 읽었습니다.ACPI의 Wikipedia 페이지프로세스가 무엇인지 전반적으로 명확해졌습니다.

내가 원하는 건 시리즈야단순한kacpid조회를 통해 다음과 같은 정보를 얻을 수 있도록 정의되었습니다 .

카치드:커널 ACPI 데몬을 나타냅니다. ACPI(고급 구성 및 전원 인터페이스)는 절전, 전원 끄기, 최대 절전 모드 등 다양한 "상태" 처리와 CPU 절전 관련 지침과 관련된 표준 세트입니다.

이제 찾아보려고 하는데 kblockd모든 Google 결과에 사람들이 메모리 부족 문제가 있는 것으로 나타났습니다. 이 프로세스가 존재하는 이유를 실제로 이해하지 못하는 것입니다.

그냥 "도대체 무슨 일이 kblockd일어나고 있는 거지?"라고 물어볼 수도 있겠지만, 관심은 있지만:

Linux와 관련된 방대한 양의 온라인 및 오프라인 문서(맨 페이지, 정보 페이지, POSIX 사양 등)를 고려할 때 표준 솔루션이 있습니까?일반적인 질문들다양한 커널 프로세스에 대해 알아보기의미는,그들은 무엇을 하고 있나요? 그 표준 솔루션은 무엇입니까?

답변1

Linux 커널 스레드에 대한 단일 문서 저장소는 없습니다. Linux 커널에 대한 일부 기본 문서는 다음 위치에 있습니다.Documentation디렉토리에 있지만 커널 스레드에 대한 특정 섹션은 없습니다(일부 스레드는 참여하는 기능을 전달하는 문서에 언급되어 있습니다). 그렇지 않으면 (a에 대한 변명) 문서는 접근성이 떨어지는 순서대로 다음을 포함합니다.LWN 기사, 소스 코드 및LKML 파일. Linux 커널 문서의 일반적인 철학은 C 코드를 유창하게 읽을 수 없고 이메일 토론을 파헤치는 데 시간을 할애할 준비가 되어 있지 않다면 커널이 무엇을 하는지 아는 것이 가치가 없다는 것입니다.

이름으로 스레드에 대한 정보를 찾는 가장 쉬운 방법은 다음과 같습니다.커널 소스 코드에서 이름 검색. 예를 들어,kblockd내장blk-core.c.작업 대기열입니다.. 일부 LKML 검색을 통해 해당 출처를 찾을 수 있습니다.kblockd.patch. 비동기 요청(작업 대기열의 용도), 특히 블록 장치(예: 디스크 등)에 대한 요청을 처리합니다.

답변2

시도해 봤어?

x="kblockd"
man -k "$x"
locate "$x"
for i in $(locate "$x") ; do
    dpkg -S "$i"
done

그러면 "" 와 관련된 패키지 목록이 생성됩니다 object. man dpkg패키지의 파일 목록을 가져오는 방법을 알아보려면 계속 읽어보세요 .

관련 정보