50 岁的 C 语言,掌控 WindowsLinuxmacOS 等操作系统半边天

Posted C语言编程俱乐部

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了50 岁的 C 语言,掌控 WindowsLinuxmacOS 等操作系统半边天相关的知识,希望对你有一定的参考价值。

诞生于1972年的C语言已经50岁了,目前来看,它还像20岁的小伙一样活力四射,似乎永不会退休,并且正在赋能全世界重量级应用系统的运行。

不久之前,CSDN发布了一篇《C不再是一门编程语言》的观点性文章。作者认为,C已经被提升到一个具有威望和权力的角色,它的统治是绝对和永恒的,以至于它扭曲了开发者与该语言之间的对话方式。

当下,C是编程的通用语言,大家都必须学C,这也导致C不再只是一种编程语言,它成了每一种通用编程语言都需要遵守的协议。

可以看出,在编程语言众多的今天,C语言依然代表着权威。近日,Meta高性能C++数据仓库工程师Daniel发文表示,尽管C语言面世多年,甚至不少人用暮年来形容它,但它依然在为世界编程赋能,并且还将活跃很长一段时间,因为C语言在某些应用中以压倒性优势领先,且无可匹敌。

他列举了C语言是如何渗透到千家万户,影响着世界运行的。对此,笔者对原文进行了编译,与大家共享!

现今存在的很多C语言项目都是几十年前开始的:

    ▶ 开发于1969年的UNIX操作系统,其代码在1972年基于C语言进行了重建,帮UNIX系统代码从汇编转移到更高层次的语言,进而实现用更少的代码完成相同的任务;

    ▶ 开发于1977年的Oracle,其代码也在1983年转向了C语言,Oracle是当下最受欢迎的数据库之一;

    ▶ 发布于1985年的Window 1.0操作系统,尽管源码并未公开,但据说大部分内核代码也是基于C语言构建,还有一部分是汇编;

    ▶ 开发于1991年的Linux,其内核也是基于C语言。Linux在1992年基于GNU重新获得许可,被作为GNU操作系统的一部分使用。GNU系统本身也是使用C和Lisp编程语言构建,所以它的许多组件都是基于C开发。

不少人可能会提出,这些系统都是几十年前的项目,当时的编程语言还不多,可供选择的就更少了。其实不然,C语言不仅仅局限于几十年前的项目,当下不少项目也是基于它启动的。

一、C语言如何驱动世界

编程语言层出不穷,各种高级语言更是如雨后春笋般涌现。但C语言仍然在为全世界的应用系统赋能,下面分享一些被数百万人广泛使用的C语言构建系统。

Windows操作系统

据NetMarketShare统计,Windows操作系统份额常年在90%附近徘徊,服务全球数十亿用户,其内核代码大部分是由C语言构建,还有一部分是基于汇编。

Linux

众所周知,Linux内核主要是由C语言撰写,在世界500台最强大的超级计算机中,约有97%运行的是Linux内核,它也被用于许多个人电脑中。

macOS

Mac电脑操作系统也是由C语言驱动,因为OS X的内核大部分是用C语言编写。Mac中的每个程序和驱动程序,就像Windows和Linux电脑一样,都是在由C语言驱动的内核上运行。

移动设备

iosandroid和Windows Phone的内核也是用C语言编写,它们只是对现有的Mac OS、Linux和Windows内核的移动改编。因此,大家每天使用的智能手机也是运行在C语言之上。

数据库领域

世界上最流行的数据库,包括Oracle、mysql、MS SQL Server和PostgreSQL,都是用C语言构建(其中前三个实际上是C和C++)。

数据库被用于所有类型的系统:金融、政府、媒体、娱乐、电信、健康、教育、零售、社交网络、网络等等。

3D电影

此类应用程序需要高效、快速。它们需要在数秒内进行许多计算和处理大量数据,这样艺术家和动画师生成的电影镜头所需的时间才越短,公司也能节省更多资金。这类大部分应用也都是基于C和C++制作而成。

嵌入式系统

想象一下,某一天你醒来后的行程:唤醒你的闹钟很可能是用C语言编写,然后你用微波炉或咖啡机来做早餐,它们也是嵌入式系统,因此有可能也是基于C语言构建;你在吃早餐时打开电视或收音机,当你用遥控器打开车库门时,也在使用一个很可能是用C语言编程的嵌入式系统。

然后你准备开车外出。如果它有以下功能,也是用C语言编程的。

    ● 自动变速器

    ● 轮胎压力检测系统

    ● 传感器(氧气、温度、油位等)。

    ● 座椅和后视镜设置的记忆。

    ● 仪表盘显示

    ● 防抱死制动系统

    ● 自动稳定控制

    ● 巡航控制

    ● 气候控制

    ● 儿童安全锁

    ● 无钥匙进入

    ● 座椅加热

    ● 安全气囊控制

到商店,停好车,去自动售货机买汽水。那么自动售货机有可能也是基于C构建运行。随后你在商店里买东西,结账,那么收银机也是用C。当你用信用卡付款时?你猜对了:信用卡阅读器也可能是用C语言写的。

所有的这些设备都是嵌入式系统。它们就像小型计算机,里面有一个微控制器/微处理器,在嵌入式设备上运行一个程序,也叫固件。程序必须检测按键并采取相应的行动,同时向用户显示信息。

例如,闹钟必须与用户互动,检测用户正在按什么按钮,有时还检测按了多长时间,并对设备进行相应编程,同时向用户显示相关信息。

例如,汽车的防抱死制动系统必须能够检测到轮胎的突然锁定,并采取行动,在一小段时间内释放刹车上的压力,解除锁定,从而防止失控打滑。

所有这些计算都是由一个编程的嵌入式系统完成的。

尽管不同品牌的嵌入式系统所使用的编程语言可能不同,但由于C语言的灵活性、效率、性能和接近硬件的特点,C语言是开发这些项目的首选。

当下许多编程语言在其预设的用途上都要优于C语言,但这并不意味着就能击败C,当考虑性能优先的时候,C依然是王者。

世界正运行在C语言驱动的设备上,无论你是否意识到,你使用的诸多设备的的确确都用到了C语言。

—————————————

不管你是转行也好,初学也罢,进阶也可,如果你想学编程~

【值得关注】我的 编程学习交流俱乐部【点击进入】

创作打卡挑战赛 赢取流量/现金/CSDN周边激励大奖

以上是关于50 岁的 C 语言,掌控 WindowsLinuxmacOS 等操作系统半边天的主要内容,如果未能解决你的问题,请参考以下文章

50 岁的 C 语言,掌控 Windows/Linux/macOS 等系统半边天!

50 岁的 C 语言,掌控 Windows/Linux/macOS 等系统半边天!

27 岁的 Java,生日快乐!

C语言正在驱动世界

小说脑洞:《四十岁的“女”人》

编译速度谁“最快”?25岁的 C++Builder 还能打