2012年5月3日

Linux Namespaces机制——实现

摘要: 由于Linux内核提供了PID,IPC,NS等多个Namespace,一个进程可能属于多个Namespace。为了task_struct的精简,内核引入了structnsproxy来统一管理进程所属的Namespace,在task_struct中只需存一个指向structnsproxy的指针就行了。structnsproxy定义如下:structnsproxy{atomic_tcount;structuts_namespace*uts_ns;structipc_namespace*ipc_ns;structmnt_namespace*mnt_ns;structpid_namespace*pid 阅读全文
posted @ 2012-05-03 14:40 lisperl 阅读(11775) 评论(1) 推荐(4) 编辑

Linux Namespaces机制

摘要: LinuxNamespaces机制提供一种资源隔离方案。PID,IPC,Network等系统资源不再是全局性的,而是属于特定的Namespace。每个Namespace里面的资源对其他Namespace都是透明的。要创建新的Namespace,只需要在调用clone时指定相应的flag。LinuxNamespaces机制为实现基于容器的虚拟化技术提供了很好的基础,LXC(Linuxcontainers)就是利用这一特性实现了资源的隔离。不同container内的进程属于不同的Namespace,彼此透明,互不干扰。下面我们就从clone系统调用的flag出发,来介绍各个Namespace。当调 阅读全文
posted @ 2012-05-03 11:16 lisperl 阅读(25029) 评论(2) 推荐(4) 编辑