一周技术学习笔记(第67期)-CPU的设计跟开闭原则有关系吗

2022-06-15 17:34:05 浏览数 (1)

你能想到CPU的设计是开闭原则的设计吗

说CPU的设计很符合软件设计的开闭原则,估计一般的同学肯定不会这样意识到。其实我也一样不太可能把它们能够想在一起,并将它们关联起来。

可确实就这样发生了。实际上CPU的设计本身就是朝着开闭去的。

CPU,中央处理器,它要运行指令,这些指令是稳定的。比如加减乘除的计算类指令,读写数据的IO指令。但是,指令序列是变化的,是按照循环,还是按照分支条件呢。这里的指令是“闭”的,指令序列是“开”的。

问题1:指令序列的变化是通过什么实现的呢?

软件。我们编写的软件。

还有一点,CPU通过端口,定义好输入输出规范就可以跟各种设备进行交互,从而实现了电脑的无限扩展能力。这样CPU和外部输入输出设备之间就是一种“开闭”关系。

通过这种开闭的形式,CPU和输入输出设备之间也完全体现了正交性。

一个程序怎么变慢的呢

程序,是作为程序员的我们写出来的,一堆文本格式的代码,被传递到计算机的磁盘上面。这个时候它什么也干不了,就是一个静态的文件。

怎么才能“动”起来呢,是要从磁盘加载到内存中,然后由CPU执行这些代码中的指令序列,这样,程序便运行起来了。

这个过程有什么,加载到内存中,需要IO,需要内存,程序运行起来需要一个线程。

好了,IO、内存、线程,是程序能够运行起来的必备因素。

一个程序怎么变慢的呢。

机器的资源总是有限的,访问一个文件,请求一个数据连接,文件句柄数有限,数据库连接数有限。如果某一时刻的并发数超过了这些限制,就会有线程进入排队等待。等待的线程越来越多,从请求用户的角度来看,响应时间变长,系统变慢。

触动的句子

近期读了一些闲书,过程中觉得有触动的语句,摘抄如下:

冷兵器使得男人更像男人。

所谓真性情,一面是对个性和内在精神价值的看重,另一面是对外在功力的看轻。

人生最糟糕的情形是,活得不开心,又死得不情愿,两边都不落好。

人的精力是有限的,有所为就必有所不为,而人与人之间的巨大区别就在于所为所不为的不同取向。

天才的诞生是一个超越于家族的自然事件和文化事件,在自然事件这一面,毋宁说天才是人类许多世代之精华的遗传,是广阔范围内无血缘关系的灵魂转世,是钟天地之灵秀的产物,是大自然偶一为之的杰作。

他也许不说出来,但心灵的地震仍然在底表之下悄悄发生。

让孩子从小对人生最重大也最令人困惑的问题保持勇于面对的和开放的心态,这肯定有百利而无一弊,有助于在他们的灵魂中生长起一种根本的诚实。

儿时的收集只是一种游戏,与成人的收藏是两回事,后者混合着恋物癖、占有欲和虚荣心。我这么说并无贬低之意,收藏恰恰是这些欲望的最天真无邪的满足方式。

上帝对亚当说:“你是用尘土造的,你还要归于尘土。”

成功只比未成功多坚持了一次。

人的认知是螺旋式发展的,及时自我复盘,总结经验,将自己的错误或者不足之处及时暴露出来,以免将来再犯。

数据是钢铁,分析是铸造。

行遍天下之后,客观而言,杭州的山水若在世界各胜景中排名,或许进不了前二十位。但是,在一个中国人的心中,若这些名字被一一朗诵出来,却会生长出别样的气质,它是“历史的黏性”,是被想象出来的风景。人对世界的记忆,从来是悲欢莫测的命运图像,自然山水仅仅是背景而已。

我认识到,学问不是第一位的,生活本身高于学问,做一个有丰富内心世界的人比做一个学问家更有意义。

----END----

这里记录,我每周碰到的,或想到的,引起触动,或感动的,事物的思考及笔记。不见得都对,但开始思考记录总是好的。

io

0 人点赞