单核和多进程为什么不矛盾

多进程,即同时运行多个程序。
单核,即处理器在同一时间点,只能运行一个程序。
但是,有的电脑是单核的,确也具备多进程能力。为什么?看一个比喻。

地上有很多庙,比如观音庙。人们去观音庙里祈福。
祈福的人有很多,而观音菩萨只有一个。你也跪,我也跪;你也拜,我也拜;你也求,我也求,他也求。但是观音菩萨听得过来吗?难道人们的祈求信息会像邮件一样,从观音庙发到观音菩萨办事大厅吗?
当然不是,那多世俗,那多神没神样。观音菩萨靠的是:天上一天 == 地上一年。

没错。同理可推出:天上 1 天 ≈≈ 地上 365 天;
可推出:天上 1 分钟 ≈≈ 地上 365 分钟;
可推出:地上 1 分钟 ≈≈ 天上 1/365 分钟 ≈≈ 天上 0.16 秒。

有了这个公式,那么观音菩萨的办事原理就好理解了。
人们祈福的总时长,也就 1 分钟左右,甚至“求菩萨保佑我明年买彩票中一个亿”这种祈求连 10 秒都用不了。什么?你一天求好多遍?你以为观音菩萨的服务器会缺少这种过滤重复请求的机制吗?呵,可怜又无知的凡人。
那我们都按 1 分钟来算,那么观音菩萨耐心听完你的祈求后,才过去 0.16 秒。喝口水的时间也比这长啊,谁一秒能喝好几口水呢。所以观音菩萨听完你的祈求之后,马上听另一个可怜的凡人的祈求。
一分钟大约能处理 365 个可怜的凡人的祈求(证明过程略)。
那么从可怜的凡人的眼光看,观音菩萨竟然同时能听取 365 个人的祈求,但事实上,观音菩萨只有一个。

而 CPU 跟我们人类是一起生活在地上的,没有时间上的优势,但是它有另一个优点:快。
它也许会把一秒分成一万份,第 1 个万分之一运行 QQ,第 2 个万分之一运行微信,第 3 个万分之一运行你的垃圾代码……第 100 个万分之一运行 QQ,第 101 个万分之一运行微信,第 103 个万分之一运行你的垃圾代码……人眼哪看得了那么快,电影商只要一秒放 23 张差不多的图片子,人就以为是连续的了。 这就是单核也能多线程的原理。

题外话。今天好多人说求观音菩萨不灵了,是不是观音菩萨是不存在的、是封建迷信?
如果你单单因为“不灵”就说观音菩萨不存在,那是不应该的,逻辑上讲不通。单单中国就有 14,0000,0000 人口,而观音菩萨也只能同时听取 365 个人的祈求。那么这 365 个人之外的人的祈求就不会被处理。也就是说被处理的概率为 365/14,0000,0000 ≈≈ 0.000026% ≈≈ 0。概率很小。不是也有人的祈求被实现了吗?
求神不如求己,诸位,自己努力。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章