内核:
是硬件系统上的第一层系统软件,是操作系统的核心,提供操作系统最基本的功能,负责管理内存,进程,设备驱动,文件和网络系统
内核是操作系统常驻内存的部分
现代操作系统设计中,为减少系统本身的开销,往往将一些与硬件紧密相关的(如中断处理程序、设备驱动程序等)、基本的、公共的、运行频率较高的模块(如时钟管理、进程调度等)以及关键性数据结构独立开来,使之常驻内存,并对他们进行保护。通常把这一部分称之为操作系统的内核。
shell:
顾名思义是“外壳”,是操作系统内核的外壳,负责外界与操作系统内核的交互,是用户和linux内核之间的接口程序
是命令行解释器,接收用户或者应用程序的命令,将其解释给内核,内核处理完将结果返回给用户或者应用程序
UNIX用原始shell,linux用的是bash
还有很多种其它的shell
shell不但可以解析linux操作系统本身的一些命令比如ls,也能解析自己编写的应用程序比如./a.out
而且shell还有自建的shell命令集,比如cd就不在bin这个目录下,而是属于shell本身自带
用户通常通过终端,有时通过文件(即shell脚本)向SHELL进行输入。
终端:
提供命令的输入输出环境,当打开一个终端时候,操作系统会将终端与一种shell关联起来,linux常用的shell是bash