00 的进程共享内核描述 Linux 容器与 Linux VM 的边界。Windows 容器同样要考虑内核兼容,但 Windows 进程隔离与 Hyper-V 隔离的前提、实现对象和版本配对并不是 Linux userns/cgroup/OverlayFS 的别名。把 Linux 镜像 index 的 `os=windows` 字符串改一改,更不可能让 ELF 在 Windows 内核上直接执行。

两种隔离与一个版本矩阵

微软官方资料区分 Windows Server containers 的进程隔离,以及借助 Hyper-V 实现的隔离模式。进程隔离复用兼容的主机内核,Hyper-V 模式引入独立的虚拟化边界;宿主/基础镜像版本兼容、镜像架构和运行时支持需要按官方矩阵与真实系统确认。网络驱动、卷和账号语义也不能从 Linux 名称直接套用。

正例要在专用 Windows VM 固定主机与基础镜像版本,运行相同 HTTP 功能的 Windows 构建探针,分别记下隔离模式、进程/VM 状态与请求结果;反例强制不兼容镜像/宿主组合,保存构建与启动错误,不能把 Windows VM 内 Linux 进程的成功冒充 Windows 容器实测。版本表和补跑入口与同功能 Linux 侧源码说明差异。本云端只有 Linux、没有 Windows VM,Windows 编译/运行/兼容全部 NOT_RUN;官方资料只支持边界分析。

现象 查什么 不能推断
同一应用跨 OS 镜像平台与 ABI 同一镜像字节可直接跑
Hyper-V 隔离 guest/宿主版本 Linux namespaces 已启用
镜像拒绝启动 版本配对与隔离模式 一定是网络问题

练习

  1. 先预测相同 tag 下 os=linux 与 os=windows 的制品能否交换运行,再核对 image index 与节点系统。
  2. 在专用 Windows VM 分别预测两种隔离模式对主机/基础镜像版本要求的差异,按所选组合记录成功与错误,而非从 Linux uname 推断。

先修:00:进程与 VM、15:多平台。下一篇:E05:GPU/CDI。

系列总目录:从进程隔离到运行时与编排。

参考资料