自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 资源 (4)
  • 收藏
  • 关注

原创 android condition 详细介绍

上一篇介绍了Mutex 的作用和实现,在多线程中,使用mutex 可以实现对全局变量的加锁保护,也就是在访问(读写)这个变量之前先要获取对应的锁,然后才能访问。在多线中还有这样的场景,某个线程需要等另外一个线程完成了某些操作,然后再“通知”这个线程往下执行,这就需要使用到condition,下面给出具体的实例。frameworks/av/include/media/stagefright/fo

2017-12-27 22:26:14 5505

原创 android mutex 详细介绍

一个进程中不可能只有一个线程在战斗,所以一个进程中一般都是有多个线程的同时协助工作,多线程情况下,对于一些全局变量,也就是多个线程能够同时访问的变量,我们需要通过加锁来防止“同时”访问这个变量,Mutex 就是我们常用的一个。frameworks/av/include/camera/CameraBase.h113 Mutex

2017-12-24 21:01:26 6986

原创 linux 进程调度切换过程分析

从系统调用或者异常中断返回用户空间时,thread_flags 被设置成TIF_NEED_RESCHED 会发生调度,当然还有其他几个时机也会发生调度,这里主要介绍中断返回用户空间时的情况。linux-4.10/arch/arm64/kernel/entry.S744 ret_fast_syscall:745 disable_irq // disable interrup

2017-12-23 19:13:47 3317

原创 linux sched init简介

调度器的初始化,前面的android 开机流程讲过,uboot(bootloader)执行完一些初始化动作后,会将kernel加载到内存,然后跳到kernel。kernel在执行完一段汇编代码,准备好c的运行环境后,跳到 start_kernel()。linux-4.10/init/main.clinux-4.10/init/main.c482 asmlinkage __visib

2017-12-23 15:07:22 2272

原创 android 抓取crash信息流程简介

通过上一篇博客我们知道,在linker 完成自身重定位,在对可执行程序进行重定位的过程中,会初始化debuggerd,也就是注册异常处理函数,在程序发生异常的时候抓取异常信息。4185 /*4186 * This code is called after the linker has linked itself and4187 * fixed it's own GOT. It i

2017-12-17 14:02:38 2287

原创 android linker 执行流程

通过前一篇的博客,我们知道,在linux kernel加载完可执行程序后,在需要解释器的情况下,返回用户空间时会先跳到解释器的函数中执行,对于android平台而已,就是先跑到_start()函数,然后再跳转到__linker_init()。bionic/linker/linker.cppextern "C" ElfW(Addr) __linker_init(void* raw_args)

2017-12-12 21:33:03 3912

原创 linux elf加载过程

通过前面linux 进程的创建和加载我们知道,调用ececve()系统调用后会加载指定的可执行程序并且运行起来,接下来我们分析这个加载过程,跑到do_execve()函数中。linux-4.10/fs/exec.cint do_execve(struct filename *filename,1806 const char __user *const __user *__argv

2017-12-03 21:50:44 2626

FileSplit安装包

大文件分割实现源码,使用QT开发,带界面,觉得界面不好看,可以下载源码修改,重新编译。

2018-05-19

file split 源码

大文件分割实现源码,使用QT开发,带界面,觉得界面不好看,可以自行修改。

2018-05-19

ARMNeonDemo

验证arm_neon.h中的函数作用,用于学习neon

2017-08-18

audioplayer

简单的安卓本地音乐播放器

2017-05-20

空空如也

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

TA关注的人

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