但凡一种技术,想要快速入门,最好先有个整体知识的全貌了解,上文已经以导图形式展现各位读者了解,先知其大概,后面再逐项琢磨。本篇主要就我们开始的入门之旅做些准备,
工欲善其事,必先利其器。先说说我们入门阶段需要的一些工具。
在没有接触真正的BIOS Source Code之前,我们还是有很多事情做的,了解各规范,掌握硬件访问方式等。这些也少不了编编程序,1.避免单纯的理论学习而容易枯燥;2.增强动手能力,为今后调试打下基础;3.实现自己的调试工具,量身定制,目标明确,有成就感,兴趣也慢慢培养出来。
闲话少说,书接正文,我们之前提过一款BIOS界代表性的调试工具ru,Jack Wang 先生的十年磨一剑的产物,且下载来看看,都有哪些功能,刚开始接触的新人可能会一头雾水,怎么还是DOS下的应用? 打开一看都是整齐排放的一堆数据
我们的目标项目也是DOS下的类ru工具实现,为什么还用DOS? 这个根深蒂固的系统与X86渊源颇深,后面有时间会侃侃DOS的历史。DOS下访问硬件是直接的,你可以肆无忌惮,因为这个OS不会屏蔽硬件的访问,操作起来简单直接,便于理解,虽然Intel已经在向大家往EFI Shell上引,但很多底层的应用都是DOS下的,DOS还是有一定的用武之地。
要开发一套类ru工具是本系列文章的目标载体,这个小项目需要我们
选择用什么语言实现,这涉及
选择的编译工具等。
这里,我们且将要开发的这个类ru称之为xu,Xu相关内容见下面导图。
开发工具为什么选择 Open WatCOM C 有两个原因,1. 开源工具,方便下载安装
http://www.openwatcom.org
2. 其开发环境集成了DOS Flat Mode 模式,对入门者在DOS 下访问全4G内存来说,方便简单。
当然,如果你愿意,可以选择BC或TC等早期C编译器。不过这里提供的参考代码需要做些调整了
下面先说说Open WatCOM 环境的搭建。
1.官网上下载open-watcom-c-win32-1.9.exe并运行安默认安装即可。
2.在开始菜单中找到Open Watcom C C++下的IDE运行。打开如下图所示 IDE界面。
3.点击File菜单中的New Project,会提示所建项目的名称,这里统一放到xu目录下,命名xu.wpj。这里IDE会提示目标名称和目标环境,镜像类型,如图所示,Target name不变xu(你也可以取自己喜欢的名字哈),Target Environment选择DOS-32bit,这里我们打算直接用32位的代码,Image Type选择DOS/4GW Executable[exe]选项。如下图所示
点击OK按钮,这个工程环境就建完了。这时会要导引
为项目添加Source files了。咱们下回再说。
(这时点击保存,然后可以到对应的目录下看看IDE为你生成了哪些东东吧,以便我们今后理解IDE是如何工作的,前提是你有这个兴趣)