操作系统进程通信共享内存课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
v .. . ..
河南城建学院
《操作系统》课程设计说明书
设计题目:进程通信
专业:计算机科学与技术
指导教师:邵国金、郭猛、薛冰
班级:
学号:
姓名:
同组人:
计算机科学与工程系
2013年1 月10 日
前言
本设计是基于课程中学到的UNIX系统调用,使用操作系统环境是Red Hat Linux 9,言语开发环境是Linux的GNU C或C++。Linux操作系统是一个向用户开放源码的免费的类UNIX操作系统。它为在校学生学习操作系统课程提供了一个看得见摸得着的范例。对于学生正确理解,掌握操作系统的基本知识具有重要意义。鉴于此,本操作系统课程涉及的实验均在Linux环境下进行。
这就要求大家:
(1)熟悉Linux的操作和开发环境;
(2)具有C语言知识(Linux操作系统大约90%的源码是用C语言编写)。
我们的设计和实验将在Windows xp环境下,基于虚拟机软件VMWare软件进行安装。
学习计算机软件技术,特别是计算机操作系统技术,除了需要刻苦努力外,还需要掌握软件和操作系统的原理与设计技巧。如何学习和掌握操作系统技术的原理与实际技巧呢?除了听课和读书之外,最好的方法恐怕就是在实践中练习。例如,自己设计一个小型操作系统,多使用操作系统,多阅读和分析操作源代码等。但由于我们的条件和学时有限,在理论学习过程中没有给同学们提供更多的实验机会。
基于共享内存的进程通信,通过在两个进程间创建一块共享内存,将共享内存块分为两部分,标示位和数据域。通过实践让我们了解了什么是共享内存通信机制,实现了程序进程间的通信。积极通过合作,完成任务。
目录
一、系统开发环境 ........................................................................................ - 4 -
二、设计目的 ............................................................................................... - 5 -
三、设计题目及要求..................................................................................... - 6 -
四、总体设计 ............................................................................................... - 7 -
1、服务器功能 ....................................................................................... - 7 -
2、客户端功能 ....................................................................................... - 7 -
3、文件读取功能.................................................................................... - 8 -
4、界面显示函数.................................................................................... - 8 -
5、组成框图: ....................................................................................... - 9 -
6.共享内存分配 ...................................................................................... - 9 -
7.总体流程图........................................................................................ - 10 -
五、详细设计 ............................................................................................. - 11 -
1.主函数............................................................................................... - 11 -
2.菜单显示 ........................................................................................... - 11 -
3.服务器端:........................................................................................ - 12 -
4.客户端程序: .................................................................................... - 14 -
5、部分函数介绍.................................................................................. - 15 -
六、调试与测试.......................................................................................... - 17 -
七、执行结果及分析................................................................................... - 18 -
八、源程序清单.......................................................................................... - 20 -
九、心得体会 ............................................................................................. - 25 -