Welcome 微信登录

首页 / 操作系统 / Linux

Android键盘输出增加按键码

Android键盘输出增加按键码

开发过程中免不得需要增加或减少按键码值,在Android2.3系统事件处理部分,主要向上层提供统一的按键码(KeyCode),这个按键码是一个整数,在上层的JAVA程序中主要通过这个值来判断系统的实现。关于输入事件的处理前面已经讲过,请参考:http://www.linuxidc.com/Linux/2012-01/50691.htm这里主要讲android事件的处理过程,需要经过两个转换步骤: ?? 1、键扫描码ScanCode是由linux的Input...
Android-vold源码分析

Android-vold源码分析

vold处理完磁盘事件(见 http://www.linuxidc.com/Linux/2011-12/50395.htm),就要开始接受framework的操作命令,在main函数里面,开启了一个线程来监听framework的信息,当收到操作命令,vold进行解析,分析出命令,然后调用相应的磁盘操作函数,待操作完成后,再将操作结果的状态值反馈给framework,中间均使用了广播机制,使用了UDP协议。在main函数中,有以下函数的调用:if(cl-&g...
浅析Android下的Android.mk文件

浅析Android下的Android.mk文件

1 概述大家都知道在Linux下编辑经常要写一个Makefile文件, 可以把这个Makefile文件理解成一个编译配置文件,它保存着如何编译的配置信息,即指导编译器如何来编译程序,并决定编译的结果是什么。而在Android下的Android.mk文件也是类型的功能,顾名思义,从名字上就可以猜测得到,Android.mk文件是针对Android的Makefile文件.具体来说:该文件是GNU Makefile的一小部分,会被编译系统解析一次或多次。你可以在...
Android HAL实例解析

Android HAL实例解析

一、概述 本文希望通过分析台湾的Jollen的mokoid 工程代码,和在s5pc100平台上实现过程种遇到的问题,解析Andorid HAL的开发方法。 二、HAL介绍 现有HAL架构由Patrick Brady (Google) 在2008 Google I/O演讲中提出的,如下图。 Android的HAL是为了保护一些硬件提供商的知识产权而提出的,是为了避开linux的GPL束缚。思路是把控制硬件的动作都放到了Android HAL中,而linu...
Linux内核线程的创建及在QEMU上的测试方法

Linux内核线程的创建及在QEMU上的测试方法

本文主要介绍一个linux内核线程的实例,以及在QEMU平台上测试的过程。一、内核线程的创建 编写一个字符设备驱动,在驱动注册时,开启一个内核线程。在用户向设备写入数据时,字符设备的wirte方法能够激活此内核线程,并在线程中实现打印用户输入的数据。 驱动代码如下(在2.6.22内核上测试通过),关键部分加上了注释:#include<linux/module.h> #include<linux/moduleparam.h> #inc...
Android下如何通过JNI方法向上提供接口总结

Android下如何通过JNI方法向上提供接口总结

1 什么是JNIJNI是Java Native Interface的缩写,即Java本地接口.从Java1.1开始,JNI标准成为Java平台的一部分,它允许java代码和用其它语言编写的代码进行交互.JNI是本地编程接口,它使得在Java虚拟机(VM)内部运行的Java代码能够与用其他编程语言(如C,C++和汇编语言)的应用程序和库进行交互操作.在Android中提供的JNI的方式,让Java程序可以调用C语言程序。Android中很多Java类都具有n...
Android内核驱动开发中的Kconfig文件结构分析(图文)

Android内核驱动开发中的Kconfig文件结构分析(图文)

1 Kconfig和Makefile毫不夸张地说,Kconfig和Makefile是我们浏览内核代码时最为依仗的两个文件。基本上,Linux 内核中每一个目录下边都会有一个Kconfig文件和一个Makefile文件。Kconfig和Makefile就好似一个城市的地图,地图引导我们去 认识一个城市,而Kconfig和Makefile则可以让我们了解一个内核目录下面的结构。在希望研究内核的某个子系统、某个驱动或其他某个部分时,都 有必要首先仔细阅读一下相关...
手把手教你如何创建一个连接到Binder上的服务(图文)

手把手教你如何创建一个连接到Binder上的服务(图文)

1 概述 大家都知道在Android下的IPC机制是Binder,它可以实现两个进程之间的通信。有关Binder的介绍网上太多,这里就不费话,OK,还是进入这篇文章的主题,即教你如何创建一个连接到Binder上的服务.并且这个示例中的源代码是保证可以原样编译通过的. 在开始之前,我们首先来简单介绍一下我们即将制作的服务ExampleServer, 这个示例服务由主程序加上一个libExample.so文件组成,libExample.so用来实现对Clien...
rt3070驱动的ARM平台移植问题

rt3070驱动的ARM平台移植问题

最近在做wifi数据采集的东西,需要做rt3070的驱动移植,目标板是AM3517的ARM板(cortex-A8的核心)。中间遇到很多问题。需要准备的东西。rt3070的驱动,linux内核源码,还有固件。arm-none-linux-gnueabi-后空格,识别错误,commandno found驱动直接在官网下的最新的,是tar.bzip2格式的。以前碰到的都是tar格式的,直接最常用的tar -zxvf ***.tar就可以解压。这个格式的解压搜了好...
<< 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 >>