LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 807|回复: 1

[转]从源代码制作64位linux操作系统的原理

[复制链接]
发表于 2010-4-7 10:56:33 | 显示全部楼层 |阅读模式
下面是转的youbest的blog<<从源代码制作64位linux>>中的部分原文...
这是全文的链接地址:http://zdbr.net.cn/download/x86_64_pure-1.0.html


制作原理
    本文制作的基本原理是:
      1)整个制作过程是一个由32位系统向64位系统转换的过程,而在整个过程中我们不需要重新启动机器,那么我们需要内核是32位和64位兼容的模式,因此我们默认制作过程中运行的是一个64位并提供了对32位支持的内核。
      2)由于内核兼容32位,所以系统是可以运行于32位和64位混合运行的,这个也是Mutillib原理的基础,因此本文的原理可以运用在Mutillib的制作上,当然本文是实现了一个纯64位的系统,但方法并不限于制作纯64为系统。

    基于上述原理,我把制作过程大致分解成下面的步骤:
      1、通过主系统的32位的编译器及主系统下的32位编译辅助工具生成运行在32位下但能生成64位的临时编译器;
      2、用这个32位但生成64位的临时编译器及主系统下的32位编译辅助工具来生成64位的基本C库;
      3、运用临时编译器及主系统下的32位编译辅助工具生成64位并能生成64位指令的编译器,该编译器将连接在64位的基本C库上;
      4、用这个64位的编译器及主系统中的32位编译辅助工具生成64位编译辅助工具,这样就完成了一个自给自足的纯64位编译工具链;
      5、运用这个纯64位编译工具链生成最终的纯64位系统。
 楼主| 发表于 2010-4-7 10:58:42 | 显示全部楼层
不过有一点不明白的是:
说的是在x86_64的机器上制作,但是主系统怎么又是32位的啊...?

直接用一个64位的机器,然后象做LFS一样,做64位的目标系统,这样会不会简单些啊...?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表