请教关于CF卡启动的问题

中文QNX 讨论: 欢迎大家灌水,讨论有关QNX 问题。
回复
ye_gong
Senior Member
帖子: 11
注册时间: 周四 10月 12, 2006 10:33 am

请教关于CF卡启动的问题

帖子 ye_gong » 周一 9月 22, 2008 1:16 pm

我制作的.boot文件,可以在vm中启动,新建一个磁盘最小0.1G(vm版本是5.0.0)
1. 对这个新的磁盘进行初始化操作步骤:

代码: 全选

	# Erase Flash Partition
	echo "Erasing Flash Partitions"
	fdisk /dev/hd1 delete -a

	# display new Partitions in /dev
	mount -e /dev/hd1

	fdisk /dev/hd1 add -s 3 -t 78 -c 234,247
	fdisk /dev/hd1 add -s 1 -t 77 -c 0,11 -b
	fdisk /dev/hd1 add -s 2 -t 79 -c 12,233

	fdisk /dev/hd1 loader
	fdisk /dev/hd1 show

	# display new Partitions in /dev, so should not slay devb-eide
	mount -e /dev/hd1

	echo "Initializing Flash Partitions"
	dinit -h -q /dev/hd1t79
	dinit -h -q /dev/hd1t78
	dinit -h -q /dev/hd1t77

	# display new Partitions in /dev, so should not slay devb-eide
	mount -e /dev/hd1

	# Copy Programming Boot Image.
	#---------------------------------------------
	echo "Installing IFS Boot Loader"
	mount -t qnx4 /dev/hd1t77 /hd1t77
	mount -t qnx4 /dev/hd1t79 /hd1t79
	mount -t qnx4 /dev/hd1t78 /hd1t78

	cp /.boot /hd1t77/.boot
如果需要可以
cp /.boot /hd1t78/.boot
cp /.boot /hd1t79/.boot

这些命令由脚本完成,然后拷贝了/bin,/etc,/sbin,/usr到t79分区下,直挂接该0.1G的磁盘可以正常启动(t77:2M, t78:3M, t79:54M,.boot文件不到800k,基于bios.build)

2. 而在hd0启动情况下,只挂接USB,通过启动io-usb,devb-umass启动USB,然后对USB(64M的CF卡)进行上述同样的操作,生成的CF卡在启动时
Verifying DMI Pool Data ........


Boot Partition 1 2 3 ?1
Missing Operating System

选2,3都是同样的Missing Operating System(t78,t79上也拷贝了.boot文件)

3. 同样的制作步骤,对CF卡还需要做什么工作?

4. 不得已,在hd0下/x86/boot/sys下拷贝了ipl-diskpc1,ipl-diskpc2,再增加了以下命令
dloader -H /dev/hd1 pc1
dloader -H /dev/hd1t77 pc2
dloader -H /dev/hd1t78 pc2
dloader -H /dev/hd1t79 pc2

则3个分区都能启动,如果不做dloader -H /dev/hd1t78 pc2,则该分区启动时就是显示?Hit Esc for .altbootD,前面有朋友碰到的现象

请问对CF卡而言,dloader 这一步必须做吗?

谢谢

回复