首页 理论教育 对新建应用程序进行设置-操作系统实现之路

对新建应用程序进行设置-操作系统实现之路

时间:2023-10-21 理论教育 版权反馈
【摘要】:新应用程序创建完成之后,VS 2008会采用缺省设置对其进行配置。为了使新建的应用程序适应Hello China操作系统的运行环境,必须对其进行合理设置。缺省情况下,VS 2008会在代码中插入诸如“异常处理”、“缓冲区检查”等确保应用程序安全运行的代码。所有Hello China操作系统相关的功能函数的二进制代码,都在该文件中。缺省情况下,是按照4K字节对齐的,这不符合Hello China对应用程序的要求。图13-5 对链接选项进行设置设置后的结果如图13-6所示。

对新建应用程序进行设置-操作系统实现之路

新应用程序创建完成之后,VS 2008会采用缺省设置对其进行配置。这些缺省设置都是针对Windows操作系统做出的,与Windows操作系统关联密切,但是与Hello China操作系统不兼容。为了使新建的应用程序适应Hello China操作系统的运行环境,必须对其进行合理设置。这也是Hello China开发中最重要的一个步骤。

第一个要做的设置,是编译器生成代码的方式。缺省情况下,VS 2008会在代码中插入诸如“异常处理”、“缓冲区检查”等确保应用程序安全运行的代码。这些代码对程序员是透明的,即在程序的源文件中看不到这些代码,只有在编译的时候,才由编译器插入。这些代码的实现机制,往往依赖于Windows操作系统机制,因此必须禁止编译器插入这些代码。具体设置方式为:选择“项目→属性”菜单,在弹出的对话框中,选择“配置属性”,左上角的“配置”中,选择“Release”,如图13-4所示。

978-7-111-41444-5-Chapter13-5.jpg

图13-4 对项目进行设置

选择“C/C++→代码生成”,在右面的配置列表中,把“启用C++异常”选项修改为“否”,“缓冲区安全检查”选项设置为“否(/GS-)”,如图13-4所示。

再选择“链接器→高级”选项,在右面的选项列表中做如下配置:

入口点:输入“HCNMain”,即程序的入口函数名称。

基址:设置为“0x1E0000”,即应用程序的加载地址

其他选项保持默认值即可,如图13-5所示。(www.xing528.com)

再选择“链接器→命令行”配置项,在右面的“附件选项”编辑框中,输入如下附加选项:sdklib.lib/ALIGN:16。

其中sdklib.lib告诉链接器要到该文件中寻找相关函数的目标代码。所有Hello China操作系统相关的功能函数的二进制代码,都在该文件中。而/ALIGN选项,则是告诉链接器,在链接应用程序的时候,节(section)与节之间的间隔应该按照16字节对齐。缺省情况下,是按照4K字节对齐的,这不符合Hello China对应用程序的要求。

978-7-111-41444-5-Chapter13-6.jpg

图13-5 对链接选项进行设置

设置后的结果如图13-6所示。

978-7-111-41444-5-Chapter13-7.jpg

图13-6 设置结果

至此编译链接选项设置完毕。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