modinfo 출력을 이해하는 방법은 무엇입니까?

modinfo 출력을 이해하는 방법은 무엇입니까?

modinfo저는 단지 커널 모듈을 설명하는 출력을 이해하고 싶습니다 . 예를 들어 module 의 경우 i915출력은 다음과 같습니다.

$ modinfo i915
filename:       /lib/modules/4.2.0-1-amd64/kernel/drivers/gpu/drm/i915/i915.ko
license:        GPL and additional rights
description:    Intel Graphics
author:         Intel Corporation
[...]
firmware:       i915/skl_dmc_ver1.bin
alias:          pci:v00008086d00005A84sv*sd*bc03sc*i*
[...]
depends:        drm_kms_helper,drm,video,button,i2c-algo-bit
intree:         Y
vermagic:       4.2.0-1-amd64 SMP mod_unload modversions
parm:           modeset:Use kernel modesetting [KMS] (0=DRM_I915_KMS from .config, 1=on, -1=force vga console preference [default]) (int)
[...]

일부 필드를 이해할 수 있지만 다음의 의미를 모르겠습니다.

  • firmware
  • alias
  • intree
  • vermagic

해석하는 방법을 아는 사람이 있나요?

답변1

펌웨어:

firmware:       i915/skl_dmc_ver1.bin

많은 장치가 제대로 작동하려면 두 가지가 필요합니다. 드라이버와 펌웨어. 드라이버는 펌웨어가 위치한 파일 시스템에서 펌웨어를 요청합니다 /lib/firmware. 이는 하드웨어에 필요한 특수 파일이며 바이너리 파일이 아닙니다. 그런 다음 드라이버는 펌웨어를 장치에 로드하는 데 필요한 작업을 수행합니다. 펌웨어는 장치 내부의 하드웨어를 프로그래밍합니다.


별명:

alias:          pci:v00008086d00005A84sv*sd*bc03sc*i*

이는 문자 다음에 여러 부분으로 나눌 수 있습니다.

  • v00008086: v대표하다공급업체 ID, 하드웨어 제조업체를 식별합니다. 이 목록은 다음에서 제공됩니다.PCI 시그(SIG). 당신의 전화번호0x8086"Intel Corporation"의 약자입니다.
  • d00005A84: d대표하다장치 아이디, 제조업체가 선택합니다. 이 ID는 일반적으로 공급업체 ID와 쌍을 이루어 하드웨어 장치에 대한 고유한 32비트 식별자를 생성합니다. 공식적인 목록은 없고, 인텔 장치 ID 목록을 찾아봐도 번호를 찾을 수 없었습니다.
  • sv*, sd*: 이것하위 시스템 공급업체 버전그리고하위 시스템 장치 버전장치를 추가로 식별하는 데 사용됩니다. *즉, 무엇이든 일치한다는 의미입니다.
  • bc03: 이것기본 클래스. IDE interface, Ethernet controller, USB Controller, ... 이 bc03나타내는 장치 유형을 정의합니다 Display controller. 숫자가 장치 클래스에 매핑되므로 lspci의 출력에서 ​​이를 확인할 수 있습니다 .lspci
  • sc*:ㅏ아강기본 클래스에.
  • i*: 상호 작용

내부 트리:

intree:         Y

모든 커널 모듈은 에 포함됩니다 out-of-tree. 모듈이 포함되도록 승인되면 in-tree모듈이 됩니다. 이 플래그(설정)가 없는 모듈은 다음을 N수행할 수 있습니다.핵심을 오염시키다.


윌마긱:

vermagic:       4.2.0-1-amd64 SMP mod_unload modversions

모듈이 로드되면 vermagic값의 문자열이 일치하는지 확인됩니다. 일치하지 않으면 오류가 발생하고 커널은 모듈 로드를 거부합니다. --force플래그를 사용하면 이 문제를 극복 할 수 있습니다 modprobe. 물론 이러한 확인은 사용자 보호를 위한 것이므로 이 옵션을 사용하는 것은 위험합니다.

관련 정보