- 博客(4)
- 问答 (5)
- 收藏
- 关注
原创 C程序Binder通讯分析及实例
Android系统中进程间通讯都是建立在Binder通讯基础上的,类似过往项目中使用的一些RPC通讯手段如(Corba、TinyRpc、DBus等)Binder通讯中与Corba通讯相似,都需要Server、Client、和ServiceManager三种角色,Corba是以网络为载体基于TCP/IP的,Binder是基于Binder驱动的,Android系统中增加了一些虚拟驱动Ashm、Lo...
2019-12-17 09:43:20
431
原创 基于Openssl的文件校验
在系统软件中有系统升级功能,方便软件的版本迭代,而在系统升级前需要校验升级的Image是否是可信的,以及信息是否被篡改过。 升级包由以下部分组成 数字证书 + 升级文件的文件摘要 + 使用密钥加密升级文件摘要得到的数字签名 + 升级文件 验证过程大体如下图 下面简述基于开源库Openssl的验证过程,在系统中会有一个预先存好的根证书,当...
2018-12-27 14:11:11
999
原创 C++ 使用smtp协议发送邮件的简单实现
心血来潮,简单实现一个发送邮件的小程序,首先实现一个简短的socket类头文件#ifndef _CSOCKET_H_#define _CSOCKET_H_#include #include #define BUFF_LEN 256class CSocket{public: CSocket(); ~CSocket(); bool initialize
2016-04-23 23:56:43
7792
原创 linux crash在动态库中,通过map查找crash位置
linux进程crash时,通常我们可以通过gdb+core或addr2line解析出进程crash在哪一个函数中,有时crash在动态链接库中,解析出的core可能只有一个地址,而不能知道是在哪一个函数,这时可以尝试通过/proc/进程ID/maps的方法找到crash的位置。一个动态库的实现:头文件sample_fun.h#ifndef _SAMPLE_FUN_H_#d
2016-04-23 08:57:44
2589
5
空空如也
linux ARM中是如何确定中断号的;
2018-12-30
如何通过openssl 将公钥 添加到证书中
2017-03-31
为什么可以在linux删除正在运行的程序
2016-09-13
linux 进程crash 生成的core文件被破坏
2016-04-06
g++ 4.7 如果不使用c++11的标准不能使用shared_ptr吗?
2015-12-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人