What is CentOS, and Why Should You Care?
- Being Linus Torvalds
- The story of Linux
- Things you wanted to know about CentOS but were afraid to ask
CentOS is a particular distribution (aka distro) of the Linux operating system. Let’s look at Linux first to get a sense of that general technology and community, then take a direct look at this particular variation of the open source operating system.
Being Linus Torvalds
Like many major moments in computing or any field, when Linux was introduced, it didn’t seem like that big a deal until years later. On August 25, 1991, Linus Torvalds wrote a simple post in the Usenet newsgroup comp.os.minix. “I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386(486) AT clones,” he wrote in part. “This has been brewing since april, and is starting to get ready.” [sic]
The free OS that Linus was casually announcing would end up becoming a major piece of computing networks worldwide. Suffice it to say that today, Linux is not just a single developer’s hobby.
As the operating system began to take the world by storm, Glyn Moody of Ars Technica became interested in the steps that preceded its initial release. He flew to Helsinski, Finland, in December 1996 to speak with Torvalds at his home, resulting in the story detailed below.
The story of Linux
Linus started attending Helsinki University in 1988, where he was working on a degree in computer science. In 1990, he became familiar with the Unix operating system in one of his classes. The course he took had a cap of 16 students because that was the capacity of the school’s license. Torvalds was immediately drawn to the operating system, feeling that its coding interface was surprisingly user-friendly.
One of the textbooks for the class was Operating Systems: Design and Implementation. The book included source code for the OS Minix, which had become available on the Intel 80386 processor. Linus was very interested in chips and thought the 80386 was the best he had seen from the company.
It sparked a technological leap, in part because he had money from student loans and Christmas. “That’s when I actually broke down,” Torvalds told Moody. “I remember the first non-holiday day of the New Year I went to buy a PC.”
Linus bought his PC in January 1991. However, he couldn’t work with Unix because he didn’t yet have the Minix floppy disks. While he waited, he played Prince of Persia and started running tests on the 80386 chip.
He wanted to know how effectively the computer chip could switch from one process to another. He would run two tasks, with a timer set to alternate between them. One task simply wrote the letter A, while the other wrote the letter B. He was not programming very much at that point because he was getting to know the parameters of the Intel CPU.
As bizarre as it may sound, the bare-bones task-alternating project eventually morphed into the Linux kernel. Torvalds realized that he could change the A and B tasks to emulate a terminal. He had one task that was moving information from a keyboard to a modem, while another one brought data from the modem to the monitor.
“I had keyboard drivers because I obviously needed some way to communicate with this thing I was writing,” Linus explained, “and I had driver for text mode VGA and I wrote a driver for the serial line so that I could phone up the University and read news.” In other words, he was simply gathering information from newsgroups via the modem.
An advantage of drawing from the newsgroups was that the comments therein helped the young programmer to revise and strengthen the developing OS throughout the summer of 1991. Linus also realized he wanted to be able to download, so he programmed a disk driver. He additionally had to create a file system that could draw from the Minix file system for writing and reading during upload and download. Unix is essentially composed of these basic components, Torvalds noted: alternating between processes, drivers for your devices, and the file system.
Linux received its name by accident, really. Linus needed to know the POSIX standards that made systems similar to Unix compatible with one another. These specifications were a bit expensive, according to a professor at the university, Ari Lemmke. However, Lemmke said he was actually focused on operating systems and kernels himself.
“He had this small area on [the FTP server] ftp.funet.fi, and he said: ‘[H]ey, I’m putting a directory aside for you,” said Torvalds. “So he created the /pub/os/linux directory.”
Linux was the name Linus had given the project while it was in initial development, but he never intended for that to be the name of the OS when it was released publicly. He feared people would think he was arrogant. He wanted to instead called it Freax for Free Unix. Lemmke saved it instead under the work-in-progress name Linux, and it simply moved forward under that heading.
The first version of the OS was released via email to some contacts from the newsgroups. Torvalds rushed that version to get something up on the FTP site to which he had access. The next version, which he announced via the Minix newsgroups, represented a vast improvement.
Still, the original base of users was miniscule. “I don’t know how many people got [this first public version in comp.os.minix],” Linus commented. “[P]robably 10, 20, this kind of size.”
Things you wanted to know about CentOS but were afraid to ask
Now let’s look down the line at CentOS, one of the most prominent offspring of Linux.
Known for its stability, consistency, easy-to-use administration, and straightforward replication, this flavor of the open source OS was created as a spinoff of Red Hat Enterprise Linux (RHEL).
Beyond the OS itself, the CentOS Project – the entity that manages development of the platform – serves an organizational role by providing resources so that other groups can more easily develop tools based on the CentOS system.
CentOS, which was first announced in March 2004, is community-developed, based on source code released at no cost by Red Hat. Part of its grounding is that it should maintain compatibility with RHEL. The OS is free to download, use, and make available to others.
The community consists of a core development team and users ranging from casual Linux fans to corporate system administrators.
The basic idea behind the CentOS Project is to give people a strong system for open source groups to use and extend. The framework can be utilized by hosting companies and for processing of scientific data, for instance. Organizations are able to place their programs on a reliable platform.
The CentOS Governing Board consists of original project members and Red Hat personnel, all of whom help with development of the ecosystem.
The Project was designed in a similar manner to the esteemed Apache Foundation. “A governing board… oversees various semi-autonomous Special Interest Groups or SIGs,” notes the CentOS site. “These groups are focused on providing various enhancements, addons, or replacements for core CentOS Linux functionality.”