Android内核源码bionic目录下的子目录arch-arm源码分析笔记
来源:互联网 发布:windows永久免费vps 编辑:程序博客网 时间:2024/05/17 16:16
依旧是好记性不如烂笔头,今天需要学习的是arch-arm目录下的代码。
首先我们先看一下inclue目录下的endian这个头文件我们主要是需要知道下面的几点知识。
1、先看一下下面的代码的片段
#if !defined __ARM_ARCH_5__ && !defined __ARM_ARCH_5T__ && \ !defined __ARM_ARCH_5TE__ && !defined __ARM_ARCH_5TEJ__ && \ !defined __ARM_ARCH_4T__ && !defined __ARM_ARCH_4__
正如google上面的注释文本所说:
REV与REV16在ARM5与ARM4上面是不可用的。同时说明了没有包含<machine/cpu-features.h>这个头文件的原因是因为它会使用类似如PLD的符号串处理语言来污染命名空间。
接下来我们看到的是marchine目录下的一些头文件的定义。
在_types这个头文件中,我们看以下的代码的片段:
#define _SIZE_T#define _SSIZE_T#define _PTRDIFF_Ttypedef unsigned long size_t;typedef long ssize_t;typedef long ptrdiff_t;#endif
正如Google所注释的那样:
内核定义size_t作为无符号的整型数据,但是g++却希望它的类型是无符号long类型的数据。
接下来主要是仔细的来看一下cpu-features这个头文件的定义:
1、正如注释所说的那样,这个头文件定义的目的是定义若干符号串语言来积极响应CPU的特色。同时这些CPU的特色在目标的CPU上面再编译时刻也许是不能够使用的。
2、这样做的目的是使我们从各种不同的Arm的体系结构中抽象出来。
3、ieee这个头文件的作用是定义依赖机器的浮点型数据的结构。
接下来查看一下kernel这个头文件的定义:
在这个文件中主要是定义内核特定的定义,优化了内核的头文件。
0 0
- Android内核源码bionic目录下的子目录arch-arm源码分析笔记
- Android内核源码bionic目录下的源码的学习笔记
- 【Arch】Android 7 Nougat源码目录结构分析
- Android源码下device目录的分析
- 源码--删除指定目录下(包含子目录)的文件
- Android内核源码Abi目录学习笔记
- Arch Linux 下Android 源码的下载以及编译
- Android 源码目录 分析
- Android 源码目录 分析
- Android源码目录分析
- 对当前目录及子目录下的所有源码文件及Makefile打包
- 内核源码树目录下的Kconfig和Makefile。
- 内核源码树目录下的Kconfig和Makefile。
- PHP内核研究: PHP源码目录分析
- Linux内核-源码目录结构分析
- linux内核源码目录结构分析
- [转]android 源码目录分析
- [转]android 源码目录分析
- 课程设计
- 运营微信公众平台服务号的三点心得
- 利用现成工具,将MSSQL数据库备份到百度云
- Linux 内核学习笔记
- C++成员函数指针与其应用场景
- Android内核源码bionic目录下的子目录arch-arm源码分析笔记
- php代码审计相关的
- xargs
- Backbone中Collection的基础知识
- .net1.1注册有问题以及无法选择.net1.1的应用程序池的解决办法
- ACE 的ACE_Sig_Action/ACE_Sig_Handler/ACE_Sig_Guard 和 SIGSEGV屏蔽
- input 只能输入数字
- 大数乘法的几种算法分析及比较(2014腾讯南京笔试题)
- adb install 和adb uninstall