发布于 2019-02-03 02:28:13
Linux容器虚拟化是内核特性、名称空间和cgroup的组合,用于在沙箱中运行应用程序。每个应用程序都有自己的文件系统、网络堆栈、pid命名空间等,但运行在与主机相同的操作系统内核上。从主机上可以看到进程正在运行,但从沙箱内部可以看到的只有应用程序。它是为管理服务器端应用程序而设计的。
应用程序虚拟化与容器虚拟化非常相似,对我来说,代码有点模糊。在类似于Flatpak的上下文中,它使用的名称空间和cgroup与容器工具(如docker )相同。关键的区别在于他们为桌面用例设计了工具,这意味着工具被设计成可以用本地GUI访问,而不是像web服务器那样远程运行。
仿真是运行为另一个操作系统设计的程序的一种方式。您通常不能在Linux系统上运行Windows二进制文件,反之亦然,操作系统内核非常不同,二进制格式不同,它们实际上讲的是不同的语言。仿真层提供了一个转换,可以在本地机器上运行非本地程序,而无需创建整个虚拟机并运行单独的操作系统。这与在共享OS内核上运行本地OS应用程序的容器和应用程序虚拟化非常不同。
https://devops.stackexchange.com/questions/6206
复制相似问题