[笔记分享] [Android] Android的Linux内核与驱动

本文探讨了Android与标准Linux的区别,强调Android在Linux内核基础上增加的专用驱动和设备驱动。Android专用驱动包括Ashmem、Binder、Logger、PM和Low Memory Kill等,而Android使用的设备驱动主要包括Framebuffer和Event输入设备。Framebuffer驱动用于显示设备,Event驱动则涵盖了键盘、鼠标、触摸屏等输入设备。这些驱动在Android系统中起着至关重要的作用。
摘要由CSDN通过智能技术生成

3.1 Android的Linux和标准Linux区别
Android和标准Linux2.6相同,只是多增加了内容,有两种:Android专用驱动和Android使用的设备驱动。还增加了些内容,如yaffs文件系统。

3.2 Android专用驱动
这些驱动一般不操作实际硬件,只是辅助系统运行,包括:
1. Ashmen:匿名共享内存驱动。
2. Logger:轻量级Log驱动。
3. Binder:基于OpenBinder系统驱动,为Android平台提供IPC支持。
4. PM: 电源管理模块。
5. Low Memory Kill: 缺少内存时,杀死进程。
6. Android PMEM: 物理内存驱动

a)Ashmem
通过这种内核机制,可为用户空间程序提供内存分配机制。实现类似于malloc()功能。

b)Binder
Binder的驱动程序为用户层程序提供IPC支持,整个系统依赖于它。它是Android主要使用的IPC方式,通常只要按照模板定义相关类即可,不用直接调用驱动。

c)Logger
该驱动为用户层提供log支持,作为一个工具使用。

3.3 Android使用的设备驱动
a)Framebuffer
标准显示设备驱动。每个系统可以有多个显示设备,对应也可以有多个framebuffer。在用户空间大多使用ioctl、mmap等接口来操作。也可以直接write操作,直接输出显示内容。架构如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值