【译】Linux系统中的 ELF 文件的理解与分析

世界上一些真正的工匠精神,我们认为是理所当然的。其中之一就是 Linux 上常用的工具,比如psls。尽管这些命令可能被认为是简单的,但当看清其本质时,却有更多的东西。这就是ELF或可执行和可链接格式的作用。一个用得很多的文件格式,但真正了解的人却寥寥无几。让我们通过这个介绍教程来了解一下吧!

Read More

软件定义一切

什么是软件定义?

软件定义的真正落地,还是在云计算平台里面的应用。2011年前后,OpenFlow被用于云计算平台中进行网络管理,并被广泛接受。在15年的时候,Gartner战略报告首次出现SDN(软件定义),SDN重新“定义”了传统的网络架构甚至通信产业。

Read More

Huge Page

Ⅰ. Check Huge Page

  1. Linux 内核支持多种 page size。

    架构 HugePage Size
    arm64 4K, 2M and 1G (or 64K and 512M if one builds their own kernel with CONFIG_ARM64_64K_PAGES=y)
    x86 4K and 4M (2M in PAE mode,1GB if architecturally supported)
    amd64 2MB, 1GB
    ia64 4K, 8K, 64K, 256K, 1M, 4M, 16M, 256M
    ppc64 4K, 16M

Read More

SystemTap学习记录

SystemTap 工具

SystemTap 允许用户在不重新编译代码的情况下利用静态追踪、动态追踪工具,比如在任何地方动态插入printk,或者改变内核的关键数据结构(guru模式)。所有的操作都要以root用户模式下进行。

Read More

Pin学习1

什么是插桩(Instrumentation)?

向程序注入额外的代码来收集程序运行时的状态。

插桩(Instrumentation)的方法: * 源代码插桩(source instrumentation) ——对源码进行操作 * 二进制插桩(Binary instrumentation) ——运行时直接注入

Read More