Linux 커널 모듈을 디버깅 할 수있는 방법이 있습니까? 사용자 프로세스에 사용되는 것과 같은 GUI 기반 기능을 찾고 있습니까?Linux 커널 모듈 디버깅
0
A
답변
1
가상 시스템에서 커널을 실행할 수있는 경우 VMware Workstation에서 GDB attach to the VM을 실행중인 커널을 디버그 할 수 있습니다. 내가 다른 VM 플랫폼에 익숙하지 않더라도 다른 VM 플랫폼에서도 마찬가지 일 수 있습니다.
베어 하드웨어의 커널 디버깅을위한 KGDB도 있습니다. 직렬 포트를 통해 대상 컴퓨터에 연결합니다. 저는 이것을 조금 사용한 적이 있지만 작동하지만 VMware가 더 잘합니다. 최신 커널은 KGDB를 메인 라인에 통합 했으므로 패치 할 필요가 없습니다.
GDB가 정확하게 GUI 기반 도구가 아니기 때문에이 질문에 대한 답변이 충분하지 않습니다. 디버깅을 위해 GDB의 스텁 프로토콜을 사용하거나 사용 가능한 인터페이스로 GDB를 래핑하는 GUI 디버거를 찾아야합니다.
1
예, GUI를 원한다면 가상화 및 kgdb가 필요합니다. 예를 들어, 버추얼 박스는 디버깅 할 커널 모듈이있는 리눅스를 실행하고, 호스트는 또 다른 리눅스입니다.
http://allmybrain.com/2010/04/29/debugging-linux-kernel-modules-with-virtualbox-and-kgdb/
나는 리눅스와 오픈 솔라리스를 위해 일을했다, 나는 버추얼 커널에서 일어나는 일들을 이해하는데 정말 멋지다라고해야합니다.
관련 문제
- 1. Linux 커널 모듈 프로파일 링
- 2. 커널 모듈
- 3. Linux 커널 모듈 - 보안 위험이 있습니까?
- 4. Linux 커널 모듈 : try_module_get/module_put을 사용할 때
- 5. 메모리 무결성을 검사하는 Linux 커널 모듈
- 6. Zlib 커널 모듈
- 7. TCP 혼잡 제어에서 TCP 헤더에 액세스 Linux 커널 모듈
- 8. Linux 커널 모듈/드라이버와 비교할 때 UMDF 이해
- 9. Linux 커널 모듈 timer_list를 사용하면 시스템이 손상 될 수 있습니다.
- 10. Linux 커널 타이머 변경
- 11. Linux 커널 디버그 출력물?
- 12. linux 커널 aio 기능
- 13. /proc 용 커널 모듈
- 14. 안드로이드와 커널 - 모듈
- 15. 리눅스 커널 모듈 권한
- 16. Linux 커널 모듈에서 사용 횟수를 얻는 방법은 무엇입니까?
- 17. 비 커널 헤더를 포함하여 Linux 커널 (2.6) 모듈을 컴파일
- 18. Linux 커널 모듈 (Ubuntu)을 통해 커널 메모리에 쓸 수 없습니다.
- 19. Linux 커널 dentry 및 inode
- 20. KVM을 사용한 Linux 커널 개발
- 21. Windows 개발자를위한 Linux 디버깅
- 22. LSM-Howto : 내 보낸 기능이없는 커널 모듈
- 23. htc 플라이어 용 커널 모듈
- 24. Linux 커널 기능을 모듈로 바꿀 수 있습니까?
- 25. 별도의 오브젝트 디렉토리에 트리가 아닌 리눅스 커널 모듈 빌드하기
- 26. Linux 커널 코드에 .S 파일 추가
- 27. Linux 커널 모듈의 파일 I/O
- 28. Linux 커널 - 블록 번호를 프로그래밍 방식으로 검색합니다.
- 29. 시스템에 다른로드가없는 syscalls 차단 (Linux 커널)
- 30. 커널 공간에서 Linux syscall을 호출하려면 어떻게합니까?
답장을 보내 주셔서 감사합니다.하지만 실제로 컴파일러 최적화로 인해이 구제책을 최신 버전의 커널에서 테스트했지만 생성 된 vmlinux dos에는 디버깅 정보가 없습니다! 내가 그것을 해제하는 방법을 찾을 수 없습니다. – amrzar
@ amrzar : 바이너리 커널/모듈에 디버깅 정보가 없다면, 당신을 도울 수있는 공통 디버거를 찾을 수 없을 것입니다. 다행히도 디버깅 정보가 존재합니다. 배포판의 커널을 사용한다면, google을 사용하여 디버그 패키지를 찾으십시오. 직접 컴파일하는 경우 "커널 해킹"메뉴에서 "디버그 정보로 커널 컴파일"을보십시오. – Karmastan