android底层库包含哪些,Android的底层库libutils

第一部分 libutils 概述

libutils 是 Android 的底层库,这个库以 C++ 实现,它提供的 API 也是 C++ 的。 Android 的层次的 C 语言 程序和库,大都基于 libutils 开发。

libutils中的 头文件如下所示:

frameworks/base/include/utils

libutils 的源文件:

frameworks/base/libs/utils

libutils 的库名称:

libutils.so

这个库可以分成两个部分,一个部分是底层的工具,另外一个就是实现主要为实现 IPC (进程间通讯)的 Binder 机制。

第二部分 公共库概述

libutils 中的公共库部分主要包含的 头文件 如下所示 :

Error s.h :定义宏表示错误代码

Endian.h :定义表示大小端的宏

misc.h :几个字符串和文件相关的功能 函数

TextOutput.h :定义文本输出的基类 TextOutput

BufferedTextOutput.h :类 BufferedTextOutput ,它是一个 TextOutput 的实现

Pipe.h :定义管道类 Pipe

Buffer.h :定义内存缓冲区域的类 Buffer

List.h :定义链表的模版类

SharedBuffer.h :定义类 SharedBuffer 表示共享内存。

String16.h :定义表示双字节字符串的类 String16

String8.h :定义表示单字节字符串的类 String8 ,并包含了从 String16 转换功能

VectorImpl.h :定义表示向量的类 VectorImpl

Vector.h :定义继承 VectorImpl 的类模版 Vector ,以及排序向量类 SortedVectorImpl

SortedVector.h :定义排序向量的模版 SortedVector

KeyedVector.h :定义使用关键字的向量模板 KeyedVector

threads.h :定义线程相关的类,包括线程 Thread 、互斥量 Mutex 、条件变量 Condition 、读写锁 ReadWriteLock 等

socket.h :定义套结字相关的类 Socket

Timers.h :定义时间相关的函数和定时器类 DurationTimer 。

ZipEntry.h 、 ZipFileCRO.h 、 ZipFile.h 、 ZipFileRO.h 、 ZipUtils.h :与 zip 功能相关的类。

第三部分 Binder 进程间通讯部分

Binder是 进程间通讯部分的核心,它 为不同的系统 提供了可移植的进程间通讯手段。

RefBase.h :

引用计数,定义类 RefBase 。

Parcel.h :

为在 IPC 中传输的数据定义容器,定义类 Parcel

I Binder.h :

Binder 对象的抽象接口, 定义类 IBinder

Binder.h :

Binder 对象的基本功能, 定义类 Binder 和 BpRefBase

BpBinder.h :

BpBinder 的功能,定义类 BpBinder

I Interface.h :

为抽象经过 Binder 的接口定义通用类,

定义类 IInterface ,类模板 BnInterface ,类模板 BpInterface

Pro cessState.h

表示进程状态 的类,定义类 ProcessState

IPCThreadState.h

表示 IPC 线程的状态,定义类 IPCThreadState

IServiceManager.h :表示服务管理器的类,供其它需要构造服务的类使用

IPermissionController.h :权限控制类。

几个与内存相关的类的头文件如下所示:

IMemory.h :定义内存相关类的接口,表示堆内存的类 IMemoryHeap 和 BnMemoryHeap ,表示一般内存的类 IMemory 和 BnMemory 。

MemoryHeapBase.h :定义类 MemoryHeapBase ,继承并实现 BnMemoryHeap

MemoryBase.h :定义类 MemoryBase ,继承并实现 BnMemory

在一般的使用过程中,通常是以使用 MemoryHeapBase 类分配一块堆内存(类似 malloc ),而 MemoryBase 表示从一块分配好堆内存中的一部分内存。

此外内存相关的功能中还包含了头文件 MemoryDealer.h 和 MemoryHeapPmem.h 。

2008-12-05 16:15

第一部分 libutils 概述

libutils 是 Android 的底层库,这个库以 C++ 实现,它提供的 API 也是 C++ 的。 Android 的层次的 C 语言 程序和库,大都基于 libutils 开发。

libutils中的 头文件如下所示:

frameworks/base/include/utils

libutils 的源文件:

frameworks/base/libs/utils

libutils 的库名称:

libutils.so

这个库可以分成两个部分,一个部分是底层的工具,另外一个就是实现主要为实现 IPC (进程间通讯)的 Binder 机制。

第二部分 公共库概述

libutils 中的公共库部分主要包含的 头文件 如下所示 :

Error s.h :定义宏表示错误代码

Endian.h :定义表示大小端的宏

misc.h :几个字符串和文件相关的功能 函数

TextOutput.h :定义文本输出的基类 TextOutput

BufferedTextOutput.h :类 BufferedTextOutput ,它是一个 TextOutput 的实现

Pipe.h :定义管道类 Pipe

Buffer.h :定义内存缓冲区域的类 Buffer

List.h :定义链表的模版类

SharedBuffer.h :定义类 SharedBuffer 表示共享内存。

String16.h :定义表示双字节字符串的类 String16

String8.h :定义表示单字节字符串的类 String8 ,并包含了从 String16 转换功能

VectorImpl.h :定义表示向量的类 VectorImpl

Vector.h :定义继承 VectorImpl 的类模版 Vector ,以及排序向量类 SortedVectorImpl

SortedVector.h :定义排序向量的模版 SortedVector

KeyedVector.h :定义使用关键字的向量模板 KeyedVector

threads.h :定义线程相关的类,包括线程 Thread 、互斥量 Mutex 、条件变量 Condition 、读写锁 ReadWriteLock 等

socket.h :定义套结字相关的类 Socket

Timers.h :定义时间相关的函数和定时器类 DurationTimer 。

ZipEntry.h 、 ZipFileCRO.h 、 ZipFile.h 、 ZipFileRO.h 、 ZipUtils.h :与 zip 功能相关的类。

第三部分 Binder 进程间通讯部分

Binder是 进程间通讯部分的核心,它 为不同的系统 提供了可移植的进程间通讯手段。

RefBase.h :

引用计数,定义类 RefBase 。

Parcel.h :

为在 IPC 中传输的数据定义容器,定义类 Parcel

I Binder.h :

Binder 对象的抽象接口, 定义类 IBinder

Binder.h :

Binder 对象的基本功能, 定义类 Binder 和 BpRefBase

BpBinder.h :

BpBinder 的功能,定义类 BpBinder

I Interface.h :

为抽象经过 Binder 的接口定义通用类,

定义类 IInterface ,类模板 BnInterface ,类模板 BpInterface

Pro cessState.h

表示进程状态 的类,定义类 ProcessState  IPCThreadState.h  表示 IPC 线程的状态,定义类 IPCThreadState  IServiceManager.h :表示服务管理器的类,供其它需要构造服务的类使用  IPermissionController.h :权限控制类。  几个与内存相关的类的头文件如下所示:  IMemory.h :定义内存相关类的接口,表示堆内存的类 IMemoryHeap 和 BnMemoryHeap ,表示一般内存的类 IMemory 和 BnMemory 。  MemoryHeapBase.h :定义类 MemoryHeapBase ,继承并实现 BnMemoryHeap  MemoryBase.h :定义类 MemoryBase ,继承并实现 BnMemory  在一般的使用过程中,通常是以使用 MemoryHeapBase 类分配一块堆内存(类似 malloc ),而 MemoryBase 表示从一块分配好堆内存中的一部分内存。  此外内存相关的功能中还包含了头文件 MemoryDealer.h 和 MemoryHeapPmem.h 。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值