操作系统实验:进程创建与并发执行分析

需积分: 19 2 下载量 103 浏览量 更新于2024-08-04 1 收藏 338KB DOCX 举报
"《操作系统概要》实验一,操作系统原理实验,进程管理,广东东软学院,学生实验报告,张梦媛老师指导,2022年10月11日,软件工程专业,软工一班,郭奕佳,进程创建,fork()系统调用,进程并发执行,进程互斥,进程树,进程识别码,父进程识别码,Ubuntu操作系统,VMware虚拟机,RS-422串口调试软件,Linux内核版本" 实验内容主要涉及操作系统中的核心概念——进程管理,具体包括进程的创建、并发执行以及进程间的关系。实验要求学生通过编程实践理解这些概念。 1. 进程的创建 实验的第一部分是使用`fork()`系统调用来创建进程。`fork()`函数在调用时会复制当前进程的所有信息,返回值在父进程和子进程中不同,使得一个进程变为两个独立的进程。在提供的参考程序中,父进程显示字符"a",第一个子进程显示字符"b",第二个子进程显示字符"c"。由于进程的并发执行,屏幕上的显示结果可能是"abc"或"acb",这取决于进程调度的顺序。这种现象揭示了并发执行的非确定性。 2. 修改进程输出 实验的第二部分要求修改程序,使每个进程输出一句话而不是单个字符。这样,当多个进程同时输出时,可能会出现交错的现象,进一步体现并发执行的特点。分析结果有助于理解进程间的同步和互斥问题。 3. 进程树的创建 实验第三部分要求创建特定结构的进程树,每个进程需要显示其进程ID(PID)和父进程ID(PPID)。这有助于学生理解进程间的层级关系以及如何通过系统调用来控制进程的创建和关联。 实验原理强调了进程的基本结构,如进程表项、U区、系统区表项和进程区表,以及进程映像和进程树。此外,还涉及了`fork()`、`wait()`、`exit()`等与进程控制相关的系统调用。 实验过程不仅要求学生完成编程任务,还要求他们进行调试、分析结果、设计流程图、回答思考题和总结实验经验。这样的设计旨在加深对操作系统中进程管理的理解,培养问题解决能力,同时提高对并发执行和资源竞争的理解。 实验设备和软件环境包括Ubuntu 64位操作系统、DELL G3电脑、VMware虚拟机、2GB内存、2个处理器核心和20GB硬盘空间,以及RS-422串口调试软件,以适应实验需求。 总结来说,这个实验是操作系统课程中的一个重要实践环节,它通过实际操作帮助学生掌握进程管理的基础知识,体验并发执行带来的现象,并对进程的生命周期和相互关系有更深入的理解。