UNIX 操作系统的开发始于 1969 年, 其代码在 1972 年被重写为 C 语言. C 语言实际上是为了将 UNIX 内核代码从汇编语言转换为更高级的语言而创建的, 它使用更少的代码来完成相同的任务. Oracle 数据库开发于 1977 年开始, 其代码在 1983 年从汇编重写为 C, 成为世界上最流行的数据库之一.
image.PNG
1985 年 Windows 1.0 发布. 尽管 Windows 源代码并不是公开的, 但是它的内核大部分都是用 C 语言编写的, 并且有一些部分在汇编中. Linux 内核的开发始于 1991 年, 也是用 C 语言编写的. 明年, 它是在 GNU 许可下发布的, 并被用作 GNU 操作系统的一部分. GNU 操作系统本身是用 C 和 Lisp 编程语言开始的, 所以它的许多组件都是用 C 编写的. 但是 C 编程并不局限于数十年前开始的项目, 当时没有像今天那样多的编程语言. 许多 C 项目今天仍在启动; 这有一些很好的理由.
9693047-4e3847865e1a0b6c.PNG
世界是如何由 C 驱动的? 尽管高级语言普遍存在, 但 C 继续赋予世界权力. 以下是几百万个被 C 语言编程的一些系统. 微软 Windows 微软的 Windows 内核主要是用 C 语言开发的, 部分汇编语言. 数十年来, 世界上使用最为广泛的操作系统, 占有约 90%的市场份额, 已经由用 C 编写的内核提供支持. Linux 也主要用 C 语言编写, 部分程序集. 全球 500 个最强大的超级计算机中大约有 97%运行 Linux 内核. 它也被用在许多个人电脑中. 苹果电脑 Mac 电脑也由 C 供电, 因为 OS X 内核主要以 C 语言编写. Mac 中的每个程序和驱动程序 (如 Windows 和 Linux 计算机中的程序和驱动程序) 都运行在基于 C 的内核上. 移动 iOS,Android 和 Windows Phone 内核也用 C 语言编写. 它们只是现有 Mac OS,Linux 和 Windows 内核的移动版本. 所以你每天使用的智能手机都在 C 内核上运行. 数据库包括 Oracle 数据库, MySQL,MS SQL Server 和 PostgreSQL 在内的世界上最流行的数据库都用 C 语言编写(其中前三个实际上都是 C 和 C ++). 数据库被用于各种系统: 金融, 政府, 媒体, 娱乐, 电信, 健康, 教育, 零售, 社交网络, 网络等. 3D 电影嵌入式系统想象一下, 你有一天醒来去购物. 唤醒你的闹钟很可能用 C 编程. 然后你用你的微波炉或咖啡机来做早餐. 它们也是嵌入式系统, 因此可能用 C 语言编程. 当你吃早饭的时候, 你打开你的电视或收音机. 这些也是由 C 供电的嵌入式系统. 当您用遥控器打开车库门时, 您也正在使用最可能用 C 语言编程的嵌入式系统.
image.PNG
然后你进入你的车. 如果它具有以下功能, 也是用的 C: 自动变速器轮胎压力检测系统传感器 (氧气, 温度, 油位等) 内存的座位和镜像设置. 仪表板显示防抱死制动器自动稳定控制巡航控制气候控制儿童锁无钥匙进入加热的座椅安全气囊控制你到商店, 停好车, 去自动售货机买苏打水. 他们用什么语言来编制自动售货机? 可能是 C. 然后你在商店买东西. 收银机也用 C 编程. 当你用信用卡支付时? 你猜对了: 信用卡读卡器也可能用 C 编程
image
所有这些设备都是嵌入式系统. 它们就像内置微控制器 / 微处理器的小型计算机, 在嵌入式设备上运行程序, 也称为固件. 该程序必须检测按键并相应地采取行动, 并向用户显示信息. 例如, 闹钟必须与用户进行交互, 检测用户正在按压什么按钮, 有时还要按压多长时间, 并相应地编程设备, 同时向用户显示相关信息. 例如, 汽车的防抱死制动系统必须能够检测轮胎的突然锁定, 并且释放制动器上的压力一小段时间, 解锁它们, 从而防止不受控制的打滑. 所有这些计算都是通过编程的嵌入式系统完成的. 尽管嵌入式系统上使用的编程语言可能因品牌而异, 但由于语言的灵活性, 效率, 性能以及与硬件的亲近性, 因此它们通常以 C 语言编程.
image.PNG
来源: http://www.jianshu.com/p/91e80045c304