自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

李明浩的blog

默默地喜欢编程

  • 博客(71)
  • 资源 (6)
  • 收藏
  • 关注

原创 Yudatun

github上我想做一个开源framework框架,为像raspberrypi这类硬件提供编程环境,想提供各种丰富的类库来支持各类硬件编程,我参考了android的开源框架,目前已经编写出build环境,移植了基本的编译器环境,刷机环境等等,之后想使用些新的语言例如go, lua作为编程主流语言,还想搭建个论坛,但是个人能力有限,期间陆陆续续的做,是否有志同道合的人愿意同我一起做,一起学习,目前这

2016-02-18 14:16:05 590

原创 qcts--快速使用Android CTS进行测试和Debug的小工具

简介:Android兼容性测试(CTS)和连带的兼容性定义文档(CDD),是一个确保终端设备与特定版本Android(比如4.0, 4.1, 4.2, 4.3, 4.4)兼容的自管理程序。CTS测试集包含大约24,000个在Android设备上运行的测试用例,这些用例分别针对电话、图形、相机、GPS、触摸 屏、无线网等功能。Google针对每个主要Android版本公布了CDD文档,其中指

2013-12-16 19:45:33 10113

转载 linux - inotify

1. inotify主要功能它是一个内核用于通知用户空间程序文件系统变化的机制。众所周知,Linux 桌面系统与 MAC 或 Windows 相比有许多不如人意的地方,为了改善这种状况,开源社区提出用户态需要内核提供一些机制,以便用户态能够及时地得知内核或底层硬件设备发生了什么,从而能够更好地管理设备,给用户提供更好的服务,如 hotplug、udev 和 inotify 就是这种需求

2013-05-28 21:36:08 593

转载 native-activity 工程完全注解

来源:http://wzhnsc.blogspot.com/2011/10/android-ndk-r5bsamplesnative-activity.html// android-ndk-r5b/samples/native-activity一、native-activity/default.properties 文件内容:# This file is automat

2013-05-10 09:56:50 994

转载 Android Resource处理流程分析-- R.java文件中资源ID的含义

