本章节目标:通过shell的编写,自己写一个简单的uboot
a).壳与封装
1) shell的英文意思就是壳的意思,在计算机中可以理解为封装。
2)这个封装存在的意义:计算机程序是一个很复杂的东西,为了简化工作量,每个程序的实现和调用必须是分开的,也就是说写函数的是A同学,调用函数的是B同学。B不需要知道A是怎么写的这个程序,只需要调用这个函数来实现自己的功能就行了,shell就是系统留给用户的一个操作接口。
b)操作系统的用户接口
1)操作系统运行起来后都会给用户提供一个操作界面,这个操作界面就叫shell。用户可以通过shell调用操作系统内部的复杂实现。
2)总结:shell就是一个通信接口,它是软件上的名词,如果按照硬件来说可以类比于USB接口,USB和电脑打交道就需要这个硬件shell才能实现。但是很明显,shell不是针对硬件起的名字,而是针对软件的,也就是用户怎么和操作系统打交道?就需要这个shell接口来实现
3)shell是实现用户和操作系统打交道的一个接口。
c)两种shell:GUI和cmdline
1)GUI:图形界面
2)cmdline:命令行界面
d)shell的运行原理
1)由于我们是使用命令行去和系统打交道的,所以我们只分析命令行shell的运行原理。
2)首先有一个标准命令集,用户输入命令后,按下回车后进行解析,然后执行,构成了一个死循环
e)shell举例:uboot、linux的命令行
本节课需要掌握的点:
a)shell就是人机界面
b)这种人机界面有两种:GUI和Cmdline,但是我们只研究cmdline命令行界面这种