ELF格式
-
彻底搞懂 ld 链接器:为什么交叉编译时 -L 和 -rpath-link 缺一不可?
在 Linux C/C++ 开发中,我们习惯了用 -L 来指定库文件的搜索路径。但在嵌入式交叉编译(Cross-Compilation)过程中,开发者经常会遇到一个诡异的现象:明明已经用 -L 指向了库目录,链接器依然报错 er...
-
深入底层:使用 readelf 剖析 C++ 异常背后的 .eh_frame 机制
在 Linux C++ 开发中,当异常(Exception)发生时,程序是如何精准地找到对应的 catch 块并完成栈回溯(Stack Unwinding)的?这背后隐藏着一个至关重要的 ELF 段—— .eh_frame 。 本...
-
深入底层:在 Strip 后的二进制中利用 .eh_frame 实现精准栈回溯
在 Linux 系统编程与性能调优中,我们经常会遇到被 strip 掉符号表的生产环境二进制文件。此时,传统的基于符号表( .symtab )或调试信息( .debug_info )的栈回溯工具(如 backtrace() )往往只...
-
彻底榨干网卡性能:基于 eBPF/XDP 的极速流量过滤与 XDP_REDIRECT 转发实战
在每秒数百万包(Mpps)的高并发网络场景下,传统的 Linux 内核网络栈会面临巨大的性能瓶颈。由于 sk_buff 结构体的分配、上下文切换、软中断(softirq)以及内核协议栈(IP/TCP/UDP)的层层解析,即使是简单的丢...