shell,中文开发者一般俗称壳,其相对概念为 core,核。
一个软件最简单粗暴的划分方式,就是将其划分为 shell 与 core,也就是壳与核。
最常见的 shell 有两种,GUI shell、CLI shell,分别用于图形用户界面和命令行界面。
Windows 的壳,默认为 Explorer.exe,是一个 GUI shell
GNU/Linux 的 CLI shell 则丰富很多,一般默认是 sh ,同时还有很多 bash、zsh 之类的替代品,oh-my-zsh 是很多程序员都必装的。
Android 的壳是 com.android.launcher。
harmonyOS 的壳是 com.android.shell。
国内最早的知名换壳软件为 MyIE2,当初被称为国产优秀的基于 IE 内核的多页面浏览器,它把 Opera 首创通过选项卡进行多页面浏览的设计普及到了全球,目前几乎所有浏览器都已采用此设计。由于其特性非常绕口,「基于 IE 内核的」被简单描述为「IE 换壳」,后来该浏览器改名为现在大家熟知的 Maxthon 双核浏览器。
再后来国产浏览器陆续进入了全面套壳 Chromium + IE 的双核时代,在这个阶段,厂商对 Chromium 的修改主要限于壳部分,也有一部分核的修改。
Android 进入国内市场之后,小米所研发的派生版本被命名为 MIUI ,意思就是小米的 GUI。当然市面上还有一些其他的,比如华为的 Emotion UI,命名也是差不多的思路。
所以你懂了吗?所谓套壳就是套 shell、套 GUI,而这个 GUI 是这个厂商自己全新开发或修改而来的。套壳二字的狭义为第三方对壳的二次开发甚至完全替换。广义为在此基础之上对核的改动不大,要保证与原版的基本兼容,改动再大就不能叫套壳了。