- 20
- 0
- 约1.68万字
- 约 35页
- 2019-07-01 发布于安徽
- 举报
操作系统实践报告
多进程题目
sh1.c: 实现shell程序,要求具备如下功能
支持命令参数
$ echo arg1 arg2 arg3
$ ls /bin /usr/bin /home
实现内置命令cd、pwd、exit
$ cd /bin
$ pwd
/bin
思路:
说明:首先设置一个死循环模仿shell终端,读取用户的输入,并且根据空格将输入拆分成字符串数组,然后调用excute这个子函数进行处理。
echo
根据数组第一个元素来判断命令是什么,判断出是ehco后,fork一个新的进程,将其后的内容一个个输出出来,并且父进程等待子进程退出后再执行,确保输出在屏幕上时不被打断。
ls读取用户输入并且根据拆分的数组判断出是ls命令后,fork一个新的进程,调用execlp函数将/bin/ls下的ls程序装入子进程并将拆分的数组参数部分传递给ls即可,同样的,父进程等待子进程退出,确保输出在屏幕上不被打断。
cd同样是根据输入并拆分成数组后判断出是cd命令后,fork一个新的进程,然后调用chdir并将拆分数组的参数部分传递给chdir作为实参即可。
pwd
同样是根据输入并拆分成数组后判断出是pwd命令后,fork一个新的进程,然后调用system(pwd)即可,此命令也可以用来验证上面的cd命令是否正确执行。
exit根据用户输入逼格拆分的数组判断出
您可能关注的文档
- 保险公司人才留存问题研究报告.doc
- 编写商业实施计划书范文.doc
- 玻璃幕墙专项施工组织设计.doc
- 玻璃雨棚施工组织设计.doc
- 彩钢房招投标文件.doc
- 场地平整、土方回填施工组织设计.doc
- 成长的烦恼作文指导课堂实录.doc
- 在县委第三巡察组巡察县信访局情况反馈会议上的讲话.doc
- 在全县2026年乡村振兴重点工作推进会议上的讲话.doc
- 在县委第十轮巡察工作动员会上的讲话.doc
- 在XX街道中秋国庆节前安全大排查大起底大整改工作部署会上的讲话.doc
- 在XX区档案馆党建工作会暨重点工作推进会上的讲话.docx
- 在市政协2026年四季度重点工作推进会上的讲话.doc
- 在全市老干部工作年度重点工作推进会上的讲话.doc
- 在县委第十二轮巡察第一巡察组对县人民法院党组巡察整改“回头看”情况反馈会上的讲话.doc
- 在医保合规专项复盘整改会议上的讲话.doc
- 在市委第六巡察组食品安全领域专项巡察情况反馈会议上的讲话.doc
- 在XX街道安全生产工作部署会议上的讲话.doc
- 在医保问题整改落实专题部署会议上的讲话.doc
- 湖北云学联盟2027届高三上学期10月联考 英语+答案.docx
最近下载
- 2026年贵州省中考数学试卷(含答案详解)原版.pdf
- 深度解析(2026年)《YDT 3340-2018基于LTE的车联网无线通信技术 空中接口技术要求》.pptx VIP
- 客运船舶驾驶员浙江省职业技能标准(征求意见稿).pdf VIP
- 2026年地质大队地质找矿职业技能竞赛考试题库(含答案).docx VIP
- 压力容器重量计算表.xls VIP
- 第四课只有坚持和发展中国特色社会主义才能实现中华民族伟大复兴 课件 2026年高考政治一轮复习 必修一.pptx VIP
- 设备计重报价系统-2.xls VIP
- 建筑工程图集 16J908-5:建筑太阳能光伏系统设计与安装.pdf VIP
- 2026版《中华人民共和国审计法实施条例》解读.pptx VIP
- 中国慢性胃炎诊治指南(2022年,上海)解读.pptx
原创力文档

文档评论(0)