百科问答小站 logo
百科问答小站 font logo



如何看待王垠对于内存管理的理解? 第1页

  

user avatar   ling-jian-94 网友的相关建议: 
      

这不是很多很多年前的博文了吗为啥要拿出来提个问题。本质上来说当然没有什么不可行的,你考虑下整个系统使用一个硬件提供的malloc接口,接口不返回数值类型的指针,而是某种符号,内部通过不可见的查找表对应到物理内存;甚至更进一步,是个硬件提供的new,分配出的对象通过硬件GC。也没有什么本质上不可行的对吧?就是把整个操作系统 + 应用程序都灌到JVM这样的虚拟机(或者硬件实现的真机)里面去运行罢了,动态加载外部代码那都是非常成熟的技术了,甚至给不可信的代码提供一层沙箱环境,那也都是可行的嘛。而且原文也说了,LISP Machine不都实际造过嘛。

为什么最终是UNIX胜利?王垠这样的理想主义者发这种梦的时候,总是忘记软件业甚至是整个工业界最重要的原则(至少是之一):

低耦合,高内聚!

能存活几十年的工业品,是不能从一开始就设计成完美的样式的,只有永恒的乌托邦里面的东西,才能从一开始就设计成永恒不变的完美形态,而真实的工业品的设计必须是忒修斯之船:它会在发展的生命周期中,不断更新自己的每一个组件,一次一次地变得焕然一新,才能不断存活下去,不能再替换部件的一天就会是消亡的一天。而一个将硬件、数据存储、操作系统、编程语言、应用程序、内存分配规则全部藕合在一起的设计,必然是牵一发而动全身的,无论最开始的设计多么精巧,到了时代发展的时候,无论哪个方向取得了技术进步,新技术要怎么跟其他部件重新平衡?靠一个总架构师不停修改设计,永远不可能赶上各个方向都有众多团队各自竞争、各自独立发展的效率。

工业和手工业的区别就在这里,手工业可以造出很精巧的产品,但是将每个细小的组件都发展成标准件之后,工业生产的威力将会完全彻底碾压手工业,这对软件业也是完全一样的道理。有的人也许会觉得为了配合标准件做的设计是多余的,但正是这种标准化突破了单个人的界限,让集体的力量得以最大化。




  

相关话题

  迄今为止押宝多核的策略几乎都失败了,为什么开发者如此抵触多核? 
  M1芯片发布后,intel和amd的芯片只能好自为之,还是会降价?或是迎来性能突变? 
  函数调用带来的 cache miss 会对 cpu 性能带来多大的影响? 
  如何评价王垠新博文《我看自动驾驶技术》? 
  大学学习linux是安装虚拟机,还是安装双系统。? 
  如何评价小米 10 系列宣传中手机算力超过笔记本电脑的对比? 
  Java中 栈内存的存取速度仅次于寄存器,如何做到的? 
  如何看待半导体供应短缺将持续到 2022 年? 
  为什么很少听到有人在用 Windows 编程? 
  为什么英特尔酷睿 CPU 已经做到了 12 代,但很多人的笔记本电脑仍在使用 5 代或更早的处理器? 

前一个讨论
上海的真实收入是怎样的?
下一个讨论
韩国现多起疑似接种疫苗后患白血病案例,目前情况如何?这可能是疫苗的副作用吗?





© 2024-05-09 - tinynew.org. All Rights Reserved.
© 2024-05-09 - tinynew.org. 保留所有权利