기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하세요.


모듈프로그램을 하면서 궁금한 두가지 있어서 문의를 남겨보아요.


 먼저,  커널소스를 컴파일(make menuconfig) 하면 옵션 선택에서 <*>로 표시되는 것은 모듈을 내장되는 것으로 알고 있습니다.  .ko 파일들을 볼 수 있는 건가요? 아니면 볼 수 없는 형태로 커널(zImage)에 포함되어 지는 지요? lsmod 해서는 나타나지 않더라구요. 어떻게 포함되었는지 알 수 있나요?



 두번째로 커널 옵션 <M> 으로 해서  make  로 해서 .ko 파일을 만들었는데요.

이 파일을 장비에다 복사를 한다음 modprobe 로 해서 추가 시키면 파일을 찾을 수 없다고 나오는데, 어디에 넣어야 하나요?

의존성 가지지 않게 그냥 테스트용으로 해도 되지 않더라구요.  /lib/module/커널버전/...   넣었는데요. 못찾는다고 하는데

어디를 추가적으로 수정해주어야 하는지요?



읽어주셔서 감사합니다.



고도리

2015.07.05 05:59:20
*.200.239.210

요즘은 관련 자료들이 다 없어져서...............ㅠ.ㅠ


설명이 조금 길어질 수 있는데, 난감하네요.


1. kernel compile 순서

make menuconfig

make [zImage or uImage or 그대로 make]

make modules : --> 이 명령 이후에 .ko가 만들어짐

make modules_install


이 순서입니다.


modules_install시 module이 install되는데 module을 install하는 디렉토리는 적절하게 지정해 줘야 합니다

(MOD_INSTALL_PATH던가 그럴겁니다....찾아보시길

==> 찾아보라고 했다가 욕먹은 적 있음..............찾아서 알아서 바치지 않는다고...ㅎㅎ)


2. module관련 명령

insmod

rmmod

lsmod


modprobe : 이 녀석은 하나의 모듈이 올라갈 때 여러 module을 순서로 올려야 하는 경우 등등....모듈의 dependency에 따라 모듈을 올려주는 명령입니다. -f 옵션을 쓰면 강제로 올리는 방법도 있습니다.


대략 이정도면 다루는데 문제가 없을겁니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수

사용자 로그인