在Android中资源的使用几乎无处不在,layout、string、drawable、raw、style、theme等等都是。这些资源会在编译过程中被打包进APK中(res文件夹)或者被打包成独立的资源APK包(比如framework-res.apk)。但是这些资源都会被赋予独一无二的ID即资源索引来方便系统访问。这些资源索引由Android的工具AAPT(Android Asset

2013-04-03 16:38:00 1855

转载 Linux内核里的DebugFS

DebugFS,顾名思义,是一种用于内核调试的虚拟文件系统,内核开发者通过debugfs和用户空间交换数据。类似的虚拟文件系统还有procfs和sysfs等,这几种虚拟文件系统都并不实际存储在硬盘上,而是Linux内核运行起来后才建立起来。通常情况下,最常用的内核调试手段是printk。但printk并不是所有情况都好用,比如打印的数据可能过多,我们真正关心的数据在大量的输出里不是那么一目了然

2013-03-24 21:01:58 637

转载 repo使用

1 repo介绍Android 使用 Git 作为代码管理工具,开发了 Gerrit 进行代码审核以便更好的对代码进行集中式管理,还开发了 Repo 命令行工具,对 Git 部分命令封装,将百多个 Git 库有效的进行组织。1.1    清单库文件介绍一个清单库可以包含多个清单文件和多个分支,每个清单文件和分支都有对应的版本。清单文件以xml格式组织的。

2013-03-22 09:52:59 1380

转载 设计模式 -- 代理模式(Proxy Pattern)

1.概述     代理模式(Proxy):为其他对象提供一种代理以控制对这个对象的访问。所谓代理,就是一个人或者一个机构代表另一个人或者另一个机构采取行动。在一些情况下,一个客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。     代理模式的意图是为其他对象提供一种代理以控制对这个对象的访问。首先,作为代理,代理对象必须与被代理对象有相同的接口,这是

2013-03-20 16:16:16 614

转载 教你透彻了解红黑树

转自: http://blog.csdn.net/v_JULY_v/article/details/6105630,感谢作者辛勤的写出这篇好文章 作者:July、saturnman   2010年12月29日本文参考:Google、算法导论、STL源码剖析、计算机程序设计艺术。推荐阅读:Left-Leaning Red-Black Trees,Dagstuhl Wo

2013-03-07 20:25:30 468

转载 用户空间与内核空间数据交换的方式(1)------debugfs

内核开发者经常需要向用户空间应用输出一些调试信息,在稳定的系统中可能根本不需要这些调试信息,但是在开发过程中,为了搞清楚内核的行为,调试信息非常必要,printk可能是用的最多的,但它并不是最好的,调试信息只是在开发中用于调试,而printk将一直输出,因此开发完毕后需要清除不必要 的printk语句,另外如果开发者希望用户空间应用能够改变内核行为时,printk就无法实现。因此,需要一种新的机制

2013-03-07 15:41:07 541

转载 _IO

在驱动程序里, ioctl() 函数上传送的变量 cmd 是应用程序用于区别设备驱动程序请求处理内容的值。cmd除了可区别数字外,还包含有助于处理的几种相应信息。 cmd的大小为 32位,共分 4 个域:bit31~bit30 2位为 “区别读写” 区,作用是区分是读取命令还是写入命令。bit29~bit15 14位为 "数据大小" 区,表示 ioctl() 中的 arg 变量传送

2013-03-07 10:19:57 566

转载 linux下有专门的文件系统用来对设备进行管理,devfs和sysfs就是其中两种。

一、devfs  devfs是在2.4内核就出现了,它是用来解决linux中设备管理混乱的问题,你查看一下/dev下的设备文件就知道其中有许多是空的(也就是没有对应的硬件的),但是它们却必须存在,所以这给linux设备管理带来了很多麻烦,为了解决这个问题,linux内核开发人员开发了devfs,并用一个守护进程devfsd来做一些与以前硬件驱动兼容的事情。  devfs和sysfs都是和p

2013-02-21 20:00:27 561

转载 Android属性系统

属性(property)系统对Android来说是一个重要的功能。他作为一个系统服务管理着系统的配置和状态,所有的这些系统配置和状态都是属性(property)。属性(property)是一对键/值(key/value)组合,键和值都是字符串类型。总体感觉属性系统非常像Windows的注册表的功能。Androd中非常多的应用程序和库直接或者间接的依赖于属性系统,并由此决定其运行期的行为。例如:ad

2012-09-12 09:30:37 478

转载 epoll介绍

epoll原理 epoll是多路复用IO(I/O Multiplexing)中的一种方式,但是仅用于linux2.6以上内核,在开始讨论这个问题之前,先来解释一下为什么需要多路复用IO.以一个生活中的例子来解释.假设你在大学中读书,要等待一个朋友来访,而这个朋友只知道你在A号楼,但是不知道你具体住在哪里,于是你们约好了在A号楼门口见面.如果你使用的阻塞IO模型来处理这个问题

2012-09-10 16:03:53 569

转载 epoll使用

epoll 使用epoll使用epoll的工作原理是,你如果想进行IO操作时,先向epoll查询是否可读或可写,如果处于可读或可写状态后,epoll会通过epoll_wait函数通知你,此时你再进行进一步的recv或send操作。epoll仅仅是一个异步事件的通知机制,其本身并不作任何的IO读写操作,它只负责告诉你是不是可以读或可以写了,而具体的读写操作,还要应用层自己来作。e

2012-09-08 13:35:04 432

转载 ASCII,unicode, utf8 ,big5 ,gb2312,gbk,gb18030等几种常用编码区别

1. ASCII码    目前计算机中用得最广泛的字符集及其编码,是由美国国家标准局(ANSI)制定的ASCII码(American Standard Code for Information Interchange,美国标准信息交换码),它已被国际标准化组织(ISO)定为国际标准,称为ISO 646标准。适用于所有拉丁文字字母,ASCII码有7位码和8位码两种形式。     我们

2012-08-31 08:40:13 2270

转载 C++的XML编程经验――LIBXML2库使用指南

写这篇文章的原因有如下几点:1)C++标准库中没有操作XML的方法,用C++操作XML文件必须熟悉一种函数库,LIBXML2是其中一种很优秀的XML库,而且它同时支持多种编程语言;2)LIBXML2库的Tutorial写得不太好,尤其是编码转换的部分,不适用于中文编码的转换;3)网上的大多数关于Libxml2的介绍仅仅是翻译了自带的资料,没有详细介绍如何在windows平台下进行编程,更很少提到如

