Linux For Dummies. Richard Blum

Чтение книги онлайн.

Читать онлайн книгу Linux For Dummies - Richard Blum страница 12

Linux For Dummies - Richard Blum

Скачать книгу

is developed and maintained by a worldwide team of volunteer and paid programmers, working together over the Internet.

      Linux is great for many reasons, including the fact that the folks who built it from the ground up wanted it to be

       Multiuser: More than one user can be logged in to a single computer at one time.

       Multiprocess: True preemptive multitasking enables the operating system core to efficiently juggle several programs running at once. This is important for providing multiple services on one computer.

       Multiplatform: While Mac OS only runs on Intel CPUs and Windows only runs on Intel and ARM CPUs, Linux currently runs on more than 24 different CPU platforms (hardware types), including 32- and 64-bit Intel-based PCs, Digital/Compaq Alpha, all variants of the Apple Macintosh, Sun SPARC, the Apple iPod, ARM CPUs, and even the Microsoft XBox.

       Interoperable: Linux plays nice with most network protocols (languages) and operating systems, allowing you to interact with users and computers running Microsoft Windows, UNIX, Apple Macintosh computers, and other, more niche groups.

       Scalable: As your computing needs grow, you can rely on Linux to grow with you. The same Linux operating system can run on a tiny electronic photo frame, a desktop computer, or a very large, industrial-strength server system.

       Portable: Linux is mostly written in the C programming language. C is a language created specifically for writing operating system–level software and can be readily ported (translated) to run on new computer hardware.

       Flexible: You can configure the Linux operating system as a network host, router, graphical workstation, office productivity PC, home entertainment computer, file server, web server, cluster, or just about any other computing appliance that you can think of.

       Stable: The Linux kernel (the core of the operating system) has achieved a level of maturity that makes most software developers envious. It’s not uncommon to hear reports of Linux servers running for years without crashing.

       Efficient: The modular design of Linux enables you to include only the components needed to run your desired services. Even older computers can utilize Linux and become useful again.

       Free: To most people, the most intriguing aspect of Linux is the fact that it’s often available free of charge. How (the capitalists murmur) can anyone build a better mousetrap with no incentive of direct monetary return?

      In this chapter, I intend to answer that last question for you. I also hope to paint a picture of the open source software development model that created Linux.

      SO WHERE DID LINUX COME FROM?

      The quickest way to understand Linux is to take a peek at its rich heritage. Although programming of the Linux core started in 1991, the design concepts were based on the time-tested UNIX operating system.

      UNIX was developed at Bell Telephone Laboratories in the late 1960s. The original architects of UNIX, working back when there were few operating systems, wanted to create one that shared data, programs, and resources both efficiently and securely — something that wasn’t available then (and is still sought after now). From there, UNIX evolved into many different versions; its current family tree is so complicated that it looks like a kudzu infestation!

      In 1991, Linus Torvalds was a computer science student at the University of Helsinki in Finland. He wanted an operating system that was like the UNIX system that he’d grown fond of at the university, but both UNIX and the hardware it ran on were prohibitively expensive. A UNIX version called Minix was available for free, but it didn’t quite meet his needs. So, as a computer science student, Torvalds studied Minix and then set out to write a new version himself. In his own words (recorded for posterity on the Internet because this was in an early version of an online chat room), his work was “just a hobby, won’t be big and professional like GNU.”

      To the casual observer (and some corporate IT decision makers), Linux appears to be a freak mutation — a rogue creature randomly generated by anarchy. How, after all, can something so complex and discipline dependent as a computer operating system be developed by a loosely knit band of volunteer computer geeks from around the world?

      Just as science is constantly attempting to classify and explain everything in existence, technology commentators are still trying to understand how the open source approach can create superior software, especially in cases where there is no charge. Often the reasons have much to do with the usual human desire to fill a need with a solution. When a programmer in the Linux world wants a tool, the programmer simply writes one — or bands together with other people who want a similar package, and they write it together.

      GNU who?

      Imagine — software created out of need rather than projected profit. Even though UNIX ultimately became expensive proprietary software, the ideas and motives for its creation were originally based on practical needs. What people usually refer to (in the singular) as the Linux operating system is actually a collection of software tools that were created with the express purpose of solving specific computing problems.

      The speed of Linux's popularity also wouldn’t be possible without the vision of a man whom Steven Levy (author of the book Hackers) refers to as “The Last of the Great MIT AI-LAB Hackers” — in the original sense of the word hacker is someone who is an expert at coding, not the current popular meaning that implies criminal intent. This pioneer and advocate of freedom software is Richard Stallman.

      The Massachusetts Institute of Technology (MIT) has long held a reputation for nurturing the greatest minds in the technological disciplines. In 1984, Stallman, a gifted student and brilliant programmer at MIT, was faced with a dilemma — sell his talent to a company for a tidy sum of money or donate his gifts to the world. He did what we’d all do … right?

      As you may or may not have gathered by this point, widespread and accessible source code is paramount to successful software development. Source code is the term for the human-readable text (as opposed to the unreadable cyber-hieroglyphics in an “executable” file) that a programmer types to communicate instructions to the computer.

      Writing computer programs using code that computers can run directly is an extremely arduous task. Modern computer software is usually written in a human-friendly language and then compiled,

Скачать книгу