- 博客(11)
- 收藏
- 关注
原创 UEFI FDF文件格式
fdf(Flash Description File)用于生成固件映像,定义Image的内容和布局信息,它由[Defines],[FD],[FV],[Rule]等几个部分组成
2017-08-03 15:51:15
5695
原创 SBL1启动 - Load Image
sbl1是平台相关的启动程序,除了执行必要的初始化操作,还负责加载PMIC,QSEE(TZ),RPM等Firmware,然后跳转到APPSBL执行(XBL跳转到XBL Core,也就是UEFI入口执行);
2017-07-31 17:16:58
5065
原创 SBL中的HAL和DAL层
短语解释:HAL:Hardware Abstraction LayerDAL:Device Abstraction LayerDDI:Device Driver InterfaceHAL层定义底层硬件操作,而DAL层位于驱动和应用层之间,DAL API定义在DDI文件中,应用层调用DDI接口使用驱动提供的服务;1. DAL框架层DAL层为每个设备分配一个De
2017-06-30 16:51:26
7191
原创 内核同步机制 - 读写锁 read_lock()/write_lock
读写锁的基本原理类似自旋锁,它区分读取和写入场景,允许多个读线程同时访问共享数据,而保持读-写和写-写互斥,适用频繁读取数据,而修改相对较少的场景;
2017-03-31 15:15:50
8804
原创 内核早期内存分配器 - memblock与bootmem
Linux内核使用伙伴系统管理内存,那么在伙伴系统工作前,如何管理内存?答案是memblock;memblock在系统启动阶段进行简单的内存管理,记录物理内存的使用情况;在进一步介绍memblock之前,有必要先了解下系统内存的使用情况:首先,内存中的某些部分是永久的分配给内核的,比如内核代码段和数据段,ramdisk和fdt占用的空间等,它们是系统内存的一部分,但是不能被侵占
2016-11-14 18:27:24
5446
转载 栈回溯技术
栈回溯技术arm_v5t_le版From:韦东山 2007.04.03栈回溯技术及uClibc的堆实现原理.doc1. 前言段错误、非法地址访问等问题导致程序崩溃的现象屡屡发生,如果能找到发生错误的函数,往往一眼就能看出BUG所在——对于这类比较简单的问题,比如使用空指针进行读写等,利用栈回溯技术可以很快定位。但是对于数组溢出、内存泄漏等问题导致的程序错误,往往隐藏很深,
2015-06-06 15:04:26
2854
原创 sbl1启动代码分析
1. sbl1.s -- 汇编启动文件sbl1程序的入口点在0xF800_C000,从memory map可以看出此地址位于L2 cache中,所以sbl1实际上是运行在L2 cache上的; 1)设置中断向量表 中断向量表位于0xFE80_5FC0(OCIMEM),覆盖PBL的中断向量表 AREA SBL1_INDIRECT_VECTOR_TABLE, CODE, R
2015-06-02 20:25:02
12770
1
转载 SCons简介
by 令狐虫云风在blog上写了一组《IDE 不是程序员的唯一选择》的文章。题目很吸引人,以至于我一直以为他要写什么鸿篇巨制,可惜到最后只出现了一组《GNU make入门指南》。(笑)被IDE绑定的确是一件很悲哀的事情。作为一个程序员,当然应该搞清楚程序编译链接的整个流程,makefile给出了很好的一个路径,让我们能够了解这一点。但是,如果觉得程序员就应该比拼“手写汇
2015-04-14 15:05:28
2568
原创 高通平台CDT解析和制作方法
高通平台使用CDT(Configure Data Table)来存储平台信息和内存参数,CDT默认以数组方式存放在boot_images的源文件中,并最终编译到sbl1中;CDT也可以保存到emmc或eeprom中,在启动过程中加载;下面是CDT常用的几个方法:boot_config_data_table_init():初始化CDT;boot_get_config_data_block
2015-01-29 14:30:43
9825
原创 SEAndroid策略分析
SEAndroid在架构和机制上与SELinux完全一样,考虑到移动设备的特点,所以移植到Android上的只是SELinux的一个子集。SEAndroid的安全检查几乎覆盖了所有重要的系统资源,包括域转换,类型转换,进程、内核、文件、目录、设备,App,网络及IPC相关的操作。
2015-01-25 15:27:45
22201
原创 openssl常用命令
RSA是目前最有影响力的公钥加密算法,它能抵抗到目前为止已知的绝大多数密码攻击。下面我们要介绍的工具将会主要涉及到秘钥的产生、管理,证书请求及证书的产生,数据加密、解密,算法签名及身份验证等;
2015-01-23 19:06:16
8005
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人