커널 빌트인 컴파일 모듈 컴파일의 차이점이 어떻게 되나요?

oblab의 이미지

Kconfig 구성에의해서 menuconfig 구성이 되는데요

hello.c 모듈 파일을 만들어서 커널 컴파일을 할려고 합니다

---------------hello.c 내용
#include
#include
#include

static int hello_init(void) {
printk("hello init\n");
return 0;
}

static void hello_exit(void) {
printk("hello exit\n");
}

module_init(hello_init);
module_exit(hello_exit);

MODULE_LICENSE("Dual BSD/GPL");
------------------

hello.c 를 모듈로 할지 빌트인으로 할지 하는데
빌트인으로 할경우 커널컴파일시 읽혀서서 zImage파일에 내용이 바로 들어가 모두 부팅때 printk문장이 demsg에 찍힐것으로 예상이 되는데요
모듈로 컴파일하면 어떻게 된느건가요? ko파일을 만들어줘서 넣어주어야 하는것인건지

simminjo의 이미지

모듈로 빌드하게되면 머시기.ko 파일로 생성되고 insmod 을 통해 모듈을 커널에 동적 로딩하는 방식으로 사용하시면 될겁니다.

---------------------------------------------------------------
Opensource에 기여하는 것이 꿈입니다.
내가 만든 코드를 모두가 사용할 때 까지~