Kernel,Shell,Bash 的关系

Kernel (内核)

Kernel 操作系统内核 操作系统内核是指大多数操作系统的核心部分。它由操作系统中用于管理存储器、文件、外设和系统资源的那些部分组成。操作系统内核通常运行进程,并提供进程间的通信。
来自 ——百度百科

内核是大多数操作系统的核心部分,是操作系统必不可少的部分。

但是出于安全性的考虑以及语言的不通,用户无法直接与这一部分进行交互。

Shell (计算机壳层)

在计算机科学中,Shell俗称壳(用来区别于核),是指“为使用者提供操作界面”的软件(命令解析器)。它类似于DOS下的command.com和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。
来自 ——百度百科

Shell可以理解为是在核之外的一层壳,是用户与核进行交互的接口。

因为用户无法与核直接交互,但与核的交互又是不可缺少的。

于是Shell便充当了用户与核的桥梁。

用户在Shell中输入命令,通过这个接口来操作相关的应用程序,然后应用程序再呼叫核心来运行相关工作。

Bash (一种 Unix Shell)

bash 是一个为GNU计划编写的Unix shell。它的名字是一系列缩写:Bourne-Again SHell — 这是关于Bourne shell(sh)的一个双关语(Bourne again / born again)。Bourne shell是一个早期的重要shell,由史蒂夫·伯恩在1978年前后编写,并同Version 7 Unix一起发布。bash则在1987年由布莱恩·福克斯创造。在1990年,Chet Ramey成为了主要的维护者。
来自 ——百度百科

Bash是大多数Linux系统以及Mac OS X默认的Shell,它能运行于大多数类Unix风格的操作系统之上

十分常用普遍又好用

so ...

可以用这样的一张图来表明他们的关系

posted @ 2018-10-02 20:07  Sky_miner  阅读(1775)  评论(1编辑  收藏  举报