实验五 编程实现自己的shell操作系统实验报告

实验五 编程实现自己的shell操作系统实验报告

ID:46405696

大小:131.00 KB

页数:7页

时间:2019-11-23

实验五 编程实现自己的shell操作系统实验报告_第1页
实验五 编程实现自己的shell操作系统实验报告_第2页
实验五 编程实现自己的shell操作系统实验报告_第3页
实验五 编程实现自己的shell操作系统实验报告_第4页
实验五 编程实现自己的shell操作系统实验报告_第5页
资源描述:

《实验五 编程实现自己的shell操作系统实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、学年第学期操作系统课程实验报告学院:    专业:班级:         姓名:                    学号:              任课教师:                  摘要shell是一个命令处理器(commandprocessor)——是一个读入并解释你输入的命令的程序,它是介于使用者和操作系统之核心程序(kernel)间的一个接口。它是一个交互性命令解释器。shell独立于操作系统,这种设计让用户可以灵活选择适合自己的shell。shell让你在命令行键入命令,经过shell解释后传送给操作系统(内核)执行。Shell

2、是一个管理进程和运行进程的程序。有三个主要功能。(1)运行程序:shell是一个程序启动器。(2)管理输入和输出:shell将进程的输入和输出连接到一个文件或其他的进程。(3)编程关键字:shell;解释器;程序;-7-实验日期:2017年6月12日实验题目实验五编程实现自己的shell实验地点实验目的了解shell的功能和其执行程序的过程,编写自己的shell程序实验内容1.编辑程序psh1.c,编译并执行。#include#include#include#definemaxargs20#def

3、inearglen100intmain(){char*arglist[maxargs+1];intnumargs;charargbuf[arglen];char*makestring();numargs=0;while(numargs0){arglist[numargs]=0;execu

4、te(arglist);numargs=0;}}}return0;}intexecute(char*arglist[]){execvp(arglist[0],arglist);perror("execvpfailed");exit(1);}-7-char*makestring(char*buf){char*cp,*malloc();buf[strlen(buf)-1]='';cp=malloc(strlen(buf)+1);if(cp==0){fprintf(stderr,"nomemory");exit(1);}strcpy(cp,buf);r

5、eturncp;}1.编辑程序psh2.c,编译并执行。#include#include#include#definemaxargs20#definearglen100intmain(){char*arglist[maxargs+1];intnumargs;charargbuf[arglen];char*makestring();numargs=0;while(numargs

6、din)&&*argbuf!='')arglist[numargs++]=makestring(argbuf);else{if(numargs>0){arglist[numargs]=0;execute(arglist);numargs=0;}}}return0;}intexecute(char*arglist[]){intpid,exitstatus;pid=fork();switch(pid){case-1:perror("forkfailed");exit(1);case0:execvp(arglist[0],arglist);perror("

7、excvpfailed");-7-exit(1);default:while(wait(&exitstatus)!=pid);printf("childexitedwithstatus%d,%d",exitstatus>>8,exitstatus&0377);}}char*makestring(char*buf){char*cp,*malloc();buf[strlen(buf)-1]='';cp=malloc(strlen(buf)+1);if(cp==0){fprintf(stderr,"nomemory");exit(1);}strcp

8、y(cp,buf);returncp;}3.测试运行结果(1)分别执行psh1和

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。