河北工业大学操作系统2025 版实验报告实验一 进程控制与描述一、实验目的通过对 Windows 2000 编程,进一步熟悉操作系统的基本概念,较好地理解 Windows 2000 的结构。通过创建进程、观察正在运行的进程和终止进程的程序设计和调试操作,进一步熟悉操作系统的进程概念,理解 Windows 2000 进程的“一生”。三、实验内容和步骤第一部分:Windows 2000 Professional 下的 GUI 应用程序,使用 Visual C++编译器创建一个 GUI 应用程序,代码中包括了 WinMain()方法,该方法 GUI 类型的应用程序的标准入口点。 程序 1-1 Windows 2000 的 GUI 应用程序 也可以利用任何其他文本编辑器键入程序代码,假如这样,例如使用 WORD 来键入和编辑程序,则应该注意什么问题?保存时,将文件保存为扩展名为*.cpp 的 C++源文件。在程序 1-1 的 GUI 应用程序中,首先需要 Windows.h 头文件,以便获得传送给 WinMain() 和 MessageBox() API 函数的数据类型定义。接着的 pragma 指令指示编译器/连接器找到 User32.LIB 库文件并将其与产生的 EXE 文件连接起来。这样就可以运行简单的命令行命令 CL MsgBox.CPP 来创建这一应用程序,假如没有 pragma 指令,则 MessageBox() API函数就成为未定义的了。这一指令是 Visual Studio C++ 编译器特有的。接下来是 WinMain() 方法。其中有四个由实际的低级入口点传递来的参数。hInstance 参数用来装入与代码相连的图标或位图一类的资源,无论何时,都可用 GetModuleHandle() API 函数将这些资源提取出来。系统利用实例句柄来指明代码和初始的数据装在内存的何处。句柄的数值实际上是 EXE 文件映像的基地址,通常为0x00400000。下一个参数 hPrevInstance 是为向后兼容而设的,现在系统将其设为 NULL。应用程序的命令行 (不包括程序的名称) 是 lpCmdLine 参数。另外,系统利用 nCmdShow 参数告诉应用程序如何显示它的主窗口 (选项包括最小化、最大化和正常) 。最后,程序调用 MessageBox() API 函数并退出。假如在进入消息循环之前就结束运行的话,最后必须返回0。运行结果:弹出一个消息框,标题为 Greetings,内容为 Hello,Windows Xp,中间有一个确认按钮。进程对象操作系统将当前运行的应用程序看作是进程对象。利用系统提供的惟一的称为句柄 (HANDLE) 的号码,就可与进程对象交互。这一号码只对当前进程有效。本实验表示了一个简单...