Android的驱动程序(一)

驱动的东西太多,这里我只给出一些架构图,并附上少许说明,我也是个Android初学者,大家可以交流一下!

  Android相对于Linux内核,新增了一些没有加入标准Linux内核的内容,形成Android的专用驱动,Linux的驱动我就不多说了,想了解的话,可以去学一下Linux!

  Android的专用驱动有以下几种:

  1、Ashmem:匿名共享内存驱动;

  2、Bingder:基于OpenBinder系统的驱动,为Android平台提供IPC支持;

  3、Logger:轻量级的Log驱动;

  5、PM:电源管理;

  6、LMK:在缺少内存的情况下,Kill Progress;

  7、PMEM:物理内存驱动。

  有些文章把上面的分成两类,我不想找分类标准,就不分了!

  而在Android中,有些Linux的驱动是没有用到的,而Android使用的设备驱动如下:

  1、Framebuffer显示驱动:

驱动的主设备号为29,次设备号为X,这个驱动在文件系统中的设备节点通常是/dev/fbX(X是次设备号,并且是递增的)。用户空间使用的大多是ioctl、mmap等接口。

Android没有直接使用Framebuffer,它是由init进程自动创建,被libui库调用。

  2、Event输入设备驱动

  

Input驱动程序的主设备号是13,次要设备的分配如下:

  a、Joystick:0~61;

  b、mouse:33~62;

  c、mice:63;

  d、事件设备:64~95.

文件系统中的设备点为/dev/input/eventX

用户空间多用的是read、ioctl、poll;

它是由init进程自动创建,被libui库调用。

  3、v4l2摄像头——视频驱动(中间的是L哦~Linux的简称!)

  v4l2的主设备号是81,次设备号:0~255,这些次设备号里也有好几种设备(视频设备、Radio设备、Teletext、VBI);

Android同样没有直接使用,通常是配合Android中的Camera或Overlay的硬件层使用。

转载于:https://www.cnblogs.com/chiefCTO/archive/2011/10/20/2219313.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值