- 博客(17)
- 资源 (1)
- 收藏
- 关注
原创 ubuntu 交叉编译sqlcipher for aarch64
安装交叉编译工具链sudo apt-get install aarch64-linux-gnu编译openssl$ wget https://www.openssl.org/source/openssl-1.1.1k.tar.gz解压到openssl-1.1.1k目录,在该目录创建__install目录$ export CROSS_COMPILE=aarch64-linux-gnu-$ ./Configure linux-aarch64 no-asm --prefix=$(pw..
2021-07-21 20:37:40
688
原创 optee + qemu 编译
软件$ sudo dpkg --add-architecture i386$ sudo apt-get update$ sudo apt-get install android-tools-adb android-tools-fastboot autoconf \ automake bc bison build-essential ccache cscope curl device-tree-compiler \ expect flex ftp-upload gdis...
2020-07-06 17:39:55
506
原创 seccomp - Secure Computing
参考资料 http://www.man7.org/linux/man-pages/man2/seccomp.2.html http://man7.org/conf/lpc2015/limiting_kernel_attack_surface_with_seccomp-LPC_2015-Kerrisk.pdf https://www.freebsd.org/cgi/man....
2019-01-25 00:13:26
935
原创 socket内核分析
系统初始化fs_initcall(inet_init); // 后执行core_initcall(sock_init); /* early initcall */ 先执行建立sock文件系统#define core_initcall(fn) __define_initcall(fn, 1)#define core_initcall_sync(fn) __define_init...
2019-01-06 15:42:12
554
原创 getsockopt SO_PEERCRED
SO_PEERCRED only works on AF_UNIX stream socket or AF_UNIX stream/datagram socket created by sockpair sockpair #define _GNU_SOURCE#include <sys/socket.h>#include <sys/un.h>#inc...
2018-12-21 17:30:33
1730
转载 qemu linux mainline
########################################sudo apt-get install gcc-arm-linux-gnueabisudo apt-get install qemugit clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.gitmake CROSS_COMP...
2018-12-14 11:41:22
144
翻译 文件描述符和打开文件
进程级的文件描述符表 全局系统级的打开文件表 文件系统级的inode表 文件描述符表中每一条目都记录了单个文件描述符的信息控制文件描述符操作的标志 close-on-exec 对打开文件句柄的引用打开文件表中的每一条目都是一个文件句柄,句柄包含当前文件偏移量 打开文件所使用的标志,即open的flag参数 文件访问模式,即open指定的只读,只写,...
2018-12-11 12:09:13
228
翻译 开源软件版权
将自己的协议声明文件 (LICENSE) 放在根目录 将其他上家的声明文件统一放在一个子目录,比如 ./3rd_party_licenses/ 依照不同上家的名字继续建立子目录,然后将其声明文件放入。 在 README / NOTICE 文件中清楚说明使用了哪些上家的源码,以及他们的声明文件的具体位置。 无协议如果不加任何协议,默认情况下“保留所有权利”,只有你拥有版权,别人甚至无...
2018-12-07 16:54:33
4183
转载 libc
$ ldd a.out linux-vdso.so.1 => (0x00007fd7ea05b000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fd7e9c66000) /lib64/ld-linux-x86-64.so.2 (0x00005604828b7000)$$ /lib/{x86...
2018-12-06 14:42:54
302
原创 How include/generated/autoconf.h generated in Linux kernel
vim ./scripts/kconfig/confdata.c/* * Header printer * * This printer is used when generating the `include/generated/autoconf.h' file. */static voidheader_print_symbol(FILE *fp, struct symbol ...
2018-11-30 12:13:10
566
翻译 终端
基本概念终端和控制台都不是个人电脑的概念,而是多人共用的小中大型计算机上的概念。终端为主机提供了人机接口,一台主机可以连很多物理终端,每个人都通过终端使用主机的资源。终端有字符终端(RS-232串口)和图形终端两种。控制台是另一种人机接口, 不通过终端与主机相连,而是通过显示卡-显示器和键盘接口分别与主机相连,这是人控制主机的第一人机接口。现在的个人计算机一般只有一个控制台(键盘加上显示器...
2018-11-29 13:55:05
464
转载 Linux IO 模型
IO对象IO操作涉及两个对象,一个是调用这个IO的请求进程,另一个就是系统内核。当一个read操作发生时,它会经历两个阶段:等待数据准备好,并被拷贝到内核态的缓冲区 内核将内核态的缓冲区数据拷贝到用户态的进程缓冲区阻塞与非阻塞阻塞是指调用结果返回之前,当前请求进程会被挂起,只有在得到结果之后才会返回。非阻塞是指在不能立刻得到结果之前,会立刻返回。阻塞和非阻塞是针对请求进程而言的,主...
2018-11-28 14:45:40
115
原创 C - 有符号数和无符号数扩展
C语言标准要求先进行数据大小的转换,之后再进行无符号和有符号之间的转换. C语言中的强制类型转换保持二进制位值不变,只是改变解释位的方式。将无符号数转换为更大的数据类型时, 只需简单地在开头添加0,这种运算称为0扩展。将有符号数转换为更大的数据类型需要执行符号扩展,规则是将符号位扩展至所需要的位数。扩展的原则是:有符号的数据类型,在向高精度扩展时,总是带符号扩展 无符号的数据类型,在向高...
2018-11-28 11:47:06
4260
原创 旧书购买网站
正版二手书https://www.duozhuayu.com/ 注意有些是盗版https://www.taobao.com/http://www.youlu.net/http://bq.kongfz.com/http://www.jiushujie.com/http://www.booyee.com.cn/
2018-11-28 11:38:23
6329
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人