linux源码分析之字节序(1)-- byteorder.h

首先我们要知道的一点是:在Linux内核中,不同CPU里面,各自的字节序定义都不同。

本次用于分析的 Linux 内核版本为: linux--3.0.0-12。


 arch/XXX/include/asm/byteorder.h:不同CPU(XXX)的字节序定义

1)ARM(XXX=arm):
#ifdef __ARMEB__

#include <linux/byteorder/big_endian.h>

#else

#include <linux/byteorder/little_endian.h>

#endif


(2)PowerPC(XXX=powerpc)
#include <linux/byteorder/big_endian.h>


(3)X86(XXX=x86)
#include <linux/byteorder/little_endian.h>


由上面举的3个例子,可以看出三种不同的CPU对于各自的字节序定义有所不同。




郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。