>  기사  >  운영 및 유지보수  >  Linux 드라이버 입사 후 초보자가 들어야 할 5가지 조언

Linux 드라이버 입사 후 초보자가 들어야 할 5가지 조언

嵌入式Linux充电站
嵌入式Linux充电站앞으로
2023-07-31 15:50:191288검색

1. printk만 사용하지 마세요.

printk에는 pr_info, pr_err 인쇄 기능을 사용할 때 인쇄 수준을 제어하고 다양한 시나리오에 대해 다양한 인쇄 기능을 사용하는 방법을 배워야 합니다. printk,内核里面有很多pr_infopr_err等打印函数,要学会控制打印等级,以及针对不同的场景使用不同的打印函数。

2、新手不要直接改defconfig

内核有默认配置文件xxx_defconfig,如果你要修改内核的一些配置,作为新手不要直接去修改xxx_defconfig

稳妥的做法是执行make menucofig通常菜单进行配置,最后把.config文件覆盖掉xxx_defconfig,然后再上传这个xxx_defconfig

🎜🎜🎜2. 초보자는 defconfig를 직접 변경하면 안 됩니다🎜🎜 🎜🎜🎜커널에는 기본 구성 파일xxx_defconfig, 일부 커널 구성을 수정하려면 초보자로서 xxx_defconfig를 직접 수정하지 마세요. 🎜🎜안전한 접근 방식은 make menucofig 보통 메뉴를 구성하고 마지막으로 .config code> 파일 덮어쓰기<code style="font-size: 14px;padding: 2px 4px;border-radius: 4px;margin-right: 2px;margin-left: 2px; background-color: rgba(27, 31, 35, 0.05 );font-family: " operator mono consolas monaco menlo monospace break-all rgb>xxx_defconfig, 그런 다음 업로드 이 xxx_defconfig. 🎜

3. 모든 물리적 주소를 직접 매핑하지 마세요

리눅스에서는 연산 레지스터를 먼저 매핑해야 하는데, 일반적으로 기본 주소만 매핑하고 기본 주소와 오프셋을 추가하여 작업을 수행합니다. .

각 레지스터의 물리적 주소를 직접 매핑하지 마세요. 특정 드라이버의 경우 레지스터가 많아도 기본 주소는 동일하기 때문입니다.

4. uboot를 배우는데 실패하지 마세요

Linux 드라이버라도 uboot怎么启动kernel,都传了什么参数,涉及到的地址有哪些,uboot 드라이버 작성 방법을 알아야 합니다.

5. 메모리를 이해하지 못한다면 드라이버에 대해 이야기하는 것만으로는 충분하지 않습니다

메모리 관련 지식을 꼭 읽어보세요. Linux에서의 모든 작업은 가상 주소이며, 레지스터에 기록되는 것은 물리적 주소입니다. 가상 주소에 해당하는 물리적 주소를 어떻게 알 수 있나요? DMA 일관성 메모리 할당과 일반 메모리 할당의 차이점은 무엇입니까?

등록 매뉴얼에 적힌 주소가 실제 주소라 기억해두었습니다.

dma 메모리 문제, 캐시 일관성 문제 등은 피할 수 없습니다 .

위 내용은 Linux 드라이버 입사 후 초보자가 들어야 할 5가지 조언의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 嵌入式Linux充电站에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제