- 博客(215)
- 资源 (24)
- 收藏
- 关注
转载 build/envsetup.sh简记Android系统编译分析
每次进入到android source目录后的第一件事恐怕就是先执行. build/envsetup.sh,完成一些命令的初始化,今天主要分析envsetup.sh。1. 命令-也就是envsetup.sh中的函数function help() # 显示帮助信息function get_abs_build_var()
2012-05-07 13:15:17 730
原创 Android2.3 中如何使用GPU硬件加速
1.名词解释GPU:Graphic Processing Unit (图形处理器)OpenGL:Open Graphic Library 定义了一个跨编程语言、跨平台的编程接口的规格,不同厂商会有不同的实现方法,它主要用于三维图象(二维的亦可)绘制。SurfaceFlinger:Android中负责Surface之间叠加、混合操作的动态库Skia:Android中的2D图形库l
2012-03-29 15:51:14 631
原创 android copybit的应用
最近再弄6410 2d加速,想实现copybit,先是从网上搜相关的内容,从网上一搜东西还真不少,可是在看过之后,再打开自己的代码看了一下,很多都不一样,网上的很多的东西,只能是借鉴着看了。 android2.3.4的代码中已经加入了copybit功能,可是如果才能调用呢?
2012-03-29 15:27:20 988
转载 copybit调研报告
Copybit模块在android2.0以后归OpenGL管理,在libagl中专门有一个copybit.cpp文件对其进一步封装并进行管理。当然,也有越狱的时候,这个我们在后面讨论,首先还是看看copybit.cpp。注意在android.mk中有个宏定义,默认是打开的#define LIBAGL_USE_GRALLOC_COPYBITS1、libagl/copybi
2012-03-29 15:18:45 884
原创 线程局部存储(Thread Local Storage,TLS)
线程局部存储(Thread Local Storage,TLS)用来将数据与一个正在执行的指定线程关联起来。进程中的全局变量与函数内定义的静态(static)变量,是各个线程都可以访问的共享变量。在一个线程修改的内存内容,对所有线程都生效。这是一个优点也是一个缺点。说它是优点,线程的数据交换变得非常快捷。说它是缺点,一个线程死掉了,其它线程也性命不保; 多个线程访问共享数据,需要昂贵的同步
2012-03-29 11:32:34 698
原创 the target processor (armv4i) is not installed,问题解决方法
搜索一下,有的文章提到一些解决办法,有的提到修改一个ini文件,试过无效,还有一些其它的都试过了,废话不说,直接给出解决办法吧:用regedit打开找到如下路径:[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Platform Builder/6.00/Setup]把这几个改成下面这样的形式:"FP2_ENU"="C:/WINCE600/""FP2
2012-03-28 09:32:49 1920
原创 Android PMEM驱动分析
对PMEM机制的实现的分析同样可以从该设备的初始化开始,进而分析整个机制的运作。在pmem.c文件中我们可以发现,该设备通过module_init和module_exit分别定义了其初始化和退出函数,实现如下:static int pmem_probe(structplatform_device *pdev){struct android_pmem_platform_data*pdat
2012-03-19 13:47:25 2441
原创 [宏]_IO, _IOR, _IOW, _IOWR 宏的用法与解析
在驱动程序里, ioctl() 函数上传送的变量 cmd 是应用程序用于区别设备驱动程序请求处理内容的值。cmd除了可区别数字外,还包含有助于处理的几种相应信息。 cmd的大小为 32位,共分 4 个域:bit31~bit30 2位为 “区别读写” 区,作用是区分是读取命令还是写入命令。bit29~bit15 14位为 "数据大小" 区,表示 ioctl() 中的 arg 变量传送
2012-03-18 11:24:36 734 1
原创 pmem driver代码分析
Android会使用Linux中的pmem driver进行内存分配。通过代码的阅读,分配的关系我做了张简单的图。说明:1. pmem_probeA. 获得设备的内存空间,包括物理地址和大小B. 对空间的管理模块进行初始化,分区域C. 对空间进行 ioremap 2. pmem_openA. 创建新的pmem_data结构B. 并使之与pmem[]建立链
2012-03-18 10:42:37 708
原创 android2.3.7wifi移植
经过一周多的奋战,终于把WiFi成功的移植到了android2.3,我的硬件平台是s3c6410处理器, android2.3的无线设置中 成功检测到无线网络,且连接到无线路由,可以使用自带的浏览器上网,祝贺一下,下面把移植过程给大家分享,免得大家走弯路。 先给大家推荐外国朋友写的一篇博客,我发现国内的软件研发人员好多都是翻译这篇文章,我给大家推荐看原版的,因为有的人翻译过来,可能
2012-03-12 15:48:53 1636
原创 长按menu按键旋转屏幕方向
有个功能,通过长按menu按键,可以旋转屏幕方向(0°或者90°),这个功能有时蛮有用的,下面来看看是如何实现的: 1 修改按键处理程序 frameworks/policies/base/phone/com/android/internal/policy/impl/PhoneWindowManager.java boolean mSearchKeyPressed;
2012-02-13 12:56:25 1691
转载 Android NFS 文件系统
最近在研究android的移植,目标平台是s3c6410。在网上看到很多高手的文章,得到很多启发。这里有一篇如何使用nfs作为根文件系统的文章,写的不错, 转载到这里了,看了这篇文章以后,根据自己的使用心得,把自己的使用方法也写了下来,供大家参考[First written by Steve Guo, please keep the mark if forwarding.]Usua
2012-02-10 15:03:51 1085
原创 修改开机画面:initlogo.rle
Android系统开机动画包括两部分:开机显示的 ANDROID 文字;ANDROID发光动画。这篇文章说的开机动画是第一种,下面开始正文!1. 制作当前屏幕像素的图片(模拟器默认为320*480)使用PS制作一张320*480的图片,保存时选“保存为 Web 所用格式”,然后在弹开的窗口上,“预设”项选择“PNG-24”,保存为android_logo.png注:好像
2012-02-09 13:21:40 3774
原创 Android Build System ---- how to add your product and board config *.mk
1、Add board config 主要是定义和芯片相关的一些硬件配置 2、Product config主要配置一些产品提供的应用层功能
2012-02-04 15:15:15 869
原创 Android build system 分析
1. Android编译系统分析编译脚本及系统变量build/envsetup.sh脚本分析在编译源代码之前通常需要在android源代码顶层目录执行 . ./build/envsetup.sh 目的是为了使用脚本 envsetup.sh 里面定义了一些函1. Android编译系统分析编译脚本及系统变量build/envsetup.sh脚本分析在编译源代码之前通常需要
2012-02-04 15:13:26 1150
原创 2440快停产了,2416 能代替它吗?
三星最新推出的2416芯片相比2440具有压倒性的优势,是完美替代2440的首要选择1. 性能以及对视频播放能力的支持:2416 主频400MHz和2440持平,但是2416是ARM926JES内核,是ARM920T的增强版本,治理运行速度方面比2440要快很多,尤其表现在图像、视频和图片播放能力方面:2416在1024x768下面,可以完美支持VGA格式的MPEG4/AVI/DIVx/MPE
2011-12-20 15:43:30 1462
转载 Android多语言定制的机制
1、ICU4C简介 ICU4C(ICU for C, http://site.icu-project.org/ ) 是ICU在C/C++平台下的版本, ICU(International Component for Unicode)是基于"IBM公共许可证"的,与开源组织合作研究的, 用于支持软件国际化的开源项目。ICU4C提供了C/C++平台强大的国际化开发能力,软件开发者几乎可以使用ICU
2011-11-08 15:04:34 778
原创 android gps杂乱分析
在上层调用locationManager.isProviderEnabled(android.location.LocationManager.GPS_PROVIDER))时返回了false,追了一下代码看看,以下是在LocationManagerService.java中private void _loadProvidersLocked() { // Attempt to
2011-10-21 10:40:05 889
转载 android JNI那些事
http://www.cnblogs.com/MarsGG/articles/2057433.html首先说明,Android系统不允许一个纯粹使用C/C++的程序出现,它要求必须是通过Java代码嵌入Native C/C++——即通过JNI的方式来使用本地(Nati
2011-10-16 16:26:23 535
转载 porting gps to android2.3
最近刚好有机会移植一款GPS到我们的产品上,就GPS模块移植本身而言,是很简单的。做过WINCE 或PC开发GPS的朋友肯定很清楚了,无非就是把GPS的标准数据从串口读出来,然后解析,应用程序获取其中经纬度,定位时间等信息,根据自己的需求或转化成地图上具体地点,或做其它使用。
2011-10-15 17:16:12 678
转载 GPS启动分析
首先来看看GPS模块的代码结构:Framework:1.frameworks/base/location/java/android/location这里主要是用来被App调用的,API包是android.location。2.framework
2011-10-13 16:29:46 650
转载 分析Android+根文件系统启动过程(init守护进程分析)
今天开始分析Android 根文件系统启动过程。在Android系统启动时,内核引导参数上一般都会设置“init=/init”,这样的话,如果内核成功挂载了这个文件系统之后,首先运行的就是这个根目录下的init程序。这个程序所了什么呢? 我们只有RFSC(Readthe
2011-10-12 15:01:12 461
转载 property_get/property_set
每个属性都有一个名称和值,他们都是字符串格式。属性被大量使用在Android系统中,用来记录系统设置或进程之间的信息交换。属性是在整个系统中全局可见的。每个进程可以get/set属性。在系统初始化时,Android将分配一个共享内存区来存储的属性。这些是由“i
2011-10-11 08:54:36 1046
转载 分析android的gadge
分析android的gadget:gadget部分的UDC和API基本上弄懂了,现在开始研究android上的USB-gadget实现,开始读代码1:首先从init开始。static int __init init(void){
2011-10-09 17:31:20 1357
转载 UBIFS分区制作及UBIFS烧写和启动
UBIFS分区制作及UBIFS烧写和启动相关命令工具ubiattach version 1.0 - a tool to attach MTD device to UBI.Usage: ubiattach [-m ] [-d ][--mtdn=]
2011-09-22 08:46:17 3892
转载 ubifs
第一、什么是ubifs?由IBM、nokia工程师Thomas Gleixner,Artem Bityutskiy等人于2006年发起,致力于开发性能卓越、扩展性高的FLASH专用文件系统,以解决当前嵌入式环境下以FLASH作为MTD设备使用时的技术瓶颈。
2011-09-17 10:43:22 633
转载 浅谈Android开机启动速度优化(含应用程序启动速度优化)
众所周知Android开机启动速度较慢,于是如何加快启动速度便成为一个值得讨论的问题。在查阅过许多资料后(特别是Google Group的android-platform),我整理总结出下面几点基本看法。 Android开机启动耗时较多的部分有2个,分别是preloa
2011-09-05 20:13:44 1058
转载 Android重量级开发之--提高android启动速度研究
作者:Tigertang2@gmail.com 大家都知道启动速度慢是智能操作系统的一个通病,Android也不例外,启动速度大概在1分钟左右,虽然日本有一个叫quick boot的一秒启动android的产品,
2011-09-05 19:48:29 1414
原创 Android的RIL驱动模块启动流程
Android的RIL驱动模 块, 在hardware/ril目录下,一共分rild,libril.so以及librefrence_ril.so三个部分,另有一 radiooptions可供自动或手动调试使用。都依赖于include目录中ril.h头文件。目前cupcake分支上
2011-09-05 09:17:59 733
转载 android使用socket使底层和framework通信
一般的native和framework的通信是通过jni,但是这一般只是framework调用native,native如果有消息要怎样通知上层 呢?android中GSP模块提供一种解决思路,但是实现有些复杂,这里介绍一种使用socket通信的方法可以使native和frame
2011-09-05 09:00:24 550
转载 分析一下s3c6410的SD卡启动过程
1、资料上说SD卡分两种,一种是普通的SD卡,一种是SDHC卡,主要区别是后者支持大容量,高速;但是文件系统必须都是FAT32,所以无法格式化为FAT32文件系统的卡是无法使用的,这主要是为了兼容SDHC卡,因为只有FAT32的系统才能管理大容量的存储设备,所以SDHC卡都必须使
2011-09-03 12:34:54 2044 2
转载 WIFI移植
手动加载驱动####16th,Jul驱动加载modprobe libertasmodprobe libertas_sdio加载第二行时出错拉# modprobe libertas_sdiolibertas_sdio: Libertas SDIO dri
2011-08-30 13:30:46 1710
转载 从Java到C++ — 对比Java与C++编程的不同
原作:Cay Horstmann 英文原文翻译:Aqua prglab.com注:很多程序员包括本人在内都是先学会的Java,然后才学的C++,其实C++与Java有很多相似和互通之处,有相当的Java知识可以对应转化到C++概念,从而帮助我们快速上手。这篇
2011-08-30 08:01:30 684
原创 ubi and ubifs应用手记
1.配置ubi and ubifsin .config CONFIG_MTD_UBI=y CONFIG_UBIFS_FS=y CONFIG_CRYPTO_ALGAPI=y CONFIG_CRYPTO_DEFLATE=y CONFIG_CRYPTO_
2011-08-06 22:44:34 4529
原创 UBIFS 文件系统的使用
UBIFS 文件系统的使用一、 UBIFS 简介 由IBM、nokia工程师Thomas Gleixner,Artem Bityutskiy等人于2006年发起,致力于开发性能卓越、扩展性高的FLASH专用文件系统,以解决当前嵌入式环境下以FLASH作为MTD设
2011-08-06 22:43:38 3730
原创 android ndk 学习
Android系统中的应用程序都是用Java开发的。Android NDK使我们能够在android上使用C/C++开发的原生代码。有两个理由使用NDK: 一是合理的重用现有的代码;二是在程序中某些关键的部分提高执行效率。这里先讲几个符号的约定: - 你的Android应
2011-08-06 20:00:30 541
原创 ubifs系统介绍及使用
在linux-2.6.27以前,谈到Flash文件系统,大家很多时候多会想到cramfs、jffs2、yaffs2等文件系统。它们也都是基于文件系统+mtd+flash设备的架构。linux-2.6.27后,内核加入了一种新型的flash文件系统UBI(Unsorted Bloc
2011-08-06 19:33:15 1197
转载 GPS设置及原理教程
第一、首先是GPS定位原理那GPS是用什么来确定你和卫星的距离的呢? 公式:距离=速度*时间无线电波的速度是恒定的,那计算时间就可以得到距离了。GPS卫星上载有原子钟,并不停地发送含有时间信息的代码。GPS接收器(芯片)就是接收这些代码,并转译出时间信息。然后用本地的时间
2011-08-05 10:56:14 1805
转载 Android2.1下调试3G模块(三)
现在开始介绍如何实现ppp拨号上网。在/system/etc下创建ppp目录,并在ppp目录下创建以下文件: 1.init.gprs-pppd#!/system/bin/sh# An unforunate wrapper scriptPPPD_PI
2011-08-05 07:53:58 2317
原创 Android2.1下调试3G模块(二)
前面讲到了如何让修改kernel驱动和ril层代码,接下来还需要增加ppp拨号以及设备文件和服务属性。1.修改init.gprs-pppd属性对应文件:system/core/include/private/android_filesystem_config.h在st
2011-08-05 07:53:09 1666
qmodbus-master.rar
2020-02-11
深圳世国摄像机资料.rar
2019-11-30
tensorflow_clib_call_object_detect_linux.tar.gz
2019-11-30
tensorflow_gpu-1.9.0+nv18.8-cp27-cp27mu-linux_aarch64_jetpack3.3.whl
2019-07-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人