
程序的本质
介绍Linux程序的构成和运行的实质。
tanglinux
专注于Linux内核以及C/C++应用程序的开发。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
程序的本质之六根据实例简要说明链接脚本的语义
操作系统:CentOS Linux release 7.7.1908内核版本:3.10.0-1062.1.1.el7.x86_64运行平台:x86_64参考文献: https://sourceware.org/binutils/docs-2.27/ld/index.html通过执行$ gcc -m32 -Wl,--verbose tanglinux.c -o tanglinu...原创 2019-11-05 17:14:58 · 2242 阅读 · 0 评论 -
程序的本质之五Linux系统中静态库文件的构成
操作系统:CentOS Linux release 7.7.1908内核版本:3.10.0-1062.1.1.el7.x86_64运行平台:x86_64在Linux系统中,静态库的文件名多以.a结尾,它是一个或多个目标文件的集合。静态库文件以以下的数据结构来定义(/usr/include/ar.h):#define ARMAG "!<arch>\n" /* ...原创 2019-11-01 09:29:53 · 1467 阅读 · 0 评论 -
程序的本质之四ELF文件中与动态链接有关的section的定义
操作系统:CentOS Linux release 7.7.1908内核版本:3.10.0-1062.1.1.el7.x86_64运行平台:x86_64参考文献:http://refspecs.linuxfoundation.org/本文根据/usr/include/elf.h文件和程序编译的详细过程文中所述的tanglinux来分析可执行文件中与动态链接有关的section...原创 2019-10-28 16:50:33 · 2416 阅读 · 0 评论 -
程序的本质之三ELF文件中与符号(symbol)相关的section的定义
操作系统:CentOS Linux release 7.7.1908内核版本:3.10.0-1062.1.1.el7.x86_64运行平台:x86_64参考文献:http://refspecs.linuxfoundation.org/本文根据/usr/include/elf.h文件和程序编译的详细过程文中所述的tanglinux.c源码来分析可执行文件中与符号(symbol)...原创 2019-10-23 16:58:19 · 5142 阅读 · 2 评论 -
程序的本质之二ELF文件的文件头、section header和program header
操作系统:CentOS Linux release 7.7.1908内核版本:3.10.0-1062.1.1.el7.x86_64运行平台:x86_64参考文献:http://refspecs.linuxfoundation.org/本文根据/usr/include/elf.h文件和程序编译的详细过程文中所述的tanglinux来分析可执行文件的文件头、section hea...原创 2019-10-17 12:30:07 · 14549 阅读 · 6 评论 -
程序的本质之一程序编译的详细过程
操作系统:CentOS Linux release 7.7.1908内核版本:3.10.0-1062.1.1.el7.x86_64运行平台:x86_64为了在64位的操作系统中编译32位的应用程序,可能须要安装以下动态库:$ sudo yum install glibc.i686$ sudo yum install glibc-devel.i686$ sudo yum ...原创 2019-10-10 09:12:17 · 1623 阅读 · 0 评论