码农必修课「360° 剖析 Linux ELF」报名中
程序的链接、装载和运行属于程序员的基本素养,「ELF 剖析」是 Linux 码农必修课。
程序的链接、装载和运行属于程序员的基本素养。工作中,不管是应用、中间件还是操作系统开发,迟早会遇到相关的问题。早点积累能少走不少弯路。原魅族内核团队负责人吴章金和阅码场一起开发的这门课,墙裂推荐。
泰晓科技与阅码场强强联合,首度推出码农自我修养之「360° 剖析 Linux ELF」在线视频课程。
同样是打印一个 ‘hello’ 字符串,gcc 8.3 默认生成的 a.out 有 8.3k,而裁剪到 45 字节也能实现同样功能,这 185 倍的差距是什么?!
让我们带着这个问题跟《C 语言编程透视》作者一起剖析 ELF,把体系结构、指令集、Linux A&T 汇编语言、程序编译、链接与装载、程序运行、系统裁剪、系统调用、系统调试等这些平常似懂非懂、似是而非的很多基础知识点如抽丝剥茧、庖丁解牛般剖析一遍,做到以点带面,融会贯通。
学完该课程,期望大家能解答下面这些问题并且能得心应手地分析和解决工作中的实际问题:
- C 语言程序的入口是 main 函数,真的是这样吗 ?
- main 函数末尾必须加 `return 0` 吗,为什么 ?
- GCC 默认生成的 a.out 是 a.out 格式吗 ?
- Heap 与 Stack, Bss 与 Data 傻傻分不清 !
- 碰到 Segmentation Fault, Stack Overflow 常常不知所措;
- 缓冲区注入攻击是什么东东,如何检测缓冲区溢出 ?
- 偶尔要用到 Linux AT&T 汇编语言或者内联汇编,怎么写,怎么学 ?
- 如果要让一个共享库可执行,可以做到吗 ?
- 如果无法获得共享库的源码,如何单独升级其中的库函数呢 ?
- 公司要做一个只有 8M 闪存的产品,如何下手 ?
- 要改变程序代码段的装载地址,该怎么做……
这是泰晓科技与阅码场首度合作的处女作,必属精品!欢迎同学们踊跃报名或转发推广。
以下是课程简介:
课程讲师
吴章金,十年 Linux 研发经验,Linux Committer,前魅族内核团队技术总监。热门开源书《C 语言编程透视》作者。
开课时间
课程视频将于 2019年10月19 日正式上线。
报名方式
用 PC 浏览器访问下方地址,进去后点开右上角图标用微信扫码登陆。
http://yomocode.com/courses/9
优惠与折扣
早鸟优惠价 ¥599,原价 ¥759。
使用专属折扣码(W26F)另享 ¥10 优惠。专属折扣码一直有效。
阅读下文可进一步了解课程详情,包括课程大纲,详细报名步骤等。
也可以微信扫码进一步咨询:
微信扫码联系泰晓科技主编,请备注 “ELF 剖析”。