zoukankan      html  css  js  c++  java
  • docker原理与上帝进程

    做个笔记, 先水一会。

    虚拟机指的是: 在软件的层面上通过模拟硬件进行的输入输出。

    docker原理:
    docker就是一个linux系统的进程, 它通过 Linux 的 namespaces 对不同的容器实现了资源隔离,然后上面再跑一层rootfs文件系统
    当容器使用的时候为了单个容器不榨干系统资源,所以就使用cgroup来做控制

    那么下面就很好理解了:

    docker的文件系统分为两层:bootfsrootfs
    bootfs

    包含了bootloader和linux内核。用户是不能对这层作任何修改的。在内核启动之后,bootfs实际上会unmount掉。
    rootfs

    则包含了一般系统上的常见目录结构,类似于/dev, /proc, /bin等等以及一些基本的文件和命令。
    linux上不同版本的问题,docker可以同时运行多个rootfs。

    上帝进程idle

    1.简单的说idle是一个进程, 贴切一点说是系统创建的第一个进程(idle进程由系统自动创建, 运行在内核态 ),其pid号为 0。其前身是系统创建的第一个进程,也是唯一一个没有通过fork()产生的进程, 完成加载系统后,演变为进程调度、交换, idle进程最终调用了cpu_idle()函数。
    2.主处理器上的idle由原始进程(pid=0)演变而来。从处理器上的idle由init进程fork得到,可是它们的pid都为0。
    3.Idle进程为最低优先级。且不參与调度。仅仅是在执行队列为空的时候才被调度。
    4.Idle循环等待need_resched置位。默认使用hlt节能。

  • 相关阅读:
    多线程自动化运维linux的尝试 优化二
    多线程自动化运维linux的尝试 优化一
    多线程自动化运维linux的尝试
    mysql root 没有任何权限
    oracle hint 知多少
    pandas 实战笔记
    ICM issue IcmPlAllocBuf: MpiGetOutbuf failed (rc = 14 (MPI_ESTALE: outdated MPI handle))
    利用python在Oracle数据库中生成密码字典库
    nginx 配置的一些参数
    nginx四层代理
  • 原文地址:https://www.cnblogs.com/chenglee/p/10435616.html
Copyright © 2011-2022 走看看