SRE tools
SRE tools
iOS
ar
ar实用程序创建并维护组合到存档中的文件组。一次已创建存档,可以添加新文件,也
可以添加现有文件提取、删除或替换。
ar -t *.a
nm
nm显示中每个对象文件的名称列表(nlist结构的符号表)
nm libavoscloud.a
otool
等效objdump命令, 打印对象文件的内容和最终链接的映像.
otool libavoscloud.a -L
file
查看文件类型
file libavosclod.a
lipo
创建或者操作通用文件(multi-architecture), 如合并.a文件
// 查看信息
lipo -detailed_info libav...
Tools Ghidra
Tools Ghidra
IDA Pro 替代品, 美国国家安全局出的逆向工程工具.
管网: https://ghidra-sre.org/ (需要翻墙)
源码: https://github.com/NationalSecurityAgency/ghidra
https://gitee.com/mirrors/Ghidra/blob/master/build.gradle
安装: https://github.com/NationalSecurityAgency/ghidra/blob/master/GhidraDocs/InstallationGuide.html
编译源码
Installing Ghidra - Take 1
Install ...
iOS 反编译
iOS 反编译
unzip *.ipa
使用iOS App内的素材
ipa解压后, 可以在./Payload/*.app/ 中看到图片素材. 这些图片不能直接使用, 因为编译时
xcode对资源文件做了处理, 需要使用pngcrush工具转换回来.
/Applications/Xcode.app/Contents/Developer/usr/bin/pngcrush \
-revert-iphone-optimizations ${pngfile} ${target_pngfile}
如果是使用Image Assets管理的图片, 都会保存到Assets.car中, 可以使用cartool, 解压
Assets.car. cartool github
Math 代数
Math 代数
标量(scalar): 一个标量表示一个单独的数,它不同于线性代数中研究的其他大部分对象
(通常是多个数的数组)。我们用斜体表示标量。标量通常被赋予小写的变量名称。如:a
向量(vector): 一个向量表示一组有序排列的数。通过次序中的索引,我们可以确定每个
单独的数。通常我们赋予向量粗体的小写变量名称。当我们需要明确表示向量中的元素
时,我们会将元素排列成一个方括号包围的纵柱:如 a.
矩阵(matrix): 矩阵是一个二维数组,其中每一个元素由两个索引所确定。一个有m行,n列
,每个元素都属于 RR 的矩阵记作 A∈Rm×n. 通常使用大写变量名称,如A
张量(tensor): 超过两维的数组叫做张量。在某些情况下,我们会讨论坐...
Compute storage systems
Compute storage systems
计算机读写设备, 越快越大, 就越贵. 并且计算机程序有一个称为局部性(locality)基本
属性. 具有良好局部性的程序倾向于一次又一次地访问相同的数据项集合, 或是倾向于访问
邻近的数据项集合. 因此计算机存储器创建了层次结构, 称为memory mountain.
局部性
局部性原理(principle of locality), 是一个持久的概念, 更倾向于引用邻近于其他最
近引用过的数据项, 或者最近引用过的数据项本身.
局部性通常有两种不同的形式: 时间局部性(temporal locality)和空间局部性(spatial
locality). 好的时间局部性程序中, 被引用过一次的存储器位置很...
Compute data
Compute data
计算机中一切信息都是0和1
字与字节顺序
字是计算机一次处理的最位数, 目前常用有32位和64位就是指的字(Word).
字节是计算机处理的最小单位, 8位二进制数串.
寻址, 多字节对象(如32位整数)都被存储为连续的字节序列, 对象地址为所使用字节中最
小的地址.
字节顺序, 多字节对象(如32位整数)需要按照顺序依次存储字节, 大头端, Big endian是
最高有效字节放在低地址位; 小头端, Little endian是低有效字节放在低地址位.
网络字节序, 网络传输一般使用大头端传输, 使用htons和ntohs两个函数, 把数据
在主机和网络格式上相互转换.
数值
二进制, 八进制, 十进制, 十六进制
...
468 post articles, 59 pages.