自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(23)
  • 收藏
  • 关注

转载 ARM的C语言与汇编语言混合编程

转:http://hi.baidu.com/fuanhong/item/ffe6097fc12c603e6dc37c9d 基于ARM的C语言与汇编语言混合编程 C语言与汇编语言混合编程应遵守的规则 在使用C语言时,要用到和汇编语言的混合编程。若汇编代码较为简洁,则可使用直接内嵌汇编的方法;否则要将汇编程序以文件的形式加入到项目中,按照ATPCS(ARM/Thu

2012-06-01 16:02:26 1876

原创 Dalvik 指令学习

Dalvik 指令可在在 android2.32\dalvik\docs\opcodes 中看到很详细的介绍网上也有很多参考资料,比如 http://blog.csdn.net/hlchou/article/details/6303566也可以在源码中 \android2.32\dalvik\libdex\OpCode.h 能找到很详细的定义 通过对源码的分析及相关资料搜索,再进行

2011-11-10 11:18:18 3052

转载 Linux下的反调试技术

转自  http://wangcong.org/blog/archives/310 如何防止自己的程序被调试器跟踪,这是一个很有趣的话题,也是反逆向工程中的一个重要话题。这里简单介绍一下Linux平台上的反调试技术。(本文主要参考:http://blog.txipinet.com/2006/10/05/37-tecnicas-anti-debugging-sencillas-para-

2011-11-09 10:38:08 2432

原创 SIP 学习 (8) --- endpoint

下图是来至 http://zhangwenjie.net 中的 PJSIP 开发指南  可惜在写此文的时候不能够访问! 从上图中可以看到 END POINT 是一个中心,有着非常重要的作用。而 PJSIP 官网中:https://trac.pjsip.org/repos/doxygen/pjsip/html/modules.htm 也说到是一个 Very Cor

2011-11-07 14:40:41 2431

原创 SIP 学习 (7) --- C语言中的面向对像

上文的 uri 分析中我们发现结构体总是有一个指针,注释写的很明白,是一个虚拟函数指针,和C++中的虚表中却是十分想像。 不此在 PJSIP 中十分常见,在 Android 源码中,还有其它的开源工程也是很常见的。好的,写个简单工程来解释疑惑。/** * 用 c 语言实现类的继承,并且可用父类指针操作子类对像的一个测试例子 * * @Author: tomken.zhan

2011-11-04 11:20:05 2138

原创 SIP 学习 (6) --- PJSIP URI Parser

在 SIP 中,用户 URI 描述是最基本的一项信息,也有相应的格式,先看看这个是怎样解析的吧。 实际上在好的工程下面都有完备的单元测试代码,同样在 PJSIP 中也是能找到相关的测试代码,我们可以打开 pjproject-1.10\pjsip\src\test\uri_test.c 在代码中举例出不下 38 种 URI 格式,用以程序分析,可见仅仅一个字符串解析,这个工程也是做的

2011-11-04 10:07:55 3299

原创 Android 类实现探索-系统基础类

一直在研究 Dalvik 的实现,今天突然想起一件事情,我们默认可以用 java.lang.Object 等系统类,他是在什么时候被加载进来了呢,我们自己的类是否可以这样预先加载进去呢? 顺着这个思路,再回顾一下原来对 Zygote 启动时的流程,探索一番! Zygote 启动流程(网上有很多的分析不太详诉):>>>  Kernel 启动>>>  启动 init 程序,此程

2011-11-02 10:31:38 3676

原创 SIP 学习 (5) --- PJSIP

PJSIP 我们要分析的重点 引用官方的一张图: PJLIB 做为与系统打交道底层支持库PJLIB-UTIL 是封装的一些工具库PJNATH  则是对 NAT 相关做支持PJMEDIA 完成 SDP 与媒体栈的封装而上面的又需要第三方库支持,就是源码目录中的 third_partyPJSIP 则简单很多只需要 PJLIB-UTIL 与 PJLIB 的支持

2011-10-26 14:16:59 4374 2

原创 SIP 学习 (4) --- PJLIB-UTIL

这个库看名字应该是对 PJLIB 进行扩展的一个包。同样打开 include 看看,发现一个头文件 pjlib-util.h #ifndef __PJLIB_UTIL_H__#define __PJLIB_UTIL_H__/** * @file pjlib-util.h * @brief pjlib-util.h *//* Base */#include

2011-10-26 13:54:29 3282 1

原创 SIP 学习 (3) --- PJLIB

打开 PJLIB 的 include 目录 pjlib.h 非常明显的头文件,做为基础库的头文件,是我们分析的起点 #ifndef __PJLIB_H__#define __PJLIB_H__/** * @file pjlib.h * @brief Include all PJLIB header files. */#include // 网络

2011-10-26 11:31:33 4143 4

原创 SIP 学习 (2) --- PJSIP

SIP 在移动开发中,经常让人提及的是 pjsip, 官方网站: http://www.pjsip.org/他的优缺点网上和官方自有介绍。 我的学习计划就是对这个开源软件进行分析及与 SIP 协议进行对比,从而加大对 SIP 这块领域的了解。 下载源码 pjproject-1.10通过网络了解如下信息:PJSIP 这个库实际上是几个部分组成的:    1).PJSI

2011-10-26 10:53:53 5135

转载 SIP 学习 (1)

最近在学习SIP,刚刚看了一个很好的开源工程 pjsip 很强大!  可是对 SIP 还不是很了解,特增加了一个学习计划:SIP学习 RFC 文档参见:http://www.ietf.org/rfc/rfc3261.txtSIP 也是类似 HTTP 的一个协议集合,在网上搜索了一下相关的信息,摘录如下: SIP消息的第一行包含消息的类型和所使用的SIP版本(2.0)。在请求中,

2011-10-26 10:32:58 3846 1

原创 Android 开发技巧汇总

安装 APKIntent intent = new Intent(Intent.ACTION_VIEW);intent.setDataAndType(Uri.fromFile(new File("/sdcard/SafeMgr_Android_V1.5.32_Update.apk")), "application/vnd.android.package-archive");startA

2011-10-24 10:27:22 1884

转载 JNI 使用,原来我一直错

转自:  http://www.ibm.com/developerworks/cn/java/j-jni/最好看原版吧,排版非常好,这里粘贴是为了备份一下! Java 环境和语言对于应用程序开发来说是非常安全和高效的。但是,一些应用程序却需要执行纯 Java 程序无法完成的一些任务,比如:JNI 的发展JNI 自从 JDK 1.1 发行版以来一直是 Java 平台的一部

2011-10-20 13:18:50 6522

原创 CyanogenMod 编译环境搭建笔记

著名的 CyanogenMod 为我们 Android 用户提供了一个可选择的精简 ROM,同时也是一个开源工程。值得学习! 在网上找了找相关的环境搭建,应该不太难!在这里初步列一下大概步骤: 1. 获取 repo     curl http://androi

2011-10-17 16:03:08 1789

原创 SuperUser for Android 实现分析

著名的 Superuser 程序是一直我们 root 后必装的一个软件,同时也保证了我们在 root 后安全的使用 root 能力。 在这里十分赞同这样的行为,在对设备进行扩充能力的同时避免扩充后的弊端, 再一次证明双刃剑要合理运用的道理。 如果说 root ex

2011-10-14 13:48:50 3945

原创 漏洞 — zergRush (补充)

没看到上文的参见一下 http://blog.csdn.net/tomken_zhang/article/details/6866260 上文中还没有来细细分析漏洞的出处及利用过程,现在又有所收获,特记录下来。 上文说到,向 vold 发送了一段 SOCKET

2011-10-13 15:20:33 5216

原创 Binder 使用探索

在 Android 中 Binder 不可不知。 究竟 Binder 下面是如何玩转呢, 又是探索源代码的好理由  :D 在 Driver 中有 Binder 的驱动,这块就不深入了解了,只想了解在使用上面的一些原理。在源码中搜索发现三处目录比较重要\an

2011-10-10 15:39:18 1043

原创 Android 类实现探索-原始数据类型

在上几篇中留下了一个疑点 struct DataObject { Object obj; /* MUST be first item */ /* variable #of u4 slots; u8 u

2011-10-10 10:07:25 521

原创 Android 类实现探索-继承

上一篇文章有说到,在Android中的每一个类,在内存中都是以ClassObject结构体来表示的。而类的每个方法都是以Method结构体来表示的。具体可看源码中的 Object.h  在 ClassObject 中有下面几个变量和今天的题目有关: Class

2011-10-10 09:26:12 635

原创 Android 类实现探索-内存结构

通过源码中的 Object.h 中可以看到 typedef struct Object { /* ptr to class object */ ClassObject* clazz; /* * A word containi

2011-10-10 08:52:54 564

原创 漏洞 — setuid 使用

在 Android 开发中,有一个 ADBD 服务,是为了让开发者可以调试程序。用 adb shell 连上手机,通过 ps 命令看 adbd 进程的信息:shell 19128 1 3448 196 ffffffff 00008294 S /sbin/

2011-07-20 11:04:28 909

原创 漏洞 — noreturn 使用

如下二种对函数 func 进行的声明:int func() __attribute__ ((noreturn)); int func() ; 执行结果略会略有不同,如果使用不当,存在被利用的风险,看如下使用:if(err != 0){ func();

2011-07-20 10:46:42 375

空空如也

空空如也

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

TA关注的人

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