Home  >  Article  >  Backend Development  >  一段C语言程序从编译的到软件打开整个过程是怎样的?

一段C语言程序从编译的到软件打开整个过程是怎样的?

WBOY
WBOYOriginal
2016-06-06 20:22:571318browse

如题,大致的我明白就是编译器转成二进制然后给CPU然后输出,谁能给我细讲下,多谢了

回复内容:

如题,大致的我明白就是编译器转成二进制然后给CPU然后输出,谁能给我细讲下,多谢了

这里有一篇简单的文章:
编译器的工作过程

书的话,上面推荐的 不错。

就是编译链接运行三个步骤。

推荐本书 深入理解计算机系统 第二版

编译:一个 C 程序的艺术之旅

比如你编译使用的是cc,那么cc就是会对源代码进行解释,这些解释具体你也不用知道,你就知道cc可以把c源码转化成汇编,再到机器码,到了机器码就是cpu可以识别出来的操作指令了,
运行是怎么回事呢?
举个例子比如在shell下执行某个文件,那么shell就会创建一个子进程,然后子进程会调用exec,这个函数是对其他应用程序的引用,也就是进入你指定的可执行程序,在指定了子进程的进程表,u区等等初始化好之后,进入相应的区就可以了,不知道这个解释你能不能理解。因为这里面的细节太多了。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn