Shell的设计与实现
技术:C语言等摘要:
Shell的开发与使用是linux操作系统日渐普及的产物。而对于微型linux shell的研究是linux研究的重点。利用微型的shell,不仅可以让用户更容易操作linux,也可以帮助用户理解linux工作原理,同时保护内核的安全性。本文对shell的研究包括对其功能的了解,并实现对shell的列表、管道、输入重定向、输出重定向等命令功能,可以比较全面地认识shell解释器,编写出可以实现的各种功能的具体代码,这样来编写一个简易的linux shell解释器。在本文中所编写的shell是专门用于嵌入式设备的,在此类设备中,往往存储量小,功耗较低,但是对要求很苛刻,所以有一定的难度。
本文的主要内容现先是介绍了一下shell的发展历史、特点和应用前景,紧接着解释shell与嵌入式的关系,大致了解一下linux与安卓在嵌入式开发中的地位。还罗列了shell的开发技术与unix系统编程。最终详细设计了shell的工作原理,并且附上了相关源代码,使得读者有一个大致了解。本系统全程采用C语言与unix系统高级编程开发,由本人独立完成。
本系统对嵌入式开发人员操作linux系统内核与文件系统有较大帮助。
关键词:Shell; 程序; 设计与实现; 嵌入式
目录:
1 绪论 1
1.1研究背景 1
1.1.1shell简介 1
1.1.2shell的发展过程 2
1.2课题研究的目的和意义 3
1.3课题的研究内容 4
2.开发工具和开发环境介绍 5
2.1Ubuntu简介 5
2.2 GCC简介 5
2.2.1GCC编译过程 6
2.2.2GCC常用模式 6
2.2.3GCC常用选项 7
3.本系统所用相关的理论和技术 9
3.1Unix系统高级编程 9
3.2系统采用的编程语言 15
4. 需求分析 18
4.1系统设计目标 18
4.3系统的可行性分析 18
4.3.1技术可行性 18
4.3.2经济可行性 18
4.4.3社会可行性 18
4.2系统的性能需求 18
4.2系统的功能需求 19
5. 概要设计 20
5.1系统的设计目标 20
5.2系统的整体流程 20
5.3系统识别的命令类型 20
5.3.1内部命令 20
5.3.2外部命令 21
5.3.3重定向命令 22
6. 详细设计 23
6.1系统执行步骤 23
6.2保存历史记录数据结构 25
7. MiniShell的实现 28
7.1获取命令解析命令 28
7.2判断命令类型 32
7.3历史命令存储处理 33
7.4管道命令处理 35
7.5后台程序任务处理 37
7.6makefile文件 40
8. 系统测试 42
8.1什么是软件测试 42
8.2编译过程及编译结果 42
8.3运行或测试结果 43
结束语 48
致谢 49
参考文献 50
外文原文 51
中文翻译 57
论文字数:21649
包含资料:
截图:
百度网盘下载地址(金币充值):
**** 本内容需购买 ****
页:
[1]