首页
新闻
UniX技术
数据库
经验交流
PHP
Linux考试认证
首页
>
Linux考试认证
Windows下的开发环境
时间:2009-07-15 17:43:58 作者:
我要投稿
Linux初探欢迎您的投稿,投放方法请点击
这里
查看,我们会定期赠送精美小礼品给优秀的投稿作者。海纳百川 取则行远!LinuxGoo欢迎您的到来。
我们在介绍QEMU时提到过,在Windows下你需要一个虚拟的Linux来帮你编译操作系统的源代码。将操作系统内核编译链接成ELF格式有诸多好处,我们不但可以用Linux下现成......
这样一来,你的编译环境就安装完成了,接下来,如同在Linux下一样,你还需要一个编辑器。据说始终有一部分人使用记事本(notepad) 来编写代码,不管基于何种理由,希望你不要这样做,因为你可以找到许多比notepad更适合编写代码的编辑器,有收费的,也有免费的,它们通常都具备关键字颜色,自动缩进等方便开发者的功能,可以大大提高工作效率。
总结一下的话,搭建一个Windows下的开发环境,你需要做以下工作:
· 安装Windows。
· 安装Bochs(安装程序可到其官方网站获取)。
· 安装一个你喜欢的编辑器用来编写代码。
· 安装一个速度较快的虚拟机,如QEMU(安装程序可到其官方网站获取})。
· 在速度较快的虚拟机上安装一个Linux。
· 在虚拟的Linux中安装GCC、GNU Make、NASM、Samba──如果它们没有默认被安装上的话。
· 在虚拟的Linux和宿主机之间共享一个可读写的文件夹。
将来你的开发过程看起来很可能是这样的:
· 在Windows中用编辑器编写代码。
· 在虚拟Linux中用Make调用GCC、NASM及其他工具来生成内核并写入磁盘映像。
· 在Windows中用Bochs来运行你的操作系统。
· 如果有问题的话。
linux认证网,加入收藏
o 用各种方法来调试,比如用Bochs;
o 返回第1步。
总结
好了,到这里相信读者已经知道如何搭建自己的开发环境了,说白了它跟开发一个普通的软件区别基本就在一个虚拟机上。它既是我们的“硬件”,又是我们的调试器,有了它我们安心多了。那是不是马上就可以开始我们的操作系统开发之旅了呢?很遗憾,还不能那么着急,因为你知道,操作系统是跟硬件紧密相连的,如果想实现一个运行在使用IA32架构的IBM PC上的操作系统,免不了要具备相关的知识。其中的重头戏就是32位Intel CPU的运行机制,毕竟CPU是一台计算机的大脑,也是整个计算机体系的核心。
所以紧接着我们要学习的,就是要了解IA32保护模式。掌握了保护模式,我们才知道Intel的CPU如何运行在32位模式之下,从而才有可能写出一个32位的操作系统。
2
/
2
首页
上一页
1
2
如果您需转载 Windows下的开发环境,请注明来自LinuxGoo.com,其版权归原作者所有。请广大网友留言时遵纪守法,使用文明用语。如果您在应用中有什么问题,请在下面留言,我们会尽快解答。
来顶一下
返回首页
发表评论
共有
条评论
用户名:
密码:
验证码:
匿名发表
相关文章
SQL Server日志过大会影响查询结果
一台老Web服务器上,使用的是ASP SQL Server 2000的网站,五六年了,使用起来一
Cognos8.3 oracle9i数据集市 建cube性能
本次要给客户作一个演示,所以环境都是临时搭建的。具体环境如下:DB:Oracle9i
网友经验分享:Ubuntu个性配置完全方案
一、准备篇 首先下载Ubuntu, http://www.ubuntu.com/getubuntu/downloa
oracle数据文件内部BLOCK结构详解
oracle数据文件内部BLOCK结构详解 datafile block block size :8192Offse
Mono将进入Debian的默认安装包
OS News报道,Debian开发者Josselin Mouette成功让Tomboy接受为Debian下一
PHP集成FCK的函数代码
定义一个函数用于调用FCKeditor ,用php写成一个函数,方便调用CODE://定义
根据表名自动生成I/S/U/D的SQL语句,用于MSS
网上流传的基本SQL生成语句(Inset/Selec/Update/Delete)方法多了,这里介绍
LPI101考试准备:硬件和体系结构
BIOS 设置本节涵盖了针对初级管理员 101 考试(LPIC-1)的主题 1.101.1 的资
基于qmail的完整WEBMAIL解决方案安装详解
安装平台:Linux,Solaris
版本:qmail-1.03
安装的机器: mail.mydomain.com软
PHP缓存详谈
大家会问什么是缓存!能干什么!其实缓存相当于内存。保存一段时间!缓存就是我
捕获SocketConnection组件连接异常的几个好
1、多层分布式结构中怎样动态的判断客户端与服务器是否断开?2、请问能捕
linux认证:精通initramfs构建stepbystep(三
一、什么是busyboxbusybox号称是嵌入式Linux中的瑞士军刀——小巧、功能
shell变量和运算符
-本地变量 -影响变量的命令 -环境变量 -引号 -变量替换 -运算符 -位置
php中的时间处理
<?
/**
* 转换为UNIX时间戳
*/
function gettime($d) {
if(is_numeric($d
十天学会php之第七天
学习目的:学会SESSION的使用SESSION的作用很多,最多用的就是站点内页面间变
用PHP发送有附件的电子邮件
我经常听到这样一个问题:"我有一个从网站发来的合同。我如何给通过表单发
栏目热门
ubuntu下wine迅雷5的安装比较完善的方法
Linux认证考试心得:一个新手RHCE的酸甜苦辣
Linux认证心得:一个初学者的RHCE之路
菜鸟必读:RHCE课堂学习笔记(1)
利用tr命令轻松实现大小写转换
站内搜索:
Linux
高级搜索
Powered by
Linux初探
© 1999-2009
RSS