自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

转载 QEMU 设备模拟

设备模拟目的 我们好像不会干一件事而毫无目的,就算不停刷微信朋友圈也是为了打发你无聊的时间。 其实最装B的回答是:设备模拟的目的就是模拟设备。这话是屁话,不过也能说明些什么,确实是模拟设备,用软件的方式提供硬件设备具备的功能。 对于和PC机交互的硬件设备,主要要干两件事,一是提供IRQ中...

2015-11-19 17:24:51

阅读数 4332

评论数 0

转载 KVM CPU虚拟化

3.1 基本原理 CPU虚拟化是VMM中最核心的部分,由于内存和IO访问的指令都是敏感指令,所以内存和IO虚拟化都依赖于CPU虚拟化的实现。CPU虚拟化的目标是让虚拟机中执行的所有敏感指令都能产生异常而“陷入”,并由VMM进行模拟。VMM的陷入是通过CPU的保护机制、中断或异常来完成的。通常...

2015-11-19 17:21:00

阅读数 1270

评论数 0

转载 ernel 3.10内核源码分析--KVM相关--虚拟机运行

1、基本原理 KVM虚拟机通过字符设备/dev/kvm的ioctl接口创建和运行,相关原理见之前的文章说明。 虚拟机的运行通过/dev/kvm设备ioctl VCPU接口的KVM_RUN指令实现,在VM和VCPU创建好并完成初始化后,就可以调度该虚拟机运行了,通常,一个VCPU对应于一个线程,...

2015-11-19 17:17:47

阅读数 1333

评论数 0

转载 kernel 3.10代码分析--KVM-KVM_SET_USER_MEMORY_REGION流程

1、基本原理 如之前分析,kvm虚拟机实际运行于qemu-kvm的进程上下文中,因此,需要建立虚拟机的物理内存空间(GPA)与qemu-kvm进程的虚拟地址空间(HVA)的映射关系。 虚拟机的物理地址空间实际也是不连续的,分成不同的内存区域(slot),因为物理地址空间中通常还包括BIOS、M...

2015-11-19 17:16:40

阅读数 1177

评论数 0

转载 KVM vCPU创建过程

1、基本原理 如之前的文章分析,在KVM虚拟化环境中,硬件虚拟化使用VCPU(Virtual CPU)描述符来描述虚拟CPU,VCPU描述符与OS中进程描述符类似,本质是一个结构体kvm_vcpu,其中包含如下信息: VCPU标识信息,如VCPU的ID号,VCPU属于哪个Guest等。...

2015-11-19 17:15:01

阅读数 2279

评论数 0

转载 kernel 3.10代码分析--KVM相关--虚拟机创建

1、基本原理 如之前分析,kvm虚拟机通过对/dev/kvm字符设备的ioctl的System指令KVM_CREATE_VM进行创建。 对虚拟机(VM)来说,kvm结构体是关键,一个虚拟机对应一个kvm结构体,虚拟机的创建过程实质为kvm结构体的创建和初始化过程。 本文简单解释及分析在3.1...

2015-11-19 17:13:33

阅读数 899

评论数 0

转载 SystemTap工具能调试新增的内核模块

1、问题    SystemTap工具能调试新增的内核模块吗?比如自己编写的helloworld模块。     答案:是可以的。 2、关键点:  1)使用SystemTap调试内核模块,探测点的编写格式示例为:       module("ext3").funct...

2015-11-19 17:11:07

阅读数 855

评论数 0

原创 Mac OS Create case-sensitive build environment

hdiutil create -type SPARSE -fs 'Case-sensitive Journaled HFS+' -size 40g ~/android.dmg hdiutil attach ~/android.dmg.sparseimage -mountpoin...

2015-07-20 13:59:13

阅读数 1118

评论数 0

原创 使用git clone error: RPC failed

git clone时,出现这个错误. remote: Counting objects: 4592517, done. remote: Compressing objects: 100% (1140430/1140430), done. error: RPC failed; re...

2015-07-18 17:51:59

阅读数 18324

评论数 2

转载 KVM Snapshot使用qemu-img, libvirt命令

实例一  使用qemu-img命令使用快照  kvm环境下qcow2的镜像支持快照 1 确认镜像的格式   [root@nc1 boss]# qemu-img info test.qcow2     image: test.qcow2   file format: qcow2   vi...

2015-07-17 19:21:50

阅读数 1715

评论数 0

转载 Xen, KVM Compare

Xen the most established of the two, is a type-one bare metal hypervisor that is also the foundation of several commercial offerings, including Citri...

2015-07-17 18:11:02

阅读数 730

评论数 0

转载 Versatile Express support in QEMU

This page briefly summarises the status of QEMU's Versatile Express model and explains how to get a Linaro snapshot running on it. 目录 Ve...

2015-01-14 11:46:39

阅读数 1477

评论数 0

转载 Running Android L Developer Preview on 64-bit ARM QEMU

