首页 理论教育 操作系统实现之路:编写应用程序代码,编译链接

操作系统实现之路:编写应用程序代码,编译链接

时间:2023-10-21 理论教育 版权反馈
【摘要】:但是Hello China应用程序的大致架构是相同的,每个应用程序必须包含下列关键要素:一个消息循环,循环从应用程序(线程)的消息队列中获取消息,并进行分发。实际上,Hello China也实现了基于消息的驱动机制,由外部消息来驱动程序的运行。如果希望构建整个应用程序,形成最终的二进制模块并在Hello China上运行,则必须选择“生成→批生成…”需要注意的是,这个生成的DLL是不能直接被Hello China执行的,必须对其进行处理,也就是下一步的工作。

操作系统实现之路:编写应用程序代码,编译链接

编写代码是应用开发的最核心步骤,也是工作量最大的步骤。具体的代码与应用程序的功能相关,无法统一描述。但是Hello China应用程序的大致架构是相同的,每个应用程序必须包含下列关键要素:

(1)一个消息循环,循环从应用程序(线程)的消息队列中获取消息,并进行分发。

(2)至少一个窗口,用于显示所有用户界面元素,完成用户交互。

(3)至少一个窗口函数,对应上面的窗口,处理所有窗口相关的消息和用户动作。

(4)一个入口点(入口函数,即HCNMain),操作系统加载应用程序,并从该点开始运行。(www.xing528.com)

熟悉Windows API编程的读者很容易发现,这个逻辑结构与Windows应用程序结构类似。实际上,Hello China也实现了基于消息的驱动机制,由外部消息(用户输入)来驱动程序的运行。下面是一个简单应用程序的代码,包含了上述各个要素:

上述代码只是创建了一个应用程序主窗口,并在窗口的左上角输出了“Hello,world!”字符串。

代码编写完毕,即可进行编译链接了。如果仅仅是编译一个C/C++源文件,只要直接按“Ctrl+F7”组合键,即可完成编译。如果希望构建整个应用程序,形成最终的二进制模块并在Hello China上运行,则必须选择“生成→批生成…”菜单,在弹出的对话框中勾选“Release|Win32”,然后点击“重新生成”按钮即可。

这样生成的DLL文件,存放在项目的Release目录下。需要注意的是,这个生成的DLL是不能直接被Hello China执行的,必须对其进行处理,也就是下一步的工作。

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

我要反馈