自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (5)
  • 收藏
  • 关注

原创 ARM cache 分析

摘要:cache在ARM中是一个非常重要的模块,它影响处理器的方方面面,是我们理解处理的重要部分。

2022-08-26 21:58:40 1072

原创 UEFI PCD分析

本文主要阐述UEFI 中PCD 的使用和配置方式

2022-11-14 20:26:46 1125 1

原创 ARM64下构建 UEFI 模块

本文主要阐述在arm64 平台下定义一个模块和共享库,并进行实现模块编译运行,同时实现一个共享库,以及在模块中调用这个共享库的方法

2022-10-29 20:43:01 968

原创 UEFI FD 文件分析

本文主要阐述UEFI 文件layout 的定义方式和方法

2022-10-29 16:31:45 1030

原创 UEFI qemu环境搭建

UEFI 环境配置

2022-10-05 19:43:01 548

原创 linux 锁-- atomic & per_cpu

本文主要描述linux下 atomic和 per_cpu 的引入背景以及实现原理,并简单介绍了相关的使用方式。

2022-09-17 13:23:09 411

原创 Arm64 linux Virtual memory分析

本文主要描述虚拟地址的layout,描述方式,以及映射时序,可以作为虚拟内存管理框架分析使用。

2022-09-11 13:48:34 678

原创 ARM64 MMU 映射

本文主要描述 MMU 映射转换的基本知识

2022-09-04 16:40:18 1141

原创 ARM64 linux -- 软中断

本文主要描述了软中断的由来和基本的使用方式

2022-09-02 12:14:45 903

原创 ARM64 linux 异常处理 -- 异常向量

摘要:本文主要描述ARM64 linux 的异常架构和初始化,并选取了异常中的 irq 和 dataabort 作为典型的异常处理分析,本文可以作为SOC和驱动开发参考

2022-08-28 20:23:19 1043

原创 ARM64 linux 中断处理--架构

摘要:在 ARM64 嵌入式开发中,中断非常重要和常见的模块,研究和了解中断的架构和处理流程就非常重要。本文主要阐述中断的整体架构和初始化流程,可以作为SOC和驱动开发参考

2022-08-28 20:04:00 711

原创 android4.0 添加一个新的android 键值

这里添加新的键值,不是毫无凭据凭空创造的一个键值,而是根据kernel中检测到的按键值,然后转化为android所需要的数值:以添加一个linux键值为217,把它映射为android的键值Browser(这个键值之前不存在)为例介绍一下:1、android之前没有这个键值,需要定义/frameworks/base/core/java/android/view/KeyEvent.jav...

2012-10-26 15:42:33 5232 12

原创 Notification 播放声音

