一个操作系统可以在概念上分割成两部分:内核(Kernel)以及壳(shell)。 一个壳程序包裹了与硬件直接交流的内核:硬件<->内核<->壳<->应用程序
在有些操作系统上内核与壳完全分开(例如Unix、Linux等),这样用户就可以在一个内核上使用不同的壳;而另一些的内核与壳关系紧密(例如Microsoft Windows),内核及壳只是操作层次上不同而已。