저는 수년 동안 Windows 커널 개발자로 일해 왔습니다. 이제 Linux 커널 모듈 개발을 시작합니다.
우선 kernel-devel
./usr/src/kernels/$(uname -r)
Kconfig
및 2개의 파일을 제외하고 많은 폴더가 비어 있습니다 Makefile
.
Windows에서 커널 장치 드라이버를 개발하려면 필요한 모든 헤더 파일이 포함된 포함 폴더와 연결해야 하는 라이브러리가 포함된 lib 폴더만 필요합니다.
Linux에서는 쓸모 없어 보이는 폴더가 왜 그렇게 많은지 이해할 수 없습니다.
설명이 있나요?
답변1
kernel-devel
Fedora 및 기타 Red Hat 파생 패키지의 패키지완전한 커널 소스 코드가 포함되어 있지 않습니다.는 드라이버 개발에 필요한 공용 인터페이스 및 makefile 헤더입니다. 대부분의 헤더는 /usr/src/kernels/$(uname -r)/include/
일부 아키텍처별 헤더(예: x86의 경우 )에서 찾을 수 있습니다 /usr/src/kernels/$(uname -r)/arch/x86/include/
.
및 디렉토리는 쓸모 Kconfig
가 없습니다 Makefile
. 전체 커널 소스(보통 드라이버 개발에는 필요하지 않음)가 없기 때문에 전체 그림을 볼 수 없습니다.