【Linux】02.shell命令及其运行原理

一、概念与功能

广义上的Linux 操作系统分为Linux 内核和Linux 外壳。内核部分就是我们实际的Linux 操作系统,我们称之为核心(kernel)。我们一般用户,不擅长也不能直接使用kernel,而是通过kernel的外壳程序,也就是所谓的shell来与kernel沟通。那么如何理解?为什么不能直接使用kernel?

从技术角度,Shell的最简单定义:命令行解释器(command Interpreter)
主要任务:

  • 将使用者的命令翻译给 kernel 处理。
  • 将 kernel 的处理结果翻译给使用者。

二、注解示例

假如说你是一名大学毕业的程序员,你的老爹是你们的村书记,过年的时候你回到老家,然后你的老爹跟你说:“儿子呀,你看你这也工作也有了,是时候该找个对象了”。你就说:“老爹呀,你儿子我呀,要是让我写个什么程序还行,但是你这让我和女生沟通,我这是真不太擅长啊”。然后你爹就说:“那这样啊,咱们村不有那个王婆嘛,她都撮合成好几对了,明天我把她叫来,让她来给你找对象”。然后第二天王婆就来了,王婆跟你说:“孩子呀,你喜欢啥样的女生呀,跟姨说,姨给你找”。你这时候就说了:“哎呀,姨呀,也不瞒你,其实吧,我从小就喜欢我们隔壁的翠花,你看能不能行啊”。王婆跟你说:“孩子你放心,姨一定尽全力去帮你说啊”。然后王婆就去你家隔壁找翠花去了,跟翠花说:“翠花呀,你看你这也是还没对象吧,你家隔壁的内个小虎他也还没对象呢”,然后巴拉巴拉的把你的近况啥的都说了一遍,然后翠花说了:“哦,他呀,我从上学的时候就不稀罕他”。给你拒绝了,然后这王婆就跑到你家跟你说了这个情况,你就心想“哎呀,也不能放弃呀,我要是多尝试几次就成功了呢!”。然后你就求人家王婆再给你说说,就这么一天天的,给你这说了小十次了,第十次再去的时候王婆发现人家家里有个小男生,俩人正在那里甜蜜这呢,眼瞅着就没戏了啊,然后王婆就心里想“这不行啊,我给这小子说了这多次了还没成,我这金字招牌都快没了呀,这可不行”。然后王婆就找了个实习生,让这个实习生负责你这个的后序,这样成了也还好,不成也不影响王婆的口碑。

上述的例子中 你就是用户,翠花就是kernel,王婆就是shell,而内个实习生就是bash(shell的一种)。

三、对比window

对比windows GUI,我们操作windows 不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的操作(比如启动元神)。
shell 对于Linux,有相同的作用,主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运行出结果,通过shell解析给用户。

相关推荐

  1. Linux02.shell命令及其运行原理

    2024-07-13 01:34:03       24 阅读
  2. linux Shell 命令行-02-var 变量

    2024-07-13 01:34:03       39 阅读
  3. linux Shell 命令行-07-func 函数

    2024-07-13 01:34:03       40 阅读
  4. Linux Shell:`xargs`命令

    2024-07-13 01:34:03       35 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-13 01:34:03       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-13 01:34:03       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-13 01:34:03       58 阅读
  4. Python语言-面向对象

    2024-07-13 01:34:03       69 阅读

热门阅读

  1. RAG的上限在哪里?边界在哪里?

    2024-07-13 01:34:03       22 阅读
  2. 我的大事记

    2024-07-13 01:34:03       20 阅读
  3. 每天一个数据分析题(四百二十八)- 方差分析

    2024-07-13 01:34:03       24 阅读
  4. C++ 函数返回值是void* 使用场景

    2024-07-13 01:34:03       23 阅读
  5. 2974.最小数字游戏

    2024-07-13 01:34:03       21 阅读
  6. ahb 总线的一些思考

    2024-07-13 01:34:03       24 阅读
  7. 级联目标检测:构建高效目标识别的多阶段策略

    2024-07-13 01:34:03       23 阅读
  8. C语言8 数组与字符串

    2024-07-13 01:34:03       21 阅读
  9. 人工智能讲座——深度学习实现行人重识别

    2024-07-13 01:34:03       23 阅读
  10. LeetCode 算法:全排列 c++

    2024-07-13 01:34:03       24 阅读
  11. 云端日历同步大师:iCloud让工作与生活井井有条

    2024-07-13 01:34:03       26 阅读
  12. 简述linux通知链机制

    2024-07-13 01:34:03       25 阅读
  13. 关于如何上传本地文件到Linux主机

    2024-07-13 01:34:03       17 阅读