漫画赏析:Linux 内核到底长啥样

我的公众号「码农之屋」(id: Spider1818) ,分享的内容包括但不限于 Linux、网络、云计算虚拟化、容器Docker、OpenStack、Kubernetes、SDN、OVS、DPDK、Go、Python、C/C++编程技术等内容,欢迎大家关注。


接下来我们将为大家解读来自TurnOff.us 的漫画 “InSide The Linux Kernel”,其充分给我们展示了Linux内核究竟长啥样子。

地基

作为一个房子,最重要的莫过于其地基。所以我们也从最重要的地基开始看起:

地基是由一排排的文件柜组成,文件柜里放置着“文件”。左上角,有一只胸前挂着 421 号牌的小企鹅,它表示着 PID 为 421 的进程,它正在查看文件柜中的文件,这代表系统中正有一个进程在访问文件系统。在右下角有一只小狗,它是watchdog ,对文件系统进行监控。

一层(地面层)

接下来我们来看看地基上一层又有什么东西呢。

这一层,最引人瞩目的莫过于中间的一块垫子,众多小企鹅在围着着桌子坐着。这个垫子的区域代表进程表。

左上角有一个站着的小企鹅,显然是一位家长式的人物,不过周围坐的那些小企鹅貌似都不怎么听话。它代表着 Linux 内核中的init进程,也就是我们常说的 PID 为 1 的进程,而桌子上坐的小企鹅都处在wait状态,等待被分配任务。

垫子(进程表)两旁有两只小狗,它会监控小企鹅的状态(监控进程),当小企鹅们不听话时,它就会汪汪地叫喊起来。

在这层的左侧,有一只号牌为 1341 的小企鹅守在门口,门上写着 80,说明这个 PID 为 1341 的小企鹅负责接待 80 端口,也就是我们常说的 HTTP 的端口。小企鹅头上有一片羽毛,这片羽毛大有来历,它是著名的 HTTP 服务器 Apache 的 Logo。喏,就是这只:

向右看,我们可以看到这里仍有一扇门,门上写着 21,但是这扇门看起来似乎年久失修,上面的门牌号都歪了。看起来这个 21 端口的 FTP 协议有点老旧了,目前用的人比较少,以至于这里都没人接待了。

而在最右侧的一个门牌号 22 的门就完成不一样了,居然有一只带着墨镜的小企鹅在守着,看起来好酷啊。为什么要这么酷的一个企鹅呢,因为 22 端口是 SSH 端口,是一个非常重要的远程连接端口,通常通过这个端口进行远程管理,所以对这个端口进来的人要仔细审查。

它的身上写着 52,说明它是第 52 个小企鹅。

在图片的左上角,有一个向下台阶。这个台阶是底层(地基)的文件系统中的,进程们可以通过这个台阶,到文件系统中去读取文件,进行操作。

在这一层中,有一个身上写着 217 的小企鹅,他正满头大汗地看着自己的手表。这只小企鹅就是定时任务(Crontab),他会时刻关注时间,查看是否要去做某个工作。

在图片的中部,有两个小企鹅扛着管道在行走,一只小企鹅可以把自己手上的东西通过这个管道,传递给后面的小企鹅。

跃层

在一层之上,还有一个跃层,这里有很多不同的屏幕,每个屏幕上写着 TTY(这就是对外的终端)。tty是对外沟通的渠道之一,但是不是每个进程都需要 tty,某些进程可以直接通过其他途径(比如端口)来和外部进行通信,所以这只是一个跃层。

 


我的公众号「码农之屋」(id: Spider1818) ,分享的内容包括但不限于 Linux、网络、云计算虚拟化、容器Docker、OpenStack、Kubernetes、SDN、OVS、DPDK、Go、Python、C/C++编程技术等内容,欢迎大家关注。

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值