QEMU
http://files.meetup.com/1590495/debugging-with-qemu.pdf
http://blog.csdn.net/iamljj/archive/2010/06/08/5655169.aspx
Kernel panic - not syncing: Attempted to kill init!
用arm-linux-gcc 4.00以上的编译器文件系统老是报这个错 ,
而用rm-linux-gcc 3.xx 版本都不会,看来一下内核的配置
原来问题在这里
Kernel Features --->
[*] Use the ARM EABI to compile the kernel
[*] Allow old ABI binaries to run with this kernel (EXPERIMENTA)
把这个选上就可以了
$ find . -print0 | cpio --null -ov --format=newc | gzip -9 > ../initramfs.gz
http://en.gentoo-wiki.com/wiki/Initramfs#Packaging_Your_Initramfs
$ qemu-system-arm -M versatilepb -usb -usbdevice wacom-tablet -kernel zImage -initrd initramfs.gz -nographic -append 'console=ttyAMA0 console=ttyS0 root=/dev/ram' -net none
文件系统执行完/etc/init.d/rcS就停止了,解决办法:
在/etc/init.d/rcS 最后增加/bin/sh
http://ks.cn.yahoo.com/question/1408080305571.html
处理panic后的系统自动重启
panic.c源文件有个方法,当panic挂起后,指定超时时间,可以重新启动机器
if (panic_timeout > 0)
{
int i;
/*
* Delay timeout seconds before rebooting the machine.
* We can't use the "normal" timers since we just panicked..
*/
printk(KERN_EMERG "Rebooting in %d seconds..",panic_timeout);
for (i = 0; i < panic_timeout; i++) {
touch_nmi_watchdog();
mdelay(1000);
}
修改方法:
/etc/sysctl.conf文件中加入
kernel.panic = 30 #panic错误中自动重启,等待时间为30秒
kernel.sysrq=1 #激活Magic SysRq! 否则,键盘鼠标没有响应
http://www.2hei.net/mt/2008/07/kernel-panic-is-not-syncing.html1