博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

关于shell

Posted on 2017-10-30 11:41  开飞机的贝塔  阅读(167)  评论(0编辑  收藏  举报

操作系统本质上是一个应用程序,他负责硬件资源调度文件系统管理等最底层的工作。

而shell是系统中一种特别的应用程序。之所以特别,是因为用户一切的操作都是经由shell来实现的。

和我们直接进行交互的始终只有shell程序而已。他是一个命令行解析器获取用户的输入,然后执行相关操作

用户和shell的通信除了直接在cli交互之外,另一种方式就是shell脚本

前者好比直接谈话的方式来布置任务;后者好比发布任务清单的方式来布置任务。

 

自用户被创建的那一刻起,系统就为用户配置了一个忠诚的“翻译官”,他就是shell。

此后,我们将自己的意图告诉给shell,让shell来负责其具体的实现。

 

系统调用也是一种程序,unix系统有很多个系统调用。他们就像内核的通讯员,程序想和内核交流必须经过系统调用。

也就是说,程序永远没法直接和内核通信,只能直接和系统调用通信。