“操作系统不以 C 开头和结尾,C 不等于整个世界”

2022 年 4 月 15 日 CSDN

整理 | 张仕影        责编 | 郑丽媛
出品 | CSDN(ID:CSDNnews)

众所周知,C 是一种被广泛使用的语言,从操作系统内核到加密算法的编写,到处都在使用 C,它在多个领域发挥着重要作用。不久前,国外一位 Swift 和 Rust 专家 Aria Beingessner 在其文章《 C 不再是一种编程语言》中说,如今 C 不再只是一种编程语言,而成了每一种通用编程语言都需要遵守的协议,它具有绝对的统治地位。

不过近日 The Register 网站的作者 Liam Proven 却在其发表的关于 C 的文章中表示,古往今来有很多不涉及 C 的编程语言和操作系统都发展得不错:“并不是所有东西都基于 C。在 C 出现之前,许多当前流行的商业操作系统就已经出现了,还有一些用新旧语言编写的操作系统,也基本不涉及 C 语言。”


ALGOL 语言


ALGOL(ALGOrithmic Language),计算机发展史上首批清晰定义的高级语言,在20世纪60年代,ALGOL 影响力巨大,是大多数现代指令性语言的鼻祖。

美国 Burroughs 公司曾围绕 ALGOL 高级语言编写操作系统以及应用程序,开创性地设计了一系列大型机,即 Burroughs 大型系统。其中第一台大型机 B5000 于 1961 年推出,所使用的操作系统为 Burroughs 公司在 1916 年引入的 MCP(Master Control Program)大型机操作系统。(MCP 最初是于 1961 年用 ESPOL 语言编写的,而 ESPOL 为 ALGOL 60 的超集。)

在众多商用操作系统中,MCP 是一款为数不多仍然沿用至今的“古老”操作系统,目前主要应用在 Unisys ClearPath/MCP。ClearPath MCP 当前的版本是 20.0,于2021年5月发布。


PASCAL 语言及其“后裔”


Pascal 语言是由瑞士计算机科学家 Niklaus Wirth 在上世纪六十年代末所设计的。Pascal 语法严谨,一出世就受到广泛欢迎,迅速地从欧洲传到美国。Pascal 语言是 Apple Lisa(苹果公司发布的世界首台图形界面计算机)和早期 Mac 开发使用的高级语言,此外最初 Macintosh 操作系统的部分也是从 Pascal 源代码手工翻译成 Motorola 68000 汇编语言的。

不少人眼中的 Pascal 语言是一种并不流行的语言,但实际上 NOI(全国奥林匹克信息学竞赛)将 Pascal 、C 与 C++ 作为竞赛使用的程序设计语言, 同时 IOI(国际信息学奥林匹克竞赛)也将 Pascal 作为三种程序设计语言之一——事实上 Pascal 并没有大家想的那么不受欢迎。

20 世纪 80 年代,Wirth 为操作系统和应用程序专门设计了 Modula-2 语言。目前,世界上已经开发了近百个 Modula-2 编译系统。欧洲、加拿大、澳大利亚等不少大学已经用 Modula-2 代替 Pascal 语言作为计算机科学系本科生的第一门程序设计课。

此外,Wirth 设计的 Oberon 操作系统也具有重要的价值。如今,Oberon 仍有多个项目正在运行中,如 Project Oberon 项目,该项目在基于 FPGA(现场可编程逻辑门阵列)的现代硬件上运行一个现代化的操作系统版本;还有 Native Oberon 项目,在 x86-32 PC 和 QEMU(一款开源的模拟器及虚拟机监管器)下运行。


C 的“后裔”


以上所讲的与 C 并无关联的编程语言还是有些晦涩难懂,下面可以看一看 C 的“后裔”如今发发展如何。

  • C++

首先是 C++。虽然 Linux 之父曾多次表明自己不喜欢 C++ ,还将其批得一无是处:“C++ 是一门很糟糕的语言”、“很多不合格的程序员都在使用它” 、”C++ 最后做出来的就是一堆可怕且难以维护的垃圾”......但 C++ 依旧是目前非常受欢迎的一种语言。由 C 扩展升级而产生的 C++,拥有计算机运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。像是曾经辉煌的 Symbian 系统(塞班公司为手机而设计的操作系统)和目前流行的开源数据库 MySQL 等等,都基于 C++ 语言设计。

  • C#

C# 则是由 C 和 C++ 衍生出来的一种安全稳定、简单优雅的面向对象编程语言,在继承 C 和 C++ 强大功能的同时去掉了一些它们的复杂特性。它凭借其强大的操作能力以及优雅的语法风格等条件成为 .NET(用于构建多种应用的免费开源开发平台)开发的首选语言。C# 是兼顾系统开发和应用开发的实用语言,因此被很多人认为其很有可能成为编程语言历史上的第一个“全能”型语言。

  • Rust

