1 LINUX 操作系统 大作业报告 姓名 XXX 学号 姓名 XXX 学号 姓名 XXX 学号 指导教师 XX 学期 2011 至 2012 学年 第二学期 完成时间 2012 年 01 月 03 日 2 Linux 操作系统设计性实验报告 学 生 姓 名 XXX XXX XXX 学 号 教 学 班 B01 实 验 项 目 模拟命令解释器Myshell的设计 实 验 地 点 H527 实 验 最 后 完 成 时 间 2012 年01 月05 日 必 修√选 修 指 导 教 师 XX 同 组 人 指导教师评语及成绩: 成绩: 指导教师签名: 日期: 打印稿记录 等级 迟交: 抄袭: 一、实验综述 ㈠实验目的及要求 1
实验目的: Linu x /UNIX 系统中,shell 是用户和系统内核沟通的中介,它为用户使用操作系统的服务提供了一个命令界面
用户在命令提示符($或是#)下输入的每一个命令都由 shell 解释,然后传给内核执行
本实验要求用 C 语言编写一个模拟shell 命令解释器,达到如下目的: 用 C 语言编写清晰易读、设计优良的程序; 在编写系统应用程序时熟练使用 man 手册或其他查询命令、系统调用和库函数的工具
学习使用文件操作、进程控制、信号、管道相关程序设计方法和系统调用; 锻炼团队成员之间的交流和合作完成项目能力
实验要求: 设计并实现一个 Linu x 下的的交互式 shell 命令解释器:My Shell;以模拟u nix /linu x 系统下的完善的bash shell 的功能
不需要具备非常完备的shell 功能
主要有如下功能: 初始化环境,主要是默认搜索路径、history 循环数组、作业列表 3 打印命令提示符; 接受、识别和分析命令提示符后输入的命令行,并创建子程序,在子程序中将其转换为相对的系统