以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 操作系统原理 』  (http://bbs.xml.org.cn/list.asp?boardid=63)
----  可执行文件的执行原理  (http://bbs.xml.org.cn/dispbbs.asp?boardid=63&rootid=&id=38772)


--  作者:zhu_ruixian
--  发布时间:10/11/2006 1:21:00 PM

--  可执行文件的执行原理
基本上,将编写的程序编译成机器代码,里面都是CPU能够直接执行的微指令。
目前的个人电脑都是基于简单指令集的,即所有的程序都有简单的指令组成,每个指令都是一个能够一步直接完成的简单的动作。通过多步的动作,和各种动作的组合,就形成了完整的程序。在文件头一般都是一个结构说明的表,用来表示这个文件整体的结构。不同的内容被分别放在不同的段中。而其中的核心就是机器代码段。
    windows 和 Linux下稍微不同,但是原理一样。操作系统根据可执行文件的头信息(大概几百个字节吧),进行调度配置,然后读取文件作为二进制放到内存,CPU从内存读入这些二进制信息作为指令执行。windows下还有个比较特别的是一种称之为“资源”的二进制代码,这种代码只有windows可以识别,Linux无法识别。通常一些对话框、图片等,都可以作为资源。windows根据这些标志,绘制出窗口。
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
2,218.750ms