Did you know the Android emulator is based on QEMU? When the Android SDK was first made available to the world, Google used QEMU as the basis for th...

2015-01-14 11:43:59

阅读数 1458

评论数 0

转载 Android Porting and Qemu

1 Introduction  Google explains that Android is a software stack for mobiledevices that includes an operating system, middleware and keyapplicatio...

2015-01-09 18:26:55

阅读数 1264

评论数 0

转载 配置下载Android源代码的过程及问题解决

最近在学习Android底层框架,今天打算研究一下Android源代码,源码的下载过程可没有想像的顺利。主要原因是网上的很多资料都是多年以前的,而一些网站都发生了变更,所以域名也会失效。OK,废话少说,我把遇到的各种问题和大家分享一下,希望大家能对号入座,避免浪费不必要的时间~       ...

2014-12-05 23:03:36

阅读数 1768

评论数 0

转载 LINUX netlink机制介绍

Netlink 是一种特殊的 socket,它是 Linux 所特有的,类似于 BSD 中的AF_ROUTE 但又远比它的功能强大,目前在最新的 Linux 内核(2.6.14)中使用netlink 进行应用与内核通信的应用很多,包括:路由 daemon(NETLINK_ROUTE),1-wire...

2014-08-08 12:19:53

阅读数 610

评论数 0

原创 openFileOutput 文件属性设置、主动配置文件的可读写属性及其实现方式

openFileOutput 文件访问属性设置

2014-08-04 09:02:02

阅读数 1841

评论数 0

原创 Android Branch and master source code merge(patch)

Android Branch and master source code merge(patch)

2014-07-30 17:22:34

阅读数 1514

评论数 0

原创 SELinux、SEAndroid、MAC、Andorid(AOSP) seplicy 相关资料

SELinux、SEAndroid、MAC、Andorid(AOSP) seplicy 相关资料

2014-07-24 12:32:19

阅读数 1959

评论数 0

原创 Linux Kernel(Android) 加密算法总结(四)-应用程序调用OpenSSL加密算法

本节主要是介绍如何Android C/C++应用程序调用Openssl的AES加密算法。

2014-07-23 13:48:19

阅读数 2100

评论数 1

原创 Linux Kernel(Android) 加密算法总结(三)-应用程序调用内核加密算法接口

Linux Kernel(Android) 加密算法总结(三)-应用程序调用内核加密算法接口(hash) 该方法经过在内核层实现与CPU加密模块,或者硬件加密卡对接,并为上层应用程序提供接口的方式,可以实现硬件加密。

2014-07-22 17:24:33

阅读数 2589

评论数 0

原创 Linux Kernel(Android) 加密算法总结(二)- A netlink-based user-space crypto API

A netlink-based user-space crypto API By Jake Edge October 20, 2010 User-space access to the kernel cryptography subsystem has reared its headsev...

2014-07-22 10:17:11

阅读数 2864

评论数 0

原创 APK扩展文件介绍、功能及使用方法

APK扩展文件介绍        Android Market (Google Play Store)中每个APK文件的最大限制是50MB。如果您的程序中包含大量的数据文件,以前您只能把这些数据文件放到自己的服务器上,当用户启动程序的时候让用户去下载。现在这些数据文件可以直接上传到An...

2014-07-16 11:43:42

阅读数 1115

评论数 0

原创 Andriod APK 文件结构详解

APK文件结构        APK文件实际是一个zip压缩包,可以通过解压缩工具解开。      下面是用解压缩工具解开的APK包的结构: |-- AndroidManifest.xml |-- META-INF | |-- CERT.RSA | |-- CERT.SF | ...

2014-07-16 11:42:52

阅读数 1358

评论数 0

转载 Android Build 系统详解

前言 Android Build 系统是 Android 源码的一部分。关于如何获取 Android 源码,请参照 Android Source 官方网站: http://source.android.com/source/downloading.html。 Android Build 系统...

2014-07-15 14:16:53

阅读数 1411

评论数 0

转载 Android应用程序安装过程源代码分析

Android系统在启动的过程中,会启动一个应用程序管理服务PackageManagerService,这个服务负责扫描系统中特定的目录,找到里面的应用程序文件,即以Apk为后缀的文件,然后对这些文件进解析,得到应用程序的相关信息,完成应用程序的安装过程,本文将详细分析这个过程。        ...

2014-07-15 11:10:08

阅读数 496

评论数 0

转载 Android 渠道包的打包及管理

如果能直接修改apk的渠道号,而不需要再重新签名能节省不少打包的时间。幸运的是我们找到了这种方法。直接解压apk,解压后的根目录会有一个META-INF目录,如下图所示: 如果在META-INF目录内添加空文件,可以不用重新签名应用。因此,通过为不同渠道的应用添加不同的空文件,可以唯一标识一...

2014-07-14 18:43:53

阅读数 1932

评论数 0

转载 Android Dex vs ART 虚拟机运行效率提升

