로드된 커널 모듈의 기본 주소와 크기를 얻으시겠습니까?

로드된 커널 모듈의 기본 주소와 크기를 얻으시겠습니까?

로드된 커널 모듈의 기본 주소와 크기를 얻는 방법은 무엇입니까?

답변1

를 사용할 수 있을 것 같습니다 /proc/modules. 여기에는 현재 커널에 로드된 모든 모듈에 대한 정보가 포함되어 있습니다. 예를 들어:

cat /proc/modules | grep i8k

결과는 다음과 같습니다.

i8k 14696 0 - Live 0xffffffffa03b8000

어디:

  1. 첫 번째 열에는 모듈 이름이 포함됩니다.
  2. 두 번째 열은 모듈의 메모리 크기(바이트)를 나타냅니다.
  3. 세 번째 열에는 현재 로드된 모듈 인스턴스 수가 나열됩니다. 0 값은 언로드된 모듈을 나타냅니다.
  4. 네 번째 열은 모듈이 실행할 다른 모듈에 의존하는지 여부를 나타내고 해당 다른 모듈을 나열합니다.
  5. 다섯 번째 열에는 모듈의 로드 상태( Live, Loading또는 ) 가 나열됩니다 Unloading.
  6. 커널 가상 주소 공간에 있는 모듈의 기본 메모리 주소입니다.

실행하는 경우:

awk '$1 ~ /i8k/ { print $1, $2, $6 }' /proc/modules

결과는 다음과 같은 값일 수 있습니다.

i8k 14696 0xffffffffa03b8000

답변2

크기/sys

나는 하나의 값만 제공하기 때문에 이 대안을 좋아합니다.

cat /sys/module/<module-name>/coresize

주소 로드:pr_debug

활성화되면 pr_debug이 정보가 나타나며 모듈 패닉이 발생할 경우 유용할 수 있습니다 init_module.

자세한 내용은 다음을 참조하세요.insmod를 사용하여 삽입된 커널 모듈의 주소를 얻는 방법은 무엇입니까? |스택 오버플로

관련 정보