关闭

[置顶] ARMv8 内存管理架构.学习笔记

目 录 第1章 分级存储架构. 2 1.1基础认识... 2 1.1.1从数据通路描述. 2 1.1.2从数据交换单位描述. 2 1.1.3 Cache数据一致性拓扑结构. 3 1.2 系统层内存模型... 3 1.2.1内存属性. 3 1.2.2地址空间. 4 1.2.3字节编码支持. 4 第2章 虚拟内存系统架构(VMSA) 5 2.1 VMSAv8-64. 5...
阅读(4904) 评论(3)

[置顶] ARMv8 架构与指令集.学习笔记

目 录 第1章 ARMv8简介. 3 1.1基础认识. 3 1.2 相关专业名词解释. 3 第2章 Execution State 4 2.1 提供两种Execution State 4 2.2 决定Execution State的条件. 4 第3章 Exception Level 5 3.1 Exception Level 与Security 5 3.1.1...
阅读(16788) 评论(17)

高通平台Linux kernel死机解题心得

1、前言 1.1 目的 能够借助相关调试工具,使用一般分析手段分析、定位解决项目过程中遇到的死机类系统稳定性问题,提升工作效率 持续积累,拓宽知识深度和广度 1.2 死机? 指系统发生致命性异常导致主动或者被动进入系统完全不可用的状态,导致系统死机的问题原因有很多,排除硬件问题,还有这些大模块:Android、Linux kenrel、modem、TZ 等等,各个子系统都...
阅读(821) 评论(2)

从此使用vim代替si看代码

windows下的开发环境,最好用的看代码写代码工具当然是非source insight莫属了,所以一直以来都是用si写代码,分析代码。 后面转入linux开发环境后一直也是用si(通过wine安装)但是很不稳定,经常会出各种问题死掉。所以决定切换用vim来代替si,vim号称程序员最好用的代码编辑器,再说了,作为一个混迹多年江湖的程序员,不去好好...
阅读(558) 评论(0)

深入浅出 - 公钥、私钥和数字签名最通俗的理解

一、公钥加密  假设一下,我找了两个数字,一个是1,一个是2。我喜欢2这个数字,就保留起来,不告诉你们(私钥),然后我告诉大家,1是我的公钥。 我有一个文件,不能让别人看,我就用1加密了。别人找到了这个文件,但是他不知道2就是解密的私钥啊,所以他解不开,只有我可以用 数字2,就是我的私钥,来解密。这样我就可以保护数据了。 我的好朋友x用我的公钥1加密了字符a,加密后成了...
阅读(274) 评论(0)

关于指纹硬件ID脚gpio兼容原理推导

1、基础认识 一个gpio脚配合软件可以实现高,低,高阻三种状态的区分,那么最多可以实现三种指纹硬件的兼容. 软件逻辑: 1》先给PIN一个高电平,然后读出该PIN的电平到val1; 2》再给PIN一个低电平,然后读出该PIN的电平到val2; 若: val1 == 1 && val2 == 1 ==》PIN外接高电平; val1 == 0 && val2 == 0 =...
阅读(206) 评论(0)

展讯7731C平台LED显示异常的解题历程

1、异常现象 内部测试报:插入充电器灭屏充电,待休眠后会出现红绿灯交替变化的情况。 简单调试后发现,其实有两个问题: 1》写led驱动节点控制异常问题 。 无法通过 adb shell echo 255 > /sys/class/leds/red/brightness 方式控制红绿灯变化 2》充电休眠红绿灯交替闪烁问题 。无法抓到出异常时候的uart log,好像交替变化的时候...
阅读(320) 评论(0)

Crash加载ramdump报cpu_possible_mask异常问题

在使用Crash调试ramdump的时候发现一个错误,这里记录下。 $ crash vmlinux sysdump crash 7.1.3 Copyright (C) 2002-2014 Red Hat, Inc. Copyright (C) 2004, 2005, 2006, 2010 IBM Corporation Copyright (C) 1999-200...
阅读(416) 评论(10)

Trace32 加载MTK平台 SYS_MINI_RDUMP

MTK平台发生kernel panic之后会生成 aee_exp目录,里面会有相应的db文件,解开可以得到 SYS_MINI_RDUMP文件,这个是一个微型的ramdump,一般只有几MB大小,结合vmlinux可以使用trace32调试。 1、将以下内容保存到 debug.cmm ;ocal &off if os.file.size("SYS_MINI_RDUMP")0x2...
阅读(839) 评论(0)

Trace32 加载高通 ramdump

1、高通ramdump解析后有几个重要文件: android@ubuntu:~/tmp/Port_COM6/out$ ls launch_t32.sh t32_config.t32 t32_startup_script.cmm 修改t32_config.t32默认配置调整字体为LARGE,注释掉HEADER, PRINTER,否则会报错. OS= ID=T32_1000002 TMP...
阅读(1359) 评论(0)

Trace32 安装 (pc_linux64)

Trace32 属于调试也业内最强大的debug工具了,对于做机的人来说,多掌握一种调试手段意味着关键时候多一条解题的路,对于提升工作效率减轻工作量尤为重要。 下面简单介绍ubuntu14.04下安装Trace32的基本步骤。 1、拿到安装包,解压: android@ubuntu:~$ ls -l 总用量 1712 -rw-rw-r-- 1 android android 8...
阅读(663) 评论(0)

