内核移植
Alen.Wang
智能机器人硕士,擅长复杂电路设计、嵌入式软件编程及系统架构设计,从事嵌入式AI开发工作,有多年项目开发经验。
我的联系邮箱 [email protected]
展开
-
翻译 DMA-API-HOWTO
若是有翻译错误的地方,请指出,谢谢。原创 2023-08-02 10:18:39 · 215 阅读 · 0 评论 -
开发板启动时,内核打印出"can't access tty,job control turned off"
启动后的最后一行提示can't access tty,job control turned off,这说明没有进入到控制台,原因就在于文件系统的/etc/inittab 这个文件里有问题vi /etc/inittab 加上这一句:console::askfirst:-/bin/sh (注意:我之前写的是console::askfirst:/bin/sh,缺少了-,所以才报错)原创 2016-12-05 13:29:28 · 18923 阅读 · 1 评论 -
获得内核函数地址的四种方法
本文以获取内核函数 sys_open()的地址为例。 1)从System.map文件中直接得到地址: $ grep sys_open /usr/src/linux/System.map 2)使用 nm 命令: $ nm vmlinuz | grep sys_open 3)从 /proc/kallsyms 文件获得地址:转载 2017-01-05 20:27:24 · 2094 阅读 · 0 评论 -
查看Linux内核版本的命令
方法一: 命令: uname -a 作用: 查看系统内核版本号及系统名称 方法二: 命令: cat /proc/version 作用: 查看目录"/proc"下version的信息,也可以得到当前系统的内核版本号及系统名称 下面是在单板里查看内核版本号和交叉编译器的版本/ #uname -aLinux (none) 3.4.2 #11 Tue D原创 2017-03-02 15:43:00 · 726 阅读 · 0 评论 -
移植完linux-3.4.2内核,启动系统后使用命令ifconfig -a查看网络配置,没有eth0
问题:/ # ifconfig/ # ifconfig eth0 ifconfig: eth0: error fetching interface information: Device not found/ # ifconfig eth0 upifconfig: SIOCGIFFLAGS: No such device原因:机器id如果是SMDK2440的原创 2017-03-02 20:04:26 · 2849 阅读 · 0 评论 -
用nfs挂载内核时出错 ERROR: Cannot umount的解决办法
SMDK2440 # nfs 30000000 192.168.1.106:/work/nfs_root/uImage ERROR: resetting DM9000 -> not respondingdm9000 i/o: 0x20000000, id: 0x90000a46 DM9000: running in 16 bit mode原创 2017-04-03 15:36:41 · 2066 阅读 · 0 评论 -
编译内核是出现:arch/arm/mm/tlb-v4wbi.S:64:error: too many positional arguments
内核:Linux-3.4.2 编译内核出现arch/arm/mm/tlb-v4wbi.S:64:error: too many positional arguments 交叉工具链太老了,换新一点的。换成 4.3.2的, 还有可能是你换4.3.2的了,但是交叉工具还没安装成功,所以,在编译前,要查看是否安装成功 arm-linux-gcc -v原创 2016-07-05 09:57:48 · 2919 阅读 · 0 评论 -
移植最新版本3.4.2内核
//////////////////////////////////////////韦老师总结////////////////////////////////////////////////////一. 内核启动流程,据此配置内核(机器ID)1.1 修改Makefile1.2 选择默认配置 : make s3c2410_defconfig1.3 make uImage步原创 2016-07-06 14:16:06 · 544 阅读 · 0 评论 -
启动新内核出现:Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004
启动新内核出现错误:Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004查阅内核源码,才知道exitcode=0x00000004 代表的是 SIGILL (非法指令)出现这个错误的原因是交叉编译器用的是EABI借口,所以内核也要用EABI接口才行:boo原创 2016-07-06 18:10:22 · 11506 阅读 · 2 评论 -
启动新内核出现:No filesystem could mount root, tried: ext3 ext2 cramfs vfa
下载新编译的内核出现:No filesystem could mount root, tried: ext3 ext2 cramfs vfat msdos iso9660 romfs ernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,3)Backtrace: [] (dump_back原创 2016-07-06 19:32:11 · 14687 阅读 · 0 评论 -
2440移植内核到uboot上,打印乱码
可能原因:1、 修改内核 里的晶振大小arch\arm\mach-s3c24xx\mach-smdk2440.cs3c24xx_init_clocks(16934400);改为s3c24xx_init_clocks(12000000);2、UBOOT 的波特率没有设置set bootargs console=ttySAC0,115200 root=/dev/原创 2016-07-07 15:07:08 · 1153 阅读 · 0 评论