Android 4.4提供了一种与Dalvik截然不同的运行环境ART(Android runtime)支持,ART源于google收购的Flexycore的公司。ART模式与Dalvik模式最大的不同在于,启用ART模式后,系统在安装应用的时候会进行一次预编译,将字节码转换为机器语言存储在本地,...

2014-07-14 18:35:02

阅读数 2151

评论数 0

转载 Dex文件头及解析机制分析

Dex文件头主要包括校验和以及其他结构的偏移地址和长度信息。 字段名称 偏移值 长度 描述 magic 0x0 8 'Magic'值,即魔数字段,格式如”dex/n035/0”,其中的035表示结构的版本。...

2014-07-14 18:29:11

阅读数 825

评论数 0

原创 Android 内部存储相关的函数(getCacheDir,getDir, getFileStreamPath,getFilesDir,openFileInput, ...)

为了保证应用程序存储数据的安全性,开发者在开发应用程序的过程中需要注意使用Android 应用程序的内部存储空间。 根据不同的要求,将对应的数据文件、缓存文件、临时文件等分别存储在相应的位置。 注意:存储在SDCard 上的文件,将对任何Android 应用程序可见,并具有存取权限。因此,仅仅是...

2014-07-14 11:43:33

阅读数 5517

评论数 2

原创 Ubuntu 开发服务器配置(SSH server,登陆到远程服务器进行文件共享)

1.  sudo apt-get install openssh-server 2.

2014-07-09 17:50:14

阅读数 1149

评论数 0

原创 Linux Kernel(Android) 加密算法总结(一)(cipher、compress、digest)

1. Linux内核支持哪些加密算法 ?     内核支持的加密算法很多,包括:     对称加密算法,如AES;     摘要算法,如sha1,md5;      压缩算法,如deflate。     不过内核好像不支持非对称加密算法。 2. 加密算法源文件位置      这些算法作为加密函...

2014-07-08 17:45:10

阅读数 5129

评论数 0

原创 Android (AOPS) 开发环境配置

1. Install  Ubuntu 12.04 x64 2. update packages 3.

2014-07-07 10:17:19

阅读数 804

评论数 0

原创 Ubuntu 12.04 x64 手动安装sun jdk 6

从官网下载下来的安装文件(如:jdk-6u24-linux-i586.bin)默认都是没有执行权限的,可以通过$ls -l 命令查询到相关信息,所以首先第一步是要将安装文件赋予可执行权限,可以通过命令 $ sudo chmod u+x/usr/lib/java/jdk-6u20-linux-i58...

2014-07-07 09:52:46

阅读数 1103

评论数 0

转载 Android应用程序从源码到安装包的整个过程

接着上一篇的内容,继续从全局了解Android。在清楚了Android的平台架构(可以看作是静态原理)后,还需要掌握其动态原理。动态原理包含两部分,一部分是编译原理,另一部分是运行原理。有人会说,搭建一个基于Eclipse的Android开发环境,编译和运行只要点击按钮即可完成。但是,如果只是“知...

2014-07-02 18:31:17

阅读数 1221

评论数 0

原创 Android Java 与 C++ 调用过程中的常量,路径名、文件名、后缀名最大长度

/****************************************************************************  *********************************************************************...

2014-07-02 16:13:33

阅读数 1104

评论数 0

转载 Android APK反编译详解(附图)

这段时间在学Android应用开发,在想既然是用Java开发的应该很好反编译从而得到源代码吧,google了一下,确实很简单,以下是我的实践过程。 在此郑重声明,贴出来的目的不是为了去破解人家的软件,完全是一种学习的态度,不过好像通过这种方式也可以去汉化一些外国软件。 ...

2014-06-23 11:42:28

阅读数 665

评论数 0

原创 手动为Android 4.x 手机添加自己的根证书(CA 证书)

首先看Android 4.x 系统的证书存放位置: AOSP Android系统中CA证书文件的位置在:/ system/etc/security/cacerts/一系列的以数字命名的.0文件 方法一: Android 4.0 已经支持用户安装根证书了,只需要将根证书放到sd...

2014-06-18 15:57:51

阅读数 19458

评论数 1

原创 tar 压缩打包时排除或忽略某个子目录或文件

例子: 通过 tar zcvf test.tar.ga --exclude=/test/aaa --exclude=test/bbb /test 将test目录下的文件和子目录压缩打包, 但是排除/test/aaa 和 /test/bbb test目录结构如下 ...

2014-06-09 18:10:31

阅读数 11045

评论数 0

原创 如何使用Eclipse PDT调试PHP程序

本文主要介绍的是如何用eclipse pdt调试PHP 代码。 1. 下载eclipse,从官网上找就可以了,并确认当前系统中有java环境,即jdk和jre。 2. 安装pdt了,采用的是在线安装,更新地址在默认中已经包含了。只是更新起来比较麻烦。(如果直接下载 携带PDT的 Eclipse...

2014-06-09 12:05:44

阅读数 1044

评论数 0

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