分类: 嵌入式
2012-07-30 21:37:05
armel和armhf
指得是arm体系中有fpu(浮点运算单元)的,有的arm没有fpu,则不能有armel和armhf两种使用fpu的方式了。
armhf比armel硬件要求(确切的是指fpu硬件)高一点。
如果fpu硬件,达到要求的标准了就可以通过gcc的选项-mfloat-abi来指定使用哪种,如下三种值:
soft是不用fpu计算,即使有fpu浮点运算单元也不用。
armel是softfp,用fpu计算,但是传参数用普通寄存器传,这样中断的时候,只需要保存普通寄存器,中断负荷小,但是参数需要转换成浮点的再计算。
armhf是hard,用fpu计算,传参数用fpu中的浮点寄存器传,省去了转换性能最好,但是中断负荷高。
kernel rootfs app编译的时候,指定的必须一直才行。
参考: