- 博客(310)
- 资源 (34)
- 收藏
- 关注
原创 Android中的so注入(inject)和挂钩(hook) - For both x86 and arm
对于Android for arm上的so注入(inject)和挂钩(hook),网上已有牛人给出了代码-libinject(http://bbs.pediy.com/showthread.php?t=141355)。由于实现中的ptrace函数是依赖于平台的,所以不经改动只能用于arm平台。本文将之扩展了一下,使它能够通用于Android的x86和arm平台。Arm平台部分基本重用了libinject中的代码,其中因为汇编不好移植且容易出错,所以把shellcode.s用ptrace_call替换掉了,另
2013-08-11 16:27:20 74384 91
转载 android JNI utils/Log.h 找不到 解决方法
在JNI的c文件中如果用到了#include 然后用NDK 编译的时候会提示error: utils/Log.h: No such file or directory如果想要他的LOG功能的话1-----修改Android.mk文件配置,添加如下语句LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog2-----在.c文件中修改为如
2013-08-08 11:18:31 7421
转载 Ubuntu中sudo执行需要网络代理的命令
哪怕在root和普通用户的环境变量中都设了代理,通过sudo执行需要代理的命令仍然不行,如:$ sudo apt-get install xxx解决方法是在/etc/sudoers中加入:Defaults env_keep += "http_proxy https_proxy no_proxy"
2013-07-18 17:22:19 5153
原创 用U盘安装Ubuntu 12.04无法启动
用Universal USB Installer制作安装盘,安装完了启动提示:error: file not foundgrub rescue>坑爹啊,用都没开始用就要rescue了。。。但装的时候明明是选了将引导器装到主分区上的。只能修复启动信息了,网上方法很多,比较靠谱的是先用LiveCD启动,然后:$ sudo mount /dev/sda1 /mnt$ su
2013-07-15 13:40:44 6126
原创 Mono概述及部分源码解析
长期以来.NET框架都被认为是Windows下的专利,而Mono可以让.NET程序跑在其它的平台(如Linux, OS X等)上。近几年由于移动设备的兴起,Mono的衍生项目(MonoTouch和Mono for Android)还可以让基于.NET框架的程序轻易的移植到Android和iOS设备上,这让原本Windows上的C#程序员上手移动开发的周期大大缩短。Mono主要包含了C#的编译器
2013-07-10 21:37:13 17900 1
原创 [Python]根据地址从maps文件中找相应的库名
/proc/PID/maps提供了进程的memory layout,下面脚本根据给定地址找出相应的库名:#!/usr/bin/pythonfrom __future__ import print_functionimport sysimport numpy as npimport pandas as pdimport matplotlib.pyplot as pltimpo
2013-07-01 22:29:47 2720
转载 Android版本下载以及切换
1:下载android主线分支repo init -u https://android.googlesource.com/platform/manifest 2:下载android其它分支repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1 3;查看andro
2013-05-13 19:03:54 3575
原创 Android中用OpenGL ES Tracer分析绘制过程
Tracer for OpenGL ES(http://developer.android.com/tools/help/gltracer.html)是Android SDK中新增加的开发工具,可逐帧(准确得说是逐函数)记录app用OpenGL ES的绘制过程。它提供了每个OpenGL函数调用的消耗时间,所以很多时候用来作performance分析。但因为其强大的记录功能,在分析渲染出错的问题时(
2013-05-09 08:31:56 15416 3
原创 虚拟机之内存虚拟化(MMU Virtualization)
原文地址:http://blog.csdn.net/ariesjzj/article/details/8745035内存虚拟化是虚拟机实现中的重要部分。在虚拟机中,虚拟出来的Guest OS和Host OS用的是相同的物理内存,却不能让它们相互影响到。具体地说,如果OS跑在裸机上(而非虚拟机上)的话,只要OS提供页表,MMU会在访存时自动做虚拟地址(Virtual address,
2013-04-29 23:27:33 11692
转载 Android源码开发利器——Java源码调试(基于4.1.2)
调试Android Java源码草帽的后花园——Neo 写在之前的话:这里主要是以调试Java源码为主,应该说是在system_process之后的源码,这对于调试和修改frameworks层的人来说真是一个利器,但至于为什么在system_process之后,我还在分析,如果有结果我会更新此文章,并正在尝试调试C++的代码,就是native中的代码,如果这个可行那将会大大
2013-04-29 21:27:28 3240
原创 Linux Kernel启动过程中的内存管理
原文地址:http://blog.csdn.net/ariesjzj/article/details/8764102好的操作系统必然要有好的内存管理系统来支持。好的内存管理系统就像一个艺术品,因为在其中我们可以看到空间优化和时间优化的完美平衡(既要省内存又要分配和释放足够快)。Linux为我们提供了这样一个范例,关于它的内存管理在很多讲kernel的书都可以找到。但在这一切还没有建立起来时
2013-04-06 19:22:37 3828
原创 Qemu调试Windows
原文地址:http://blog.csdn.net/ariesjzj/article/details/8698439Kernel级的Windows调试,Windbg+Virtualbox(Vmware )这套方案很好用,但Windbg依赖于guest(也就是Windows)。如果guest中的Windows小crash,可以抓到,但如果crash得比较严重,把和Windbg通信的那部分也破
2013-03-28 08:32:52 6279
原创 Android 4.4 源码和SDK下载
每次Android有更新后最闹心的就是下载源码和SDK了。网上的众多方法总是有时候能用有时候不能用,且每次死法都不同。下面是比较简单且至少这段时间比较好用的。 下载Android源码1. 在hosts文件(Ubuntu中为 /etc/hosts,Windows中为C:\Windows\System32\Drivers\etc\hosts)中加上:74.125.128.82 www.googlesource.com173.194.72.82 android.googlesource.com37.6
2013-03-16 15:02:55 2759
原创 [OpenCV]图像的投影校正
原文地址:http://blog.csdn.net/ariesjzj/article/details/8668726如果需要处理特定目标,传感器的输入图片一般都不是正对着的。所以处理前一般要进行校正(这里只涉及外部的投影校正)。官方例程中带了个例子SURF_Homography.cpp,我们稍作修改,让它多个投影校正的功能。 Mat warp_res; Mat M = get
2013-03-13 15:54:03 7380 3
原创 [机器学习]基于级联分类器的多目标检测
原文地址:http://blog.csdn.net/ariesjzj/article/details/8639208物体检测方法大体可分为两类,基于知识的方法和基于统计的方法。前者如template matching, surf/sift detector等等。这些方法都基于我们对于识别目标已有比较清晰的刻画。虽然有些特征能抗一定的形变,但总体泛化性不够强。如果检测目标比较固定且对时间要求
2013-03-12 22:38:42 10581 10
原创 Ubuntu中源码编译Virtualbox
环境: Ubuntu 12.04 (64 bits), Virtualbox 4.2.8源码首先从https://www.virtualbox.org/wiki/Downloads下载Virtualbox源代码,其官方Wiki上还提供了编译指导:https://www.virtualbox.org/wiki/Linux%20build%20instructions。总体上按指导上一步步来就
2013-03-07 18:45:52 5427
转载 Configure Samba Sharing between Ubuntu and Windows (Screenshot Tour)
Install Samba on Ubuntu 12.04/11.10/11.04/10.10/10.04/Linux Mint/other Distro's and share files with samba from Ubuntu to Windows and Windows to UbuntuI wrote tutorials on samba sometime ago but s
2013-03-06 15:50:17 1711
原创 Ubuntu中源码编译Qemu 1.4.0
1. 安装一些软件# apt-get install libglib2.0-0 libsdl1.2-dev libtool2. 从http://wiki.qemu.org/Download下载Qemu 1.4.0源码$ tar jxvf qemu-1.4.0.tar.bz2$ cd qemu-1.4.0$ mkdir -p bin3. 编译&安装
2013-03-05 16:49:56 2960 2
转载 Gcc 4.6 编译 Linux kernel时出现错误error: elf_i386: No such file or directory
LD arch/x86/mm/built-in.o LDS arch/x86/vdso/vdso32/vdso32.lds AS arch/x86/vdso/vdso32/note.o AS arch/x86/vdso/vdso32/int80.o VDSO arch/x86/vdso/vdso32-int80.so.dbggcc: error: elf_i386: N
2013-03-05 16:17:47 3737
转载 Install Oracle (Sun) Java 6 on Ubuntu
全文来自:https://help.ubuntu.com/community/JavaOracle (Sun) Java 6WARNING: Oracle Java 6 had reached its end of life in November 2012. There is at least one severe known vulnerability in this ve
2013-03-05 11:00:37 1273
原创 Linux下搭建操作系统实验平台(Virtualbox和Bochs)
原文地址:http://blog.csdn.net/ariesjzj/article/details/8604335Bochs是模拟器,提供调试功能,因为所有指令都是模拟的,所以比较慢。Virtualbox是虚拟机(提供硬件,软件虚拟,不过启动部分是跑在基于Qemu的模拟器上),Virtualbox也提供了简单的调试功能。本文基于Ubuntu12.04 LTS(64 bits),但所有
2013-02-23 13:01:41 5355
原创 Xen的源码安装及dom0,domU的设置
原文地址:http://blog.csdn.net/ariesjzj/article/details/8570566Xen作为一种应用广泛的虚拟机方案,无论是在工业还是教育领域都发挥着巨大的作用。Xen不仅有其引以为豪的Paravirtualization实现,还有基于硬件支持的HVM实现。对于Xen,Ubuntu中有现成的解决方案,只要通过一些apt-get install(ubuntu
2013-02-13 14:26:17 6355 1
原创 Windows下程序模拟鼠标单击和拖放操作
原文地址:http://blog.csdn.net/ariesjzj/article/details/8526103用程序模拟鼠标输入可以用以下几种方法:1. SendMessage和PostMessage,通过发鼠标消息和模拟鼠标事件,优点是窗口最小化后仍然有效。2. mouse_event,模拟鼠标操作。窗口必须在前面。3. SendInput, 可以用作模拟鼠标和键盘。
2013-02-12 17:22:26 6819 1
原创 Windows下的一些屏幕录像和视频处理工具
录像:snagit:视频录像,30天试用。一般的使用没问题。action!:优点是可以GPU加速,录有GPU渲染的东西会快很多。30天试用。缺点是产生的文件很大,而且是FICV格式(专有格式,几乎只有Splash PRO EX 能打开,好在Splash PRO EX支持将之转成mp4)。 图像分割与转换:格式工厂:免费,功能强大。格式转换加字幕等。狸窝:免费,针对mp4,格
2013-01-24 20:52:42 1710
原创 编程实现Android模拟器中窗口截图存成文件
原文地址:http://blog.csdn.net/ariesjzj/article/details/8528212Android模拟器内容是用OpenGL渲染的,所以用一般的编程截图(如PrintWindow()等)会是黑屏。这是因为画的东西放在framebuffer里。一种方法是通过adb把guest的framebuffer数据/dev/graphics/fb0倒到host,再转为
2013-01-22 08:32:13 3803 3
转载 Android emulator使用备忘
截图方法1:adb shell /system/bin/screencap-p/data/screenshot.pngadb pull /data/screenshot.png screenshot.png 方法2:http://code.lardcave.net/entries/2009/07/27/132648/fb转png的库http://co
2013-01-19 18:40:12 1381
转载 转载的一些machine learning的网站总结
转载自demonstrate 的 blog这里搜集了一些常见的和 machine learning 相关的网站,按照 topic 来分。Gaussian Processeshttp://www.gaussianprocess.org 包括相关的书籍(有 Carl Edward Rasmussen 的书),相关的程序以及分类的 paper 列表。这也是由 Carl 自己维护的
2013-01-14 13:02:34 912
转载 机器学习相关数据库
KDD杯的中心,所有的数据,任务和结果。UCI机器学习和知识发现研究中使用的大型数据集KDD数据库存储库。UCI机器学习数据库。 AWS(亚马逊网络服务)公共数据集,提供了一个集中的资料库,可以无缝集成到基于AWS的云应用程序的公共数据集。生物测定数据,在 虚拟筛选,生物测定数据,对化学信息学,J.由阿曼达Schierz的,有21个生物测定数据集(有效/无效的化合物)可供下载。加拿
2013-01-03 19:35:20 1461
转载 machine learning 大家
陈年老帖,翻出来共享一下,本人才疏学浅,不做评价。来源闲着无事,想写点一些我所了解的machine learning大家。由于学识浅薄,见识有限,并且仅局限于某些领域,一些在NLP及最近很热的生物信息领域活跃的学者我就浅陋无知,所以不对的地方大 家仅当一笑。Machine Learning 大家(1):M. I. Jordan在我的眼里,M Jordan无疑是武林中的泰山北斗。他师出M
2013-01-03 19:31:32 1645
转载 KVM 实现机制
1. 概述1.1. KVM简介KVM是一个基于Linux内核的虚拟机,它属于完全虚拟化范畴,从Linux-2.6.20开始被包含在Linux内核中。KVM基于x86硬件虚拟化技术,它的运行要求Intel VT-x或AMD SVM的支持。一般认为,虚拟机监控的实现模型有两类:监控模型(Hypervisor)和宿主机模型(Host-based)。由于监控模型需要进行处理器调度,
2012-12-24 08:17:19 1298
原创 Windbg和VirtualBox通过虚拟串口调试Win 8
原文地址:http://blog.csdn.net/ariesjzj/article/details/8289209本站其它相关文章:Windbg远程内核调试环境:Win7 to Win7 via 1394 http://blog.csdn.net/ariesjzj/article/details/7095346设置WinDbg+ITP(硬件调试器) http://blog.c
2012-12-13 12:36:22 5830
原创 Linux内核调试工具
原文地址:http://blog.csdn.net/ariesjzj/article/details/8244333一些Linux Kernel的分析调试工作,主要包换qemu,kprobes和trace等,以作备忘。 Qemu源码级调试Kernel1. Qemu编译与安装先安装libsdl的开发库$ ./configure$ make # make insta
2012-11-30 19:02:15 7090
转载 如何在ubuntu下重新编译内核
每一个发行版本都带有一些特殊的工具,用来从源代码中创建一个自定义的内核,这篇文章就是关于如何在ubuntu系统中编译内核的。内容包括,如何利用最新的,未被修改过的,从www.kernel.org网站上下载下来的源代码来构建自订制系统,这样,你就能独立于发行版所提供的内核。文章同样涉及了如果你需要一些现有内核不包含的特性,如何对内核源代码进行修补等问题。每一个发行版本都带有一些特殊的工具,用来从
2012-11-27 08:18:45 2066
原创 Windows驱动中通过MDL实现用户态与核心态共享内存
Windows驱动跑在核心态(Kernel mode),驱动的调用者跑在用户态。如何使用户态进程与核心态驱动共享内存呢 ?我们知道32位Windows中,默认状态下虚拟空间有4G,前2G是每个进程私有的,也就是说在进程切换的时候会变化,后2G是操作系统的,所以是固定的。既然用户态进程和核心态驱动在同一个进程空间里,是不是只要直接传个内存地址过来,就可以访问了?理论上可以但实际上不行,因为用
2012-11-19 11:59:14 5359
转载 source insight支持.S的汇编文件
用source insight看blob以及内核中的代码,发现即使全局搜索,也找不到定义中后缀为.S的函数,而明明在*.S中用汇编定义了该函数的。去网上查了一下,发现原因是*.S文件并没有添加到改工程中来。为了用source insight能搜索到.S的汇编文件,必须把该文件添加进来。 方法: 1、在创建工程前先特别设置好source insight 。设置如下: Option
2012-11-16 22:54:25 1397
转载 xen 添加hypercall
在linux系统中添加新的系统调用,一般需要三个步骤:1. 注册新的系统调用号2. 更新系统调用表3. 添加新函数在xen中添加一个 hypercall,类似于在linux中添加一个系统调. 基本上也是上面几个步骤。现在举个具体的例子:比如我们要在xen中添加一个打印消息的hypercall,参数有一个,类型为char*, 代表我们要打印的消息. 函数原型为:do_
2012-11-06 20:36:41 1090
转载 Windows Device Drivers Book Reviews
A quick search in the web reveals that the number of the books that are related to windows device drivers can be counted with the fingers of one hand. Even worse, most of the books are either too old
2012-11-06 08:27:02 1408
转载 qemu kvm 内存虚拟化
一、qemu中物理内存的注册cpu_register_physical_memory调用cpu_notify_set_memorycpu_notify_set_memory调用kvm_client_set_memorykvm_client_set_memory调用kvm_set_phys_memkvm_set_phys_mem调用kvm_set_user_memory_region
2012-11-05 09:23:16 2766
转载 Linux 新api eventfd
eventfd 在内核版本,2.6.22以后有效。查看内核版本可以用命令 uname -r 。1 #include int eventfd(unsigned int initval, int flags);这个函数会创建一个 事件对象 (eventfd object), 用来实现,进程(线程)间 的 等待/通知(wait/notify) 机制. 内核会为这个对象维护一个
2012-11-04 19:58:13 2004
转载 Linux kernel boot process——从实模式(real mode)到保护模式(protected mode),再到分页(paging) .
本文简要介绍X86-32架构下的Linux kernel被boot loader(如grub)加载到内存后,如何从最初的实模式,切换到保护模式,并开启分页机制。本文不涉及boot loader如何将内核加载到内存,因为这是boot loader的事,跟内核自己无关(当然他们之间一定要有种事先约定的协议来沟通)。因为启动代码并不经常变化,所以对这部分的分析基本适用于较早的2.6.24至现在的3.0.
2012-11-01 15:48:31 1327
The.Art.of.Multiprocessor.Programming.Source.Code
2012-02-14
Windows Internals Fifth Edition
2011-01-28
Data.Mining.Practical.Machine.Learning.Tools.and.Techniques.Second.Edition
2010-09-08
Principles of Data Mining
2010-09-08
Understanding Search Engines: Mathematical Modeling and Text Retrieval
2010-09-08
Mining the Web-Discovering Knowledge from Hypertext Data
2010-09-08
Search Engines, Link Analysis, and User’s Web Behavior
2010-09-08
Professional Linux Kernel Architecture
2010-08-29
《Dynamic Programming and Optimal Control》 Vol 2
2010-07-05
《The nature of statistical learning theory》Vapnik V.N.
2009-10-25
《Elements of the Theory of Computation》
2009-10-02
《The Design of The Unix Operating System》(unix操作系统设计)
2009-10-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人