事实上,近几年来有关 C 是否会被 Rust 语言取代的话题一直层出不穷,其中被讨论最多的应该就是 Rust 能否成为继 C 语言之后 Linux 内核的第二官方语言。作为上线时间并不是很久的 Rust 语言目前已经受到了足够的重视,从微软探索将 Rust 作为 C 和 C++ 的安全替代方案开始,Rust 吸引了越来越多的目光:内核维护者表示愿意接受用 Rust 开发 Linux 驱动;AWS(亚马逊 Web 服务)也伸出橄榄枝,宣布赞助 Rust……


“C 不等于整个世界”


虽然 C 的世界是吸引人的,但同时 C 以外的世界也很精彩,作者 Liam Proven 在其文章的最后表示:“我希望这些例子可以说明一点:操作系统不以 C 开头和结尾,C 也不等于整个世界。”

不少阅读完 Liam Proven 文章的网友都表达了自己的一些看法,一部分网友对 Liam Proven 的观点表示赞同:

网友@Jonathan Knight:“我认为,以 C 语言为中心的操作系统观点真的只对年轻人有效。”

网友@bazza:“上世纪60、70年代,在众多操作系统/语言的竞争中必须要有一种获得胜利,只是碰巧它是 C 和 UNIX 。”

也有一部分网友对 Liam Proven 的观点表示怀疑,认为如今再提 ALGOL 和 Pascal 已没有意义:

网友@R Soul:“这篇文章就相当于在鼠疫时代,一个推着手推车的人到处说‘把你的死人带出来,把你的死人带出来’。”

那么,你对于非 C 操作系统之外的世界有什么看法呢?

参考链接:https://www.theregister.com/2022/03/29/non_c_operating_systems/

END



新程序员001-004》全面上市,对话世界级大师,报道中国IT行业创新创造


  
  
    
   
   
     
— 推荐阅读 —
    
    
      
☞对话MySQL之父:代码一次性完成才是优秀程序员
☞无痕 PS、读得懂文字,OpenAI 的二代 DALL·E 惊艳亮相!
☞V 神呼吁宽大处理!以太坊开发者 Virgil Griffith 被判入狱 63 个月

点这里↓↓↓记得关注标星哦~ 

一键三连 「分享」「点赞」「在看」

成就一亿技术人

登录查看更多
1

相关内容

【经典书】图论第四版,180页pdf
专知会员服务
146+阅读 · 2021年7月2日
【经典书】Linux UNIX系统编程手册,1554页pdf
专知会员服务
45+阅读 · 2021年2月20日
【干货书】Linux命令行与shell脚本编程大全,第3版818页pdf
专知会员服务
61+阅读 · 2020年12月30日
【2020新书】Ruby 3 编程: 从小白到专家,598页pdf
专知会员服务
30+阅读 · 2020年12月17日
【2020新书】C语言编程傻瓜式入门,第二版,464页pdf
专知会员服务
62+阅读 · 2020年10月15日
【经典书】C语言傻瓜式入门(第二版),411页pdf
专知会员服务
51+阅读 · 2020年8月16日
【实用书】Python技术手册,第三版767页pdf
专知会员服务
234+阅读 · 2020年5月21日
【电子书】C++ Primer Plus 第6版,附PDF
专知会员服务
87+阅读 · 2019年11月25日
“C 不再是一种编程语言!”
CSDN
0+阅读 · 2022年4月4日
“C不再是一种编程语言”
AI前线
1+阅读 · 2022年4月2日
中国开源贡献已达世界前二!
CSDN
0+阅读 · 2022年2月11日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
Arxiv
0+阅读 · 2022年4月18日
Convergence of the Discrete Minimum Energy Path
Arxiv
0+阅读 · 2022年4月15日
Arxiv
0+阅读 · 2022年4月14日
VIP会员
相关VIP内容
【经典书】图论第四版,180页pdf
专知会员服务
146+阅读 · 2021年7月2日
【经典书】Linux UNIX系统编程手册,1554页pdf
专知会员服务
45+阅读 · 2021年2月20日
【干货书】Linux命令行与shell脚本编程大全,第3版818页pdf
专知会员服务
61+阅读 · 2020年12月30日
【2020新书】Ruby 3 编程: 从小白到专家,598页pdf
专知会员服务
30+阅读 · 2020年12月17日
【2020新书】C语言编程傻瓜式入门,第二版,464页pdf
专知会员服务
62+阅读 · 2020年10月15日
【经典书】C语言傻瓜式入门(第二版),411页pdf
专知会员服务
51+阅读 · 2020年8月16日
【实用书】Python技术手册,第三版767页pdf
专知会员服务
234+阅读 · 2020年5月21日
【电子书】C++ Primer Plus 第6版,附PDF
专知会员服务
87+阅读 · 2019年11月25日
相关基金
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
Top
微信扫码咨询专知VIP会员