|
技术:C++、QT等
摘要:
随着linux系统的普及,越来越多的人在更深入地研究linux,而对于微型linux shell的研究是研究linux的重点。本文对shell的研究包括对其功能的了解,并实现对shell的列表、管道、输入重定向、输出重定向等命令功能,可以比较全面地认识shell解释器,并在shell中执行正确的命令,从而对它的功能、语法等在程序设计中必须用到的知识有了较为清晰的认识,最后通过对各个功能模块的具体分析,编写出正确实现各个功能的代码,从而完成一个简易的shell解释器的模拟。
而且,在嵌入式领域中,硬件资源是有限的,但是需求是无限的。这就意味着们要利用有限的资源来完成各种各样的需求,而嵌入式设计和在传统的PC上编程是有很大差异的,它往往只需要一个庞大程序的很小的一部分就可以满足它的需求,所以我们不得不把一些无用的程序裁剪掉来换取空间。在嵌入式领域中像传统的K shell,C shell,Bourne Shell等大型的shell程序就会使我们的硬件资源捉襟见肘。所以我们要有一个更适合嵌入式系统中使用的shell,这也是我本次设计的另一个目的。
关键词:Shell;程序;设计与实现;嵌入式
目录:
第一章Linux Shell简介 - 2 -
1.1 shell 的定义 - 2 -
1.1.1 UNIX Shell - 3 -
1.1.2 Linux Shell - 4 -
1.2 shell 的历史 - 5 -
1.3 shell的作用 - 6 -
第二章 模拟Linux Shell的设计 - 8 -
2.1 简单shell设计思想 - 8 -
2.2 复杂shell设计思想 - 9 -
2.2.1作业及作业前后调度实现方法 - 9 -
2.2.2 &、bg、fg、jobs、 ctrl+c等信号的思想 - 9 -
2.3管道 - 11 -
第三章 Mini Shell的实现 - 14 -
3.1 关于获取命令的相关函数 - 14 -
3.1.1 fgets()函数 - 14 -
3.1.2 read ()函数 - 15 -
3.2 关于命令判断的相关函数 - 16 -
3.3 编写关于内部命令的相关函数 - 17 -
3.4 外部文件搜索,并执行函数 - 19 -
3.4.1 方法一 exec函数族 - 19 -
3.4.2 方法二glob函数 - 20 -
3.5 前后台作业及调度时涉及的函数介绍 - 20 -
3.5.2部分内部命令实现 - 22 -
3.5.3全局变量定义 - 23 -
3.5.4命令预处理 - 24 -
第四章 模拟 Shell的运行与测试 - 26 -
4.1 简单命令运行与测试 - 26 -
4.1.1用户登录界面 - 26 -
4.1.2简单命令演示 - 26 -
4.2 列表和管道命令运行与测试 - 28 -
4.3 输入、输出重定向命令运行与测试 - 28 -
包含资料:
截图:
百度网盘下载地址(金币充值):
游客,本付费内容需要支付 100金币 才能浏览 支付
|
|