高通平台 ramdump-parser 简介

ramdump 是什么?简单来说就是把系统memory中的某一个时间点的的数据信息通过一定手段取出来保存起来的内存崩溃文件,属于ELF文件格式。 当系统发生致命错误无法恢复的时候,主动触发抓取ramdump把异常现场保留下来供离线分析定位问题是一种非常重要的高级调试手段。 高通的ramdump触发后可以连USB通过PC工具拉出来,都是一堆binary文件,需要使用特定的脚本工具进一步解...
阅读(2573) 评论(1)

让程序员跳槽的非钱原因

转至 :http://mp.weixin.qq.com/s/AgKNCgSeOBTXe1HnLpnNXw...
阅读(217) 评论(0)

binder守护进程servicemanager简介

简介 servicemanager 进程 主要任务是什么?实现机制; 。启动流程 servicemanager 是一个可执行程序,由于起优先级很高,所以在init进程起来后,很快会被fork出来,下面是servicemanager进程的启动配置: service servicemanager /system/bin/servicemanager class c...
阅读(247) 评论(0)

2017.春节.深圳

毕业这么多年,这是第一次正式意义的在深圳过年. 上午的天气相当好,气温也很适宜,很适合散步   岳父岳母特意从老家高铁过来深一起过年,带了一堆各种鸡鸭鱼肉蛋的,最疼女儿还是老爹啊。。 祝愿他们身体健康,每天快快乐乐的。 来深奋斗多年,虽然没有多少钱也没有干出什么成就,工作也是一般般,总算攒下一个自己的窝,不大,爱人在即是家。...
阅读(307) 评论(0)

Clone 新项目TZ导致不开机问题

指纹识别拿到TEE实现之后需要改TA(trust app)内存映射起始地址及增大缓存size, 否则会出现TA load failed 的错误: [ 28.210673] scm_call failed: func id 0x72000101, ret: -2, syscall returns: 0xffffffffffffffe0, 0x0, 0x0 [ 28.219084] QSEE...
阅读(700) 评论(2)

2016 年终工作总结

2016 年是烦恼很多的一年,期间发生了很多事情,也是相当累的一年,特别是年底.. 人事上: 由于公司软件组织架构调整,我从大学毕业到跟了七年了老板在今年7月份时候被换了/(ㄒoㄒ)/~~,老实说这七年过得还是很开心的,被换了老板忽然有种失落的感觉(;′⌒`),然而接下来三个月内又连续被换了两次老板...详细这里就不说了,总之这是件相当无奈的一件事情。 工作上: 1、负责...
阅读(527) 评论(0)

参加高通培训

本月24号,作为公司代表之一去科技园阿里巴巴大厦参加高通组织的 “Android User space stability issue analysis  training”学习,感觉收获不少。 培训内容相当实用&接地气,高通工程师(很nice,言谈、专业素质都很不错)从理论到案例演示系统的介绍了Java & Native crash 、Memory leak、Third-part app cr...
阅读(625) 评论(6)

深入 kernel panic 流程

一、前言  我们在项目开发过程中,很多时候会出现由于某种原因经常会导致手机系统死机重启的情况(重启分Android重启跟kernel重启,而我们这里只讨论kernel重启也就是 kernel panic 的情况),死机重启基本算是影响最严重的系统问题了,有稳定复现的,也有概率出现的,解题难度也千差万别,出现问题后,通常我们会拿到类似这样的kernel log信息(下面log仅以调用BUG...
阅读(2692) 评论(0)

tombstone 分析

Coredump 是分析Android native exception和kernel exception的利器,coredump是核心转储,可以理解为当进程发生异常无法挽救时,OS机制把这块出问题的内存取出来打包成核心转储供给离线分析用。有了coredump 不但可以定位具体出异常的代码所在文件行数,还可以离线调试,一步步还原问题现场,抓出导致异常真凶. 但是很多时候由于系统挂得太突然等某些原...
阅读(2833) 评论(2)

我们为什么应该坚持写博客

一、种种原因   我们很多人都有过写点东西的冲动,只是又因为种种原因没有发表。 写着写着,挤不出字来了。 总感觉自己的内心想法表达不出来。 感觉写了没什么用,自己都明白了干嘛还要写。 怕写出来被人笑话被人喷。(这个也是我经常害怕的) 写博客的费脑力,耗时间。还不如拿这精力去再学更多的东西。 二、关于以上几点我的理解...
阅读(465) 评论(0)

深入MTK平台bootloader启动之【 lk -> kernel】分析笔记

接上一篇分析: 《深入MTK平台bootloader启动之【 Pre-loader -> Lk】分析笔记》 Pre-loader 运行在ISRAM,待完成 DRAM 的初始化后,再将lk载入DRAM中,最后通过特殊sys call手段实现跳转到lk的执行入口,正式进入lk初始化阶段. 一、lk执行入口: 位于.text.boot 这个section(段),具体定义位置...
阅读(4893) 评论(4)
59条 共3页1 2 3 下一页 尾页
    个人资料
    • 访问:84653次
    • 积分:1329
    • 等级:
    • 排名:千里之外
    • 原创:51篇
    • 转载:8篇
    • 译文:0篇
    • 评论:89条
    最新评论