软件需要在arm和powerpc上同时运行,所以需要考虑大小端转换,搜索了一下内核如何实现大小端转换的,首先在linux/byteorder/generic.h定义了统一的宏,
在内核little_endian.h和big_endian.h中定义了宏,
具体实现则在swab.h中,随便看一个实现,__arch_swab64应该是利用cpu指令集做加速,否则用常规实现,这段代码可以移植到用户态使用。
文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux入门初识Linux24695 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!