当前位置:  技术问答>linux和unix

问题继问~~~~~~~~~~~~~~~~~~

    来源: 互联网  发布时间:2015-05-31

    本文导语:  我自己下了一段操作系统引导程序,其中用了汇编和c,开发环境是xp.我想用WinGw(gcc)来编译c,但输出默认目标文件是.exe,无法在bochs下测试,该如何控制输出目标文件或者说是如何编译才能通过软盘来引导系统。(注...

我自己下了一段操作系统引导程序,其中用了汇编和c,开发环境是xp.我想用WinGw(gcc)来编译c,但输出默认目标文件是.exe,无法在bochs下测试,该如何控制输出目标文件或者说是如何编译才能通过软盘来引导系统。(注:我用的笔记本,安装linux老是出错,不得已在xp下来开发,测试。)

|
有可能不能使用WinGw来编译,主要问题在于链接器,如果你使用的是x86处理器。
引导程序应该是16位程序,使用gcc编译恐怕只能生成32位程序;链接器最终链接生成的应该像dos下.com类型的程序,就是只有代码段和数据段,不包含杂七杂八的文件头等信息。
所以,你还是找一个能直接生成dos程序的编译器和链接器试试吧。

|
gcc编译恐怕只能生成32位程序?
不对吧?Linux内核一开始的初始化部分也是在实模式下阿,还不是一样用GCC编译生成?

|
不啊,在386及以上,实模式是32位,在此之下,是16位。当然了在386以上也是可以用16位(AX,BX,CX……)的。(就想在8086上还可以使用8位(AL,BL,CL……)那样。

|
对了,以前我在学8086汇编的时候,好象有个exe2bin的转换工具吧~~~

|
toCoolQ():

Linux的初始化部分使用的是汇编语言!如果是c语言,gcc只能生成32位程序。

|
学习啊!!!
楼主何不一试!管它16位还是32位,搞一搞在看!

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • 简单问题简单问题简单问题简单问题
  • 修改配置真正解决php文件上传大小限制问题(apache+php)
  • 小问题,急问题,重大问题!!!
  • sharepoint 2010中item.Update()和item.SystemUpdate 修改数据版本问题解决
  • 弱弱的一问,linux下的中文问题及网络问题,分不是问题
  • 八个问题帮你快速了解Docker
  • 请教两个小问题:一个cgywin下使用vi的问题,另一个socket的问题
  • 错误:将'const x'作为'x'的'this'实参时丢弃了类型限定问题解决
  • 网页的编码问题!或者java的编码问题,由此引出一条解决中文问题的思路
  • nginx Windows版相关问题及使用说明
  • 死锁的问题 多级锁定问题 循环锁定问题
  • vs2010下禁用vmware的方法以及解决vmware插件导致vs2010变慢的问题
  • [问题]双系统出现的问题!求问题的原因和解决办法!
  • Linux下时钟同步问题:Clock skew detected原因分析及解决方法
  • 初学者问题。一个是编译hello world的问题,一个是配置ssh的问题
  • c/c++服务器程序内存泄露问题分析及解决
  • C程序问题:哪个高手帮我解释下下面的问题,主要是a[0]和&[0] 的区别 和编译器的问题??
  • ​部署 Docker 前必须问自己的四个问题
  • swing的问题还是jbuiler的问题??
  • spring的事务类型及spring和hibernate可能导致的问题分析
  • 菜鸟第一次安装红帽子7.2的一箩筐问题。每个问题会开个帖子,各放100分!请有安装经验的老鸟们帮忙解决。第二个问题:什么是LILO?怎么样


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3