2012-08-13 10:03:09 865

转载 将 Linux 应用程序移植到 64 位系统上

Linux 是可以使用 64 位处理器的跨平台操作系统之一,现在 64 位的系统在服务器和桌面端都已经非常常见了。很多开发人员现在都面临着需要将自己的应用程序从 32 位环境移植到 64 位环境中。随着 Intel® Itanium® 和其他 64 位处理器的引入,使软件针对 64 位环境做好准备变得日益重要了。与 UNIX® 和其他类 UNIX 操作系统一样,Linux 使用了 LP64

2012-08-11 10:41:00 735

转载 sqlite3中BLOB数据类型存储大对象运用示例

1:常用接口个人比较喜欢sqlite, 使用最方便,唯一的准备工作是下载250K的源;而且作者很热心,有问必答。以下演示一下使用sqlite的步骤,先创建一个数据库,然后查询其中的内容。2个重要结构体和5个主要函数:sqlite3               *pdb, 数据库句柄,跟文件句柄FILE很类似sqlite3_stmt      *stmt, 这个相当于ODBC的Com

2012-08-03 11:55:12 1397

转载 显示对话框的几种方法

在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择。这些功能我们叫它Android Dialog对话框,在我们使用Android的过程中,我归纳了一下,Android Dialog的类型无非也就7种,下面我分别向大家介绍这7种Android Dialog对话框的使用方法,希望对大家能有所帮助。1.该效果是当按返回按钮时弹出一个提示,来确保无误

2012-07-29 20:58:29 1481

转载 Protocol Buffer Basics: C++

[email protected] out 首页Products活动展示区Live组Protocol Buffers▾Developer GuideOverviewLanguage GuideStyle GuideEncoding▾TutorialsBasics:

2012-07-27 09:45:03 773

转载 Protocol Buffers的安装使用和C++入门示例

1. 介绍   protoc buffers是google公司开发和开源的一款数据序列化和反序列化的工具。Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化。它很适合做数据存储或 RPC 数据交换格式。可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。官方支持C++、java和pthon语言,并且有大量的第

2012-07-25 13:28:38 709

转载 Ubuntu下安装SQLite3

1.介绍:sqlite3是linux上的小巧的数据库,一个文件就是一个数据库。2.安装:  要安装sqlite3,可以在终端提示符后运行下列命令:  sudo apt-get install sqlite3  检查版本  sqlite3 -version3.测试  当前目录下建立test.db测试数据库文件  sqlite3 test.db  查询信息  .

2012-07-25 11:35:01 2056

转载 linux内核学习

linux内核学习。(转)hecrics Post at 2010-12-27 15:16:001. 内核学习方法,编译、调试等常见问题1.1 关于编译升级内核到2.6.0的一些问题 作者:ommm        http://linux.chinaunix.net/bbs/thread-281831-1-5.html1.2 VMWare Workstati

2012-07-20 19:47:54 1256

转载 使用git/github管理ios项目 个人总结

