这是一篇2018年的帖子,cpu被爆出Meltdown和Spectre漏洞时的。
他认为:
C语言在老处理器PDP-11上是低级语言,是硬件的直接映射;
但在现代处理器上C语言不是低级语言,C语言的抽象机基本串行而且假定是扁平内存,并不天然适合并发。为了提高性能,C的编译器要基于这个抽象机做很多转换和优化工作,处理器也做了很多工作。C语言在这些处理器上不是硬件的直接映射。
结论是C语言与现代硬件的兼容性并不好,但它的历史代码存量太大。有更好的语言或者需要设计更合适的语言以便在现代处理器上能不这么费力地做到更好的性能。
queue dot acm dot org /detail.cfm?id=3212479
--
FROM 221.220.174.*