The UNIX
operating system’s development started in 1969, and its code was rewritten in C
in 1972. The C language was actually created to move the UNIX kernel code from
assembly to a higher level language, which would do the same tasks
with fewer lines of code.
Oracle database
development started in 1977, and its code was rewritten from assembly to C in
1983. It became one of the most popular databases in the world.
In 1985 Windows
1.0 was released. Although Windows source code is not publicly available, it’s
been stated that its kernel is mostly written in C, with
some parts in assembly. Linux kernel development started in 1991, and it is
also written in C. The next year, it was released under the GNU license and was
used as part of the GNU Operating System. The GNU operating system itself was
started using C and Lisp programming languages, so many of its components are
written in C.
But C
programming isn’t limited to projects that started decades ago, when there
weren’t as many programming languages as today. Many C projects are still
started today; there are some good reasons for that.
Linux:
Linux is
also written mostly in C, with some parts in assembly. About 97
percent of the world’s 500 most powerful supercomputers run the Linux kernel. It is also used in many personal
computers.
Mobile
:
iOS, Android and Windows Phone kernels are also written in C. They are
just mobile adaptations of existing Mac OS, Linux and Windows kernels. So
smartphones you use every day are running on a C kernel.
Database:
The world’s most popular databases, including Oracle Database, MySQL, MS SQL Server, and PostgreSQL, are coded in C (the first three of them
actually both in C and C++). Databases are used in all kind of systems:
financial, government, media, entertainment, telecommunications, health,
education, retail, social networks, web, and the like.
Embedded
Systems :
Imagine that you wake up one
day and go shopping. The alarm clock that wakes you up is likely programmed in
C. You turn on your TV or radio while you eat your breakfast. Those are also
embedded systems, powered by C. When you open your garage door with the remote
control you are also using an embedded system that is most
likely programmed in C.
All those
devices are embedded systems. They are like small computers that have
a micro-controller/microprocessor inside that is running a program, also
called firmware, on embedded devices.
Why the
C Programming Language Still Used?
There are many
programming languages, today, that allow developers to be more productive than
with C for different kinds of projects. There are higher level languages that
provide much larger built-in libraries that simplify working with JSON, XML,
UI, web pages, client requests, database connections, media manipulation, and
so on.
But
despite that, there are plenty of reasons to believe that C programming will
remain active for a long time.
In
programming languages one size does not fit all. Here are some reasons that C
is unbeatable, and almost mandatory, for certain applications.
The C programming
language doesn’t seem to have an expiration date. It’s closeness to the
hardware, great portability and deterministic usage of resources makes it ideal
for low level development for such things as operating system kernels and
embedded software. Its versatility, efficiency and good performance makes it an
excellent choice for high complexity data manipulation software, like databases
or 3D animation. The fact that many programming languages today are better than
C for their intended use doesn’t mean that they beat C in all areas. C is still
unsurpassed when performance is the priority.
