操作系统和shell有什么区别?

时间:2014-09-08 06:30:12

标签: shell operating-system

我知道shell会执行命令提示符中输入的系统命令。但是,它只是那么多的shell。我发现OS和shell的功能非常相似。用户之间的接口都是什么时候OS界面出现以及shell界面何时出现。谢谢提前

2 个答案:

答案 0 :(得分:1)

shell是程序,您可以与操作系统进行交互。

操作系统实现了几个重要的抽象:

  • 文件†
  • 目录†
  • 过程
  • 联网‡
  • 用户

仅引用几个。因此,操作系统是负责将诸如“文件Buckaroo Banzai.mkv”之类的东西翻译成“连接在SATA2连接器上的那个硬盘驱动器上的那一堆字节,我正在通过由Yoyodyne公司制造的芯片42“

现在,使用计算机的操作员需要一个界面来表达订单 “文件”,“目录”,“进程”,“网络”和“用户”实际上发生了一些事情。 shell是这些接口之一,它是UNIX系统的传统接口。还有第二类接口基于图形交互而不是文本交互。着名的例子是Microsoft Windows Explorer,Mac OS X Finder,但早在八十年代末,Atari就拥有了Gem和Amiga the Workbench。我不能不引用托马斯·斯科维尔The Elements Of Style: UNIX As Literature中的那段文字,它对文本和图形界面之间的差异提出了一些重要观点。

当您使用 shell 时,您正在通过 shell 操作系统进行交互,以及它允许​​您运行的各种程序。 shell 操作系统的重要组成部分,它是其界面之一,但它与操作系统本身不同。 / p>

†:阅读“filesystems”

‡:阅读“进程间通信”

答案 1 :(得分:1)

shell只是一个程序。在Unix中,shell可以是任何程序。通常,shell实现某种命令接口(例如,BASH,KSH,CSH)。 shell也可以是提供类似功能的图形用户界面。

shell也可以是将用户限制为某些功能的特定称谓。例如,如果您有销售点系统,您可以配置一个帐户,以便POS名称是shell,所以用户可以做的就是POS东西。

相关问题