- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
([操作系统课程设计
3100602022
杨云坤Linux系统管理实践与进程通信实现
目 录
Linux系统环境的熟悉与常用操作命令的掌握。
Linux环境下进程通信的实现。(实现父亲母亲-儿子女儿那道题目、缓冲区大小k=5)
1.设计任务描述
2、功能设计
2.1设计思想
2.2数据结构设计
2.3各模块说明
3、函数的调用关系图及各模块的伪码算法
4、测试结果
5总 结
6.源程序
一.Linux系统环境的熟悉与常用操作命令的掌握。
需要让你的虚拟机Guest OS(Linux)能自动识别U盘。
方法如下:
保持焦点在Linux上,插入U盘,这时宿主操作系统Windows会弹出“找到新设备的提示”,然后一步一步的点下一步,结束以后,就可以在linux使用fdisk -l /dev/sdb命令查看到/dev/sdb1。
在虚拟机识别出USB之后,用fdisk -l /dev/sdb或fdisk -l /dev/hdb查看,会看到U盘被识别为sdb1,使用mount命令挂载即可。先在/mnt建一个新的文件夹,例如usb。
则可通过:mount -t vfat /dev/sdb1 /mnt/usb挂载上U盘
卸载使用:umount /dev/sdb1
clear 清空
Ls 列出当前目录下的所有文件
Gcc 编译
fg命令:使一个被挂起的进程在前台执行
jobs命令:显示后台任务的执行情况
格式:jobs [选项] [jobspec…]
kill命令:终止一个进程
格式:kill [-s signal |-p] [-a]pid
crontab命令:用于安装、删除或者列出用于驱动cron后台进程的任务表。然后,该配置由cron守护进程在设定的时间执行
格式:crontab [-u user] 文件
ps命令:查看系统中进程的状态
格式:ps [选项],如ps aux
pstree命令:列出当前的进程,以及它们的树状结构
格式:pstree [选项] [pid|user]
top命令:显示系统当前的进程状况
格式:top [选项]
nice命令:改变程序执行的优先权等级
格式:nice [-n 优先等级][--help][--version][命令]
二.Linux环境下进程通信的实现。(实现父亲母亲-儿子女儿那道题目、缓冲区大小k=5)
1、设计任务描述
操作系统是现代计算机系统中不可缺少的基本系统软件。它管理和控制整个计算机系统中的软硬件资源,并为用户使用计算机提供一个方便灵活,安全可靠的工作环境。
编写程序实现苹果——橘子问题。一个空盘子,只允许放5个水果。爸爸专向盘中放苹果,妈妈专向盘中放橘子,儿子专等吃盘中的橘子,女儿专等吃盘中的苹果。一次只能放一个水果,也只能拿一个水果。
在橘子苹果问题中,盘子为父亲母亲两个进程的共享资源,父亲和母亲之间存在互斥关系,父亲、女儿和母亲、儿子之间存在同步关系。
2、功能设计
2.1设计思想
这是进程同步与互斥问题的模拟,可以把向盘子放或取水果的每一个过程可以转为一个进程的操作,这些进程是互斥的,同时也存在一定的同步关系。通过编程实践时,实际是随机的调用一个进程的操作,而这些进程的操作相当于程序中的函数调用。而计算机在执行时每一个时刻只能执行一个操作,这就是互斥的表现。同步的模拟可以类似于函数调用时的前提关系即先决条件。这样进程同步模拟就完全可以通过函数的调用来实现。
2.2数据结构设计
(1)用一个整型变量semid_empty表示盘子里的可放水果数量,初始值为0,当放水果时semid_empty加1,取水果时减1。当为0时表示盘子已经满,此时若再进行放水果操作,Father()和Mother()进程将处于待状态;当为5时表示盘子为空,此时若进行取水果操作,Son()和Daughter()进程将处于等待状态。
(2)整型变量semid_full1和,semid_full2分别表示盘子中的橘子和苹果数目,初始值为0,其中orange是儿子的私有变量,apple是女儿的私有变量。
(3)用互斥信号量semid_mutex;来解决各个进程之间的互斥问题。
((4)两个放水果进程同时处于等待状态时,若有取水果的操作将自动执行 等待的放水果进程,执行按等待的先后顺序自动调用;取苹果或橘子进程同时
处于等待状态,若有放苹果或橘子的操作将自
您可能关注的文档
最近下载
- 企业吸收合并协议.doc VIP
- 板框压滤机操作规程.doc VIP
- 义务教育版七年级全一册信息科技 第9课 数据传输有新意 教案(表格式).pdf VIP
- 爬山虎的脚PPT课件.pptx
- 康复辅助技术咨询师.pdf VIP
- 北京工业大学822信号与系统2022年真题及答案.pdf VIP
- 全国黄金交易从业水平考试《黄金市场基础知识与交易实务》复习全书【核心讲义+章节练习】.docx VIP
- 电饭煲UL认证零部件检验要求.pdf VIP
- 浙江省桐乡市2025年上半年公开招聘辅警试题含答案分析.docx VIP
- GB30871危险化学品企业位特殊作业安全规范知识考试复习题库(含答案).docx VIP
文档评论(0)