首先 github上的项目是开源的,别人都可以看到,所以你懂的。。。。找了几篇关于github的教程,一步一步照葫芦画瓢 下面是两个自我感觉不错的教程,其他的都太墨迹了,食之无味:使用github管理iOS分布式项目开发 http://www.cnblogs.com/516inc/archive/2012/03/28/2421492.html     (比较详细)tit /

2012-07-20 15:09:46 6995

转载 Building Kernel from source

Contents[hide]1Install CyanogenMod on the device2Install development support packages2.1Debian based Linux distributions2.2Red Hat based Linux distributions3Setup Repo4Download

2012-07-20 14:43:56 837

转载 Galaxy Nexus (GSM): Compile CyanogenMod 9 (Linux)

How to compile CyanogenMod for Maguro (GSM Galaxy Nexus).This how-to was written for Ubuntu 12.04 for Maguro runningCyanogenMod 9.x (Ice Cream Sandwich), on 12 April 2012.Contents[hi

2012-07-20 14:38:55 740

转载 linux内核调试环境搭建-

kvm系统的前端是qemu-kvm,工作在用户空间,给用户提供一套方便的kvm虚拟化工具集合。下面来介绍一下qemu-kvm-0.11.0的编译过程。 1、下载wget http://sourceforge.net/projects/kvm/files/qemu-kvm/0.11.0/qemu-kvm-0.11.0.tar.gz/downloadmv downloa

2012-07-20 11:50:37 1344

转载 使用KGDB调试内核 on QEMU(一步一步跟我学)

1: 编译Linux + KGDB1.1: 安装编译工具请参考其他相关教程,推荐在安装系统的时候就选择上编译器及支持库1.2: 下载最新内核代码在lmkl.org下载最新的内核源码, 可以直接使用浏览器下载代码,当然也可以使用命令wget来下载,下载后需使用tar来解压源代码。这里我们选择linux-2.6.34.1来演示。假设缺省工作目录为/usr/src/work?Vi

2012-07-19 19:09:46 901

转载 在Ubuntu上下载、编译和安装Android最新内核源代码(Linux Kernel)

在前一篇文章提到,从源代码树下载下来的最新Android源代码,是不包括内核代码的,也就是Android源代码工程默认不包含Linux Kernel代码,而是使用预先编译好的内核,也就是prebuilt/android-arm/kernel/kernel-qemu文件。那么,如何才能DIY自己的内核呢?这篇文章一一道来。      一. 首选,参照前一篇在Ubuntu上下载、编译和安装Andr

2012-07-18 09:31:10 499

转载 在Ubuntu上下载、编译和安装Android最新源代码

看完了前面说的几本书之后,对Linux Kernel和Android有一定的认识了,是不是心里蠢蠢欲动,想小试牛刀自己编译一把Android源代码了呢?一直习惯使用Windows系统,而Android源代码是不支持在Windows上编译上,于是决定使用虚拟机安装Ubuntu,然后下载、编译和安装Android源代码。     一. 环境准备。     1. 磁盘空间预留20G左右,内存3G

2012-07-18 09:19:26 507

转载 Android文档及学习资料整理 【至2011年7月】

学习参考网站Android Developers  官方开发网站,有权威的 Dev Guide 和 ReffrenceAndroid Source  官方Android全部开源源码网站,提供下载源码至本地的步骤Xda-developers Android版  很多技术高手、黑客,最新的破解研究提供机锋网  机锋论坛 安卓网  安卓网论坛 eoeAndroid  eoeAndroid开发

2012-07-15 17:07:37 1300

转载 Android系统源代码情景分析:基础知识

!   目前,互联网行业正在朝着移动互联网方向强劲地发展,而移动互联网的发展离不开背后的移动平台的支撑。众所周知,如今在移动平台市场上,苹果的iOS、谷歌的Android和微软的Windows Phone系统已经形成了三足鼎立的形势,而Android系统的市场占有率是最高的。Android系统之所以能够在市场上占据着第一的位置,一来是因为它依托着

2012-07-15 16:55:09 3260

转载 linux 查看进程占用内存

1.top top -b -n 1 |grep opera|awk '{print "cpu:"$9"%","mem:"$10"%"}'    cpu:0.0% mem:26.4%2. ps -aux其中:RSS-------------进程实际占用物理内存大小;VSZ--------------任务虚拟地址空间的大小3./proc/pid/status[r

2012-07-11 17:10:40 1483

转载 玩转pandaboard之linaro对于Android的编译上的一些优化

之前看ELC2011的video轮播, 其中有Linaro发表的关于android platform的section, 其中说到了linaro对于android做了一些优化,尤其是编译上的. 这里就总结下其中提到的内容及相关概念.首先,来看一下Linaro对AOSP的具体做了哪些优化:使用O3代替了O2 关闭了默认的-fno-strict-aliasing, 新增-fm

2012-07-11 14:01:49 885

转载 Traceview的使用

Traceview是android平台配备的一个很好的性能分析工具。它可以通过图形化的方式让我们了解我们要跟踪的程序的性能,并且能具体到method。使用Traceview的版本限制对于Android 1.5及以下的版本:不支持。对于Android 1.5以上2.1下(含2.1)的版本:受限支持。trace文件只能生成到SD卡,且必须在程序中加入代码。对于Android 2.2上(

2012-07-10 13:40:49 671

转载 Linux proc详解

Linux procfs详解 1.0 proc文件系统总览 在类Unix系统中体现了一种良好的抽象哲学,就是几乎所有的数据实体都被抽象成一个统一的接口--文件来看待,这样我们就可以用一些简单的基本工具完成大量复杂的操作。在Linux中存在着一类特殊的伪文件系统,用于使用与文件接口统一的操作来完成各种功能,例如ptyfs、devfs、sysfs和procfs。而procfs就是其中应

2012-07-10 12:58:40 1118

转载 android:DDMS查看Threads

有时候程序运行出现死锁或者信号量卡死是很纠结的问题,单看代码很难分析定位问题,这时候可以借助DDMS来查看threads的运行情况,一目了然。     手机连接上USB,确保adb连通,然后启动Eclipse里的DDMS,这时候应该手机就正常连接上了             就如上图中显示的,只要连接上了就可以查看某个进程里的所有线程的活动了; 下面具体解释下Threads标签页里给出

2012-07-10 11:44:16 2389

转载 android ddms中查看线程释疑

大家都用过ddm,如果你用ddms查看一个程序的所有线程,你会发现Signal CatcherHeap Workermain threadbinder thread #1binder thread #2那这些线程都是用来做什么的呢?我来给大家介绍一下android中的线程在Android系统中,Java层和c++/c层都可以创建线程。不过Java层创建的线程最终都由c+

2012-07-10 11:42:27 576

转载 Ant入门教程

看这篇文章之前,假设您已经具备下列条件,否则阅读这篇文章对您帮助不会太大。 Ubuntu下,成功安装JDK1.6并配置环境变量 Ubuntu下,成功下载、配置好ant环境 Ubuntu下,成功安装Android-sdk,并且配置好tools、platform-tools环境变量好吧,开始ant开发Android之旅!/home/mark/android/android-sdk-li

2012-07-05 12:26:05 700

AndroidAPK

详细分析了Android系统资源打包过程appt

2013-06-20

linux-zero.zero

这是linux kernel的最小系统,深入理解了它,你将收益非浅

2012-10-04

Beginning Android2

Begining Android2 一本国外的好书,虽然是英文版,但是写得通俗易懂,很好的

2012-07-30

深入理解python中文版

深入详细介绍了python的特性,使你对python的理解和学习更上一层楼,非常好的一本书

2012-07-27

git文档中文版

学习git工具使用的,写得非常好,不但讲操作,而且还描述了原理性的很多东西,非常棒,学完之后立马可以利用git管理你的项目

2012-07-27

CMake 实践 文档

CMake好用的Make使你编写Make不再头疼,比automake更加强大

2012-03-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除