博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2011年3月30日

摘要: 在Linux中,gcc更像一个工具大管家,管理很多工具一起来对C程序进行编译。详细过程请看下图,带阴影的箭头表示文件的流程,空白箭头表示控制过程: 下面详细介绍一下这个过程。 1、程序员在Linux终端中输入命令gcc eatc.c –o eatc 2、gcc接管Linux的控制权,然后立即启用一个工具C preprocessor(cpp)。这个工具处理C语言的源代码文件(eatc.c),处理比... 阅读全文

posted @ 2011-03-30 21:25 天地玄黄 阅读(4697) 评论(0) 推荐(0) 编辑

摘要: 当Linux把程序加载到内存中的时候,Stack中是存储有一些预先的信息的。 Stack存在于内存中0xbfffffff附近,但是不会大于这个值。Stack是底朝上的,ESP指向最外面的元素。 · ESP所指向的最外面的元素是这个程序的参数个数,最少为1。比如运行./test这个程序,这唯一一个参数指的就是test。这是32bits的。 · 之上一行是一个地址,指向可执行的文件。也是32bits的... 阅读全文

posted @ 2011-03-30 14:12 天地玄黄 阅读(243) 评论(0) 推荐(0) 编辑