리눅스의 커널 모듈이란 무엇입니까?

WBOY
풀어 주다: 2022-03-15 16:49:17
원래의
2631명이 탐색했습니다.

리눅스에서 커널 모듈은 리눅스 커널이 외부 세계에 제공하는 소켓입니다. 커널 모듈은 별도로 컴파일할 수는 있지만 독립적으로 실행할 수 없는 기능을 제공하는 코드 블록입니다. 커널 또는 기타 커널 모듈의 경우.

리눅스의 커널 모듈이란 무엇입니까?

이 튜토리얼의 운영 환경: linux7.3 시스템, Dell G3 컴퓨터.

Linux에서 커널 모듈이란 무엇인가요?

커널 모듈은 Linux 커널이 외부 세계에 제공하는 소켓입니다. 전체 이름은 동적으로 로드 가능한 커널 모듈(Loadable Kernel Module, LKM)입니다. . Linux 커널이 모듈 메커니즘을 제공하는 이유는 그것이 단일체 커널이기 때문입니다. 단일 코어의 가장 큰 장점은 모든 것이 하나로 통합되어 효율성이 높다는 점이지만, 모듈 메커니즘이 이러한 단점을 보완하기 위해 상대적으로 확장성과 유지 관리성이 떨어진다는 단점이 있습니다.

모듈은 독립적인 기능을 가진 프로그램입니다. 독립적으로 컴파일할 수 있지만 독립적으로 실행할 수는 없습니다. 런타임 시 커널에 연결되며 커널 공간에서 커널의 일부로 실행됩니다. 이는 사용자 공간에서 실행되는 프로세스와 다릅니다. 모듈은 일반적으로 파일 시스템, 드라이버 또는 기타 상위 수준 커널 기능을 구현하는 일련의 함수 및 데이터 구조로 구성됩니다.

간단히 말하면 모듈은 커널(어떤 의미에서는 커널도 모듈임) 또는 기타 커널 모듈에 기능을 제공하는 코드 블록입니다.

Linux 시스템의 커널 모듈은 필요에 따라 커널에 로드하거나 커널에서 언로드할 수 있는 코드 블록이므로 다시 시작하지 않고도 커널 기능을 확장할 수 있습니다. 그러나 사용자가 lsmod와 같은 명령을 사용하여 모듈 정보를 쿼리하지 않는 한 사용자가 커널 변경 사항을 알 가능성은 거의 없습니다.

Linux 시스템에는 많은 모듈을 사용할 수 있으며, 자세히 살펴보면 많은 세부 정보를 배울 수 있습니다. Linux 시스템 도구 lsmod의 주요 용도 중 하나는 시스템이 제대로 작동하지 않을 때 모듈을 확인하는 것입니다.

1. 커널 모듈 표시

커널 모듈을 표시하는 가장 쉬운 방법은 lsmod 명령을 사용하는 것입니다. 이 명령에는 많은 세부 정보가 포함되어 있지만 출력은 일반적으로 매우 사용자 친화적입니다.

1) 모듈은 각 모듈의 이름을 표시합니다.

2) 크기는 차지하는 메모리가 아닌 각 모듈의 크기를 표시합니다. 크기

3) 사용자 각 모듈이 사용된 횟수와 이를 사용하는 모듈을 표시합니다.

로드된 모듈의 수는 사용된 시스템 및 버전, 실행 중인 항목에 따라 다릅니다. 실행만이 아닌 시스템 예, 다음 작업 명령을 사용할 수 있습니다:

1) $ modprobe -c | wc –l

2) 41272

2. 커널 모듈과 관련된 기타 명령

Linux 시스템은 여러 가지를 제공합니다. 나열, 로드 및 언로드, 테스트 및 모듈 상태 확인 명령.

1) depmod —— module.dep 및 매핑 파일 생성

2) insmod —— Linux 커널에 모듈을 삽입하는 프로그램

3) lsmod —— Linux 커널에서 모듈 상태 표시

4) modinfo — — Linux 커널 모듈 정보 표시

5) modprobe - Linux 커널 모듈 추가 또는 제거

6)rmmod - Linux 커널에서 모듈을 제거하는 프로그램

3. 위에서 언급한 대로 내장 커널 모듈을 표시합니다. 편집자가 말했듯이 lsmod 명령은 커널 모듈을 표시하는 가장 편리한 명령입니다. 그러나 이를 표시하는 다른 방법이 있습니다. 커널에 내장된 모든 모듈은 modprobe 명령이 파일에 모듈을 추가하려고 시도할 때 사용되는 module.buildin 파일에 나열됩니다.

모듈에서 제공하는 서비스에 대한 간단한 설명은 없지만 사용자는 modinfo를 사용하여 모듈에 대한 자세한 내용을 얻을 수 있으며 modprobe 명령을 사용하여 모듈을 로드하거나 언로드할 수도 있습니다. 특정 모듈과 연관된 커널 개체를 찾으려면 다음 명령을 사용하십시오.

1)$ find /lib/modules/$(uname -r) -name floppy*
2)/lib/modules/5.0.0-13-generic/kernel/drivers/block/floppy.ko
로그인 후 복사

모듈을 로드하려면 $ sudo modprobe floppy 명령을 사용할 수 있습니다.

분명히 커널 모듈을 로드하고 언로드하는 것은 매우 중요합니다. 이는 Linux 시스템을 범용 커널로 실행할 때보다 더 유연하고 효율적으로 만듭니다. 이는 또한 사용자가 재부팅하지 않고도 하드웨어 추가와 같은 주요 변경 작업을 수행할 수 있음을 의미합니다.

관련 추천: "

Linux 비디오 튜토리얼

"

위 내용은 리눅스의 커널 모듈이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