2024-09-18发表linux / linux内核8 分钟读完 (大约1240个字)linux二进制文件加载源码分析linux二进制加载结构linux_binfmt 用来定义二进制格式的结构,代表某种 特定的格式,比如elf struct linux_binfmt { struct list_head lh; // 链表头部 struct module *module; // 模块 int (*load_binary)(struct linux_binprm *); // 加载函数 int (*load_shlib)(struct file *);#ifdef CONFIG_COREDUMP int (*core_dump)(struct coredump_params *cprm); // coredump处理函数,如elf会有定义 unsigned long min_coredump; /* minimal dump size */#endif} __randomize_layout; linux_binprm 用来存放可执行 文件的各种参数,代表可执行文件的运行时结构阅读更多