跳过正文

2025

X86_64 AT&T 汇编 - 个人参考手册
·7629 字
Gnu Asm As Gcc Manual
GCC 编译器 - 个人参考手册
·8152 字
Gnu Cpp Gcc Manual
gcc 编译器个人参考手册。
使用 musl 交叉编译和静态链接
··2322 字
Cgo Go Compile Gcc Musl
本文介绍了使用轻量化 libc 库 musl 进行交叉编译生成多架构二进制的方案,最终实现在 x86_64 编译机器上能同时构建出静态链接的 x86_64 和 aarch64 二进制的目标,大大简化了多套构建脚本的开发和维护成本。
GCC 交叉编译工具链
·6210 字
Cgo Go Compile Gcc
交叉编译是指编译器能生成和它执行环境不同的 CPU 架构的二进制,例如在 arm64 机器上编译出在 x86_64 机器上运行的二进制。 本文分别以常用的 ubuntu aarch64 和 fedora 40 x86_64 编译环境为例,介绍这两个问题的解决方案。
Go CGO 程序静态编译链接
·2347 字
Cgo Go Compile Gcc
本文先介绍 Go CGO 的概念和应用场景,以项目用到的 mattn/go-sqlite3 为例,介绍 CGO 程序的静态链接实现方案,其中涉及到动态链接的问题分析、 ubunut/centos 系统的静态编译环境搭建,CGO 静态编译遇到的问题和解决方案,最终生成最小化系统环境依赖的静态链接二进制。
使用 linux bpftrace 进行内核和应用性能分析
·9685 字
Bpftrace Kernel Ebpf Performance Tool
介绍 bpftrace 工具的使用方式、局限性和问题。
使用 linux perf 进行内核和应用性能分析
·5365 字
Perf Kernel Performance Tool
介绍 perf 工具的使用方式、局限性和问题。

2024

Bash - 个人参考手册
··41981 字
Bash Shell
这是我个人的 GNU Bash 参考手册。
创建 ebpf btf 和 vmlinux.h
·2544 字
Ebpf
创建 eBPF BTF 和 vmlinux.h 内核头文件的各种方式。
eBPF 常见错误
·9722 字
Ebpf
总结了 eBPF 开发过程中常见的报错和兼容性问题。
搭建 eBPF 开发环境
·395 字
Ebpf
在 MacOS 下使用高性能、轻量级 lima vm 来搭建 eBPF 开发环境。
cilium/ebpf
·3283 字
Ebpf
广泛使用的 cilium/ebpf go 库分析,涵盖了 Go 开发 eBPF 程序的各方面内容。
libbpf skeleton 用户空间程序分析
·15745 字
Ebpf
libbpf skeleton 用户空间程序分析
perf_event_open() 系统调用分析
·2476 字
Ebpf Perf
perf_event_open() 系统调用分析
eBPF libbpf 库解析
·11325 字
Ebpf
libbpf 库解析,涉及宏定义、内存读写等。
链接器 ld
··6277 字
Gnu Gcc Ld
Makefile-个人参考手册
··8575 字
Make Makefile Tools
这是我个人的 Makefile 参考手册。
C 预处理器-个人参考手册
··8475 字
Gnu Cpp
这是我个人的 C 预处理器参考手册文档。
C 语言-个人参考手册
··51795 字
C
我总结和使用的 C 语言参考手册。

2023

eBPF 介绍
··8299 字
Ebpf
本文档介绍 Linux 内核的各种追踪技术,然后介绍 eBPF 的发展历程、开发和执行流程、开发框架选择和 Demo 示例。