会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
侧边栏
yooooooo
以有涯之生随无涯之学
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
114
115
116
117
118
119
120
121
122
···
135
下一页
2018年8月13日
高通 sensor 从native到HAL
摘要: app注册传感器监听 Android Sensor Framework 的整体架构如下图所示: 前几篇sensor相关的文章介绍了sensor的hal的知识,以press_sensor实时显示气压坐标来分析,app层数据获取的过程,其实实现数据监控非常简单,主要分为下面三个步骤: 获取Sensor服
阅读全文
posted @ 2018-08-13 20:09 yooooooo
阅读(3618)
评论(0)
推荐(0)
2018年8月6日
深入 kernel panic 流程【转】
摘要: 一、前言 我们在项目开发过程中,很多时候会出现由于某种原因经常会导致手机系统死机重启的情况(重启分Android重启跟kernel重启,而我们这里只讨论kernel重启也就是 kernel panic 的情况),死机重启基本算是影响最严重的系统问题了,有稳定复现的,也有概率出现的,解题难度也千差万别
阅读全文
posted @ 2018-08-06 12:00 yooooooo
阅读(6027)
评论(2)
推荐(1)
2018年8月4日
HDMI驱动热插拔检测方法
摘要: 1. 使用poll机制 1.1 如何使用? a. open("/dev/HPD"); b. poll状态发生变化 c. read确定接上还是接下 1.2 情景分析: 1. APP使用open("/dev/HPD"); 2. APP : poll 驱动:poll 休眠 中断 3. APP : read
阅读全文
posted @ 2018-08-04 17:04 yooooooo
阅读(2388)
评论(0)
推荐(0)
2018年7月31日
WFE和WFI的区别
摘要: 1. 概念: WFI(Wait for interrupt)和WFE(Wait for event)是两个让ARM核进入low-power standby模式的指令,由ARM architecture定义,由ARM core实现。 2. WFI和WFE 2.1 相同点 WFI和WFE的功能非常类似,
阅读全文
posted @ 2018-07-31 22:57 yooooooo
阅读(9535)
评论(0)
推荐(1)
2018年7月26日
SMP多核启动
摘要: 在 Linux系统中,对于多核的ARM芯片而言,在Biotron代码中,每个CPU都会识别自身ID,如果ID是0,则引导Bootloader和 Linux内核执行,如果ID不是0,则Biotron一般在上电时将自身置于WFI或者WFE状态,并等待CPU0给其发CPU核间中断或事件(一般通过SEV指令
阅读全文
posted @ 2018-07-26 14:26 yooooooo
阅读(2859)
评论(1)
推荐(4)
2018年7月23日
CPUFreq驱动
摘要: CPUFreq子系统位于 drivers/cpufreq目录下,负责进行运行过程中CPU频率和电压的动态调整,即DvFS( Dynamic Voltage Frequency Scaling,动态电压频率调整)。运行时进行CPU电压和频率调整的原因是:CMOS电路中的功耗与电压的平方成正比、与频率成
阅读全文
posted @ 2018-07-23 21:04 yooooooo
阅读(2759)
评论(0)
推荐(0)
2018年7月18日
DMA与cache一致性的问题
摘要: Cache和DMA本身似乎是两个毫不相关的事物。Cache被用作CPU针对内存的缓存利用程序的空间局部性和时间局部性原理,达到较高的命中率,从而避免CPU每次都必须要与相对慢速的内存交互数据来提高数据的访问速率。DMA可以作为内存与外设之间传输数据的方式,在这种传输方式之下,数据并不需要经过CPU中
阅读全文
posted @ 2018-07-18 23:56 yooooooo
阅读(2367)
评论(0)
推荐(1)
2018年7月17日
深度理解select、poll和epoll
摘要: 在linux 没有实现epoll事件驱动机制之前,我们一般选择用select或者poll等IO多路复用的方法来实现并发服务程序。在大数据、高并发、集群等一些名词唱得火热之年代,select和poll的用武之地越来越有限,风头已经被epoll占尽。 select()和poll() IO多路复用模型 s
阅读全文
posted @ 2018-07-17 11:53 yooooooo
阅读(748)
评论(0)
推荐(0)
2018年7月16日
Memory barrier 简介
摘要: "Memory barrier" Memory barrier 简介 程序在运行时内存实际的访问顺序和程序代码编写的访问顺序不一定一致,这就是内存乱序访问。内存乱序访问行为出现的理由是为了提升程序运行时的性能。内存乱序访问主要发生在两个阶段: 1. 编译时,编译器优化导致内存乱序访问(指令重排) 2
阅读全文
posted @ 2018-07-16 16:23 yooooooo
阅读(1042)
评论(0)
推荐(0)
为什么内核访问用户数据之前,要做access_ok?【转】
摘要: "linuxer" 案例 比如内核的如下commit引入了一个严重的安全漏洞(编号CVE 2017 5123): 危害 一个攻击案例可以参考: "freebuf" 《Linux内核Waitid系统调用本地提权漏洞(CVE 2017 5123)的分析与利用》 修复 而内核的这个commit对其进行了修
阅读全文
posted @ 2018-07-16 14:59 yooooooo
阅读(432)
评论(0)
推荐(0)
上一页
1
···
114
115
116
117
118
119
120
121
122
···
135
下一页
公告