NotificationPlayer.java定义一个播放Notification声音的player,本质上仍然是一个MediaPlayer,这个是多线程编程的很好的例子public class NotificationPlayer implements OnCompletionListener {//发送播放和停止的cmdprivate static final int PLAY

2012-08-27 22:20:55 3259

原创 android4.0 frameworks屏蔽key、touch等事件,不派发到app的方法

我们在一开始初始化InputManager.java中的InputManager实例的时候,会有如下得操作:InputManager.java在InputManager的构造函数中://初始化Callbacks函数this.mCallbacks = new Callbacks();//然后在调用native方法的时候会将Callbacks函数放在C++中的InputDispat

2012-08-27 22:16:36 4001

原创 android 再论 Handler

一、ThreadLocal的分析:从字面上这个Threadlocal很容易让人引起误解,认真是一个本地 thread,实际上这是一个Thread的本地信息变量,也就是说用来存储线程中不安全变量的一个机制。分析如下:ThreadLocal类接口很简单,只有4个方法,我们先来了解一下: void set(Object value) 设置当前线程的线程局部变量的值。· public

2012-08-01 12:55:09 2150

转载 android ANR相关问题

一:什么是ANRANR:Application Not Responding,即应用无响应二:ANR的类型ANR一般有三种类型:1:KeyDispatchTimeout(5 seconds) --主要类型按键或触摸事件在特定时间内无响应2:BroadcastTimeout(10 seconds)BroadcastReceiver在特定时间内无

2012-07-20 16:50:26 949

原创 android PopUp window的使用

Android的popupWindow类似一个不能动的widget,它显示在别的View之上。具体操作如下:主View:/layout/main.xmlxml version="1.0" encoding="utf-8"?>LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"andro

2012-07-14 23:40:39 2057

原创 android4.0 输入法框架分析

InputMethodManager.javaInputMethodManager.java中定义一个变量:  IInputMethodSession mCurMethod;从表面上看,似乎是远程使用的。我们在后面有这样一个变量mClient :这个是传到InputMethodManagerService中回调使用的:主要在startInputInner或者onWindowFo

2012-07-14 23:38:04 2511 1

原创 android4.0 WindowManagerService的分析

对于Activity,在ActivityThread.java在handleLaunchActivity会调用performLaunchActivity,而performLaunchActivity则调用Activity中的attach函数,实现创建window(实际是PhoneWindow):Activity.javafinal void attach(Context context,

2012-07-14 23:33:45 3248

原创 android4.0 Power、home、menu等按键处理分析

一、Power、Home、Menu、back以及Vol+、Vol-的处理我们知道,在WindowManagerService创建的时候会声明一个InputManager的实例,这个InputManager又会通过NativeInit实现将mCallbacks、looper等添加到C++中实现创建InputDispatcher和InputReader。然后将这两个实例各加入到InputDispa

2012-07-09 16:01:29 2872

原创 Context的子类实现:ContextImpl的初始化

一、Context:Interface to global information about an application environment. This is an abstract class whose implementation is provided by the Android system. It allows access to application-specific

2012-06-25 17:47:00 3766 1

原创 AudioService调整stream音量

//设置stream音量mRingVolumePlayer.setStreamVolume(index);在这里,streamVolume就是我们要设置的音量大小,接着就是调用AudioManager的方法进行设置。3.AudioManager.javapublic void setStreamVolume(int streamType, int index, int fl

2012-06-25 17:44:37 3001

原创 android4.0 statusbar加载icon

StatusBar分为两个部分:一是通常在手机界面最上端的未下拉的statusbar;二是下拉状态栏,也就是扩展状态栏。通过在实际应用中,我们可以发现,statusbar就是一个activity,那么,它的使用自然少不了和service之间的交互。PhoneStatusBar 通过IStatusBarService来访问StatusBarManagerService,而StatusBa

2012-06-20 15:10:45 2782 1

原创 android4.0 statusbar的启动

SystemServer.javapublic static final void init2() {//启动ServerThread        Thread thr = new ServerThread();        thr.setName("android.server.ServerThread");        thr.start();}Serve

2012-06-20 15:08:48 1507

原创 android AsyncQueryHandler的分析

AsyncQueryHandler 它实际上就是利用多线程的异步处理功能实现的。public abstract class AsyncQueryHandler extends Handler {//这个class用来实现两个Handler之间的数据共享protected static final class WorkerArgs {        public Uri uri;

2012-06-20 15:06:35 2095

原创 Hashmap的使用

HashMap是android中一种小型存储类,但是同HashTable相比,它是不安全的,非同步的,因此在使用时通常要用关键字synchronized。使用一个HashMap实例:HashMap sMap = new HashMap();sMap.put(K key, V value); //也就是将一个元素加入sMap存储器中之后,若是我们想获取对应key的值value,可以使

2012-03-12 14:26:44 2288

原创 usb状态相关处理

关于Usb的检测,相关联的和sd card一起研究。在状态栏如何进行显示Sd卡插入状态的Notification和Usb在Debugging时的Notification的?先来看Sd卡的Notification显示:在StatusBarPolicy.java的StatusBarPolicy类的构造函数中,有这样关于Sd卡的状态监听机制: // storage mStorageM

2012-03-12 14:16:04 3196

原创 android level-list的使用

在/drawable下建立一个level-list.xml,内容如下:在/layout/下的xml文件中添加一个ImageViewandroid:layout_width="wrap_content" android:layout_height="wrap_content" />最后在.java中对该ImageView的click事件进行监听 mImag

2012-03-08 15:19:15 2259

原创 Handler的处理

Handler的官方解释大致意思如下:Handler是一种能够发送和处理与消息队列关联的Message和Runnable的一种对象。它隶属于调用Handler对象的线程,自它创建伊始,它就在当前线程发送消息到当前线程的消息队列,并且负责处理线程消息队列的消息。Handler的用法主要有两种:其一,发送消息,其二,在另外一个线程处理消息。对其一: post(Runnable), po

2012-02-16 12:43:50 1060

原创 android 锁屏界面处理

锁屏相关的文件在android对应package:com.android.internal.policy.impl。phoneWindowManager.java可以派发各种物理key,如Power,Home,Vol+和Vol-等等。那么,这个类是由谁启动的?在package下Policy.java中public PhoneWindowManager makeNewWindowMana

2012-02-16 12:33:18 10244 1

原创 android Notification分析

通常,在手机有未接电话,收到消息或者挂着退出主界面的QQ,在状态栏会有一个Notification,那么,这个notification如何产生的?通常做法:Intent intent = new Intent();        intent.setClass(this, Noti.class);//一般而言,对于需要点击Notification需要迁移到对应的View的需要下面这

2012-02-09 17:19:38 4154

原创 电池充电图标处理

Android在低电量时候充电图标不动,修改办法:                        xmlns:android="http://schemas.android.com/apk/res/android"                android:oneshot="false">

2012-02-09 17:17:43 2788

android 关于图像旋转变换的解释

这是android中图像变换的解释:诸如旋转、倒影、反射等等变化的matrix解释

2012-02-23

IRP与IO_STACK_LOCATION

window驱动开发中关于IRP与IO_STACK_LOCATION之间的关系分析

2012-02-18

Handler的分析

handler的处理流程分析。 Handler是一种能够发送和处理与消息队列关联的Message和Runnable的一种对象。它隶属于调用Handler对象的线程,自它创建伊始,它就在当前线程发送消息到当前线程的消息队列,并且负责处理线程消息队列的消息。 Handler的用法主要有两种:其一,发送消息,其二,在另外一个线程处理消息。

2012-02-07

android JNI机制分析

对于android的JNI机制进行整理,分析android中C++和Java的通信方式

2012-02-06

android状态栏分析

状态栏分析,以及如何向状态栏添加一个耳机图标的实例。

2012-02-02

空空如也

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

TA关注的人

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