An Introduction to the History, Status, Usability, and Future of the GNU/Linux Operating System Version 1.3, February 2002. First Released: May 2001. Deepak, VI Semester BE (CSE), Bangalore INDIA Linux is lee-noohks or ly-nuhks or lee-nuhks. Your wish! • History of Linux • Features Supported Under Linux • A Few Myths About Linux • Unresolved Issues in Linux • Major Supporters of Linux • The Future of Linux • Acknowledgments and Resources on the Internet Linus now works for Transmeta Corp. in California The Beginning The Linux operating system was first coded by a Finnish computer programmer called Linus Benedict Torvalds in 1991, when he was just 21! He had got a new 386, and he found the existing DOS and UNIX too expensive and inadequate. In those days, a UNIX-like tiny, free OS called Minix was extensively used for academic purposes. Since its source code was available, Linus decided to take Minix as a model. In his own words, ‘I wanted to write a better Minix than Minix’. If you run Linux, add your machine at Linux Counter Growing and Growing... In order to encourage wide dissemination of his OS, Linus made the source code open to public. At the end of 1992 there were about a hundred Linux developers. Next year there were 1000. And the numbers multiplied every year. Linux: No of Users Source: The Linux Counter Recent estimates say about 18 million people use Linux worldwide. The effects of the dot-com bust, IT slowdown and global economic recession can be clearly seen. The number of hits for a Linux search typically runs into millions! Linux Today Though Linus never imagined it, Linux quickly became a general tool for computing. People stopped looking at Linux as a toy, and began to think about it seriously. Today there are thousands of applications that can be run on Linux, from Office Suites to 3D games. Hundreds of Linux User Groups the world over discuss ways to make Linux work better. Umpteen number of web sites, and thousands of newsgroups and mailing lists talk about Linux. Bangalore hosts a Linux convention every year, called Bang!inux. Red Hat 7.2 and Mandrake 8.1 are very popular as of now Distributions of Linux In tune with the power-of-choice tradition of Linux, many companies now offer it along with lots of applications. Though the OS is the same, the bundled software do vary from one distribution to another. Red Hat, SuSE, Mandrake, and many other firms sell Linux this way, and their CDs are called distributions. Usually the distributors charge a nominal fee for the media and for technical support in the future. Currently Red Hat and Mandrake seem to be the most popular distributions of Linux. Sidewalk I • Linux is the fastest growing server operating system, with an annual growth rate of 166% in 2000 Source: IDC • In April 2000 29% of embedded application developers decided to use Linux as their host OS in 2001 Source: Electronic Market Forecasters • The top 100 the US spent applications in to touch $200 financial companies in $50 million on Linux 1998. This is expected million by 2003 Source: Evans Marketing Services Linux is is poised poised to to compete compete with with MS MS Linux • 49% of IT professionals think Linux is essential or important for their corporate strategies Source: MERIT The Human Genome Project was completed early with a UNIX system Why Linux is Built Upon UNIX • UNIX has a long history as an operating system • The basic design of UNIX is elegant, highly documented and used • A lot of software is available for UNIX • Linus was very familiar with UNIX Thompson and Ritchie, the creators of UNIX, working on a PDP-11 machine. • The GNU Project, which was (and is) a set of programs written for UNIX-like OSes and are freely available with source code, helped a lot. Once Linux was marginally functional, these applications helped in testing the OS and its subsequent usage by many people Both Jurassic Park and Titanic used UNIX systems for the special effects Features Supported in Linux: True Multitasking • All applications in Linux are preemptively multitasked. The OS handles all scheduling of processes (and kernel threads). No application can hog the resources unless the system administrator specifically defines it as Multitasking under Linux: The number of apps you high-priority. This leads to smoother can run is limited only by the memory you have. performance and better load-balancing • All applications in Linux run in their own private memory space. This means that a poorly-written application cannot tamper with the memory of another application (or the kernel). If an application does try to access memory it doesn't own, it is immediately halted by the operating system, without disturbing any other process on the system Even a single user can have multiple sessions through virtual terminals! Multi-User and Customizable UNIX was designed with the notion that multiple people would be sharing use of the system at the same time. Several people can log into a Linux machine and each of them can run whatever programs they like. UNIX applications are written from scratch with the idea that multiple people will be using them, and each may have entirely different preferences. Many people can use the same application at the same time according to their liking! Linux Machine USER 1 Compile a program USER 2 Talk with another user USER 3 Run a script Amazon, CNN, Google, Hotmail and Yahoo! run on UNIX. Think of the traffic! Easy Remote Administration and DLL Handling • Because of the fundamental design of UNIX, every application can run on one machine and display its interface on another. This is extremely useful for remote administration • Windows allows the use of DLLs (Dynamic Linker Libraries) to modularize applications and reuse code. But version conflicts often arise, which might make some applications or the whole OS useless. Linux also handles DLLs (called shared objects), but it checks the version of DLL each app is asking, and then links the correct version. In Windows, the program may A DLL Goof-up in Windows simply crash Using Linux, you can do wonders with a 486 Efficient Memory Management • Linux is outstanding in the area of memory management. It will use every scrap of memory in a system to its full potential. The Linux kernel occupies just 2 MB, whereas NT How shall I get 64 MB AGAIN for Win 2000? takes 16 MB! • Linux uses a copy-on-write scheme. If two or more programs are using the same block of memory, only one copy is actually in RAM, and all the programs read the same block. If one program writes to that block, then a copy is made for just that program. All other programs still share the same memory. When loading DLLs, this is a major memory saver Linux/Netscape ran 30-40% faster than NT/IE: Memo, Microsoft Corporation Efficient Memory Management (Contd.) Demand-loading is very useful as well. Linux only loads into RAM the portions of a program that are actually being used, which reduces overall RAM requirements significantly. At the same time, when swapping is necessary, only portions of programs are swapped out to disk, not entire processes. This helps to greatly enhance multiprocessing performance. Finally, any RAM not being used by the kernel or applications is automatically used as a disk cache. This speeds access to the disk so long as there is unused memory. On the other hand, memory management is poorest in Windows! Why waste money on upgrades when you can use it with Linux? Sidewalk II Richard Stallman is the founding father of the Free Software Foundation, which aims to code software and give them away for free. One of the pilot projects of the Free Software Foundation is GNU, This goat is the logo of GNU which, admirably, stands for “GNU’s Not UNIX”. Stallman liked UNIX so much that he thought it should be given away for free. The GNU project, started in 1984, has developed thousands of software which do all that the original UNIX tools did, but with a difference: they are much better, cost nothing, and come with the source code. GNU and Linux share a symbiotic relationship. Even today, you can find GNU utilities in any Linux distribution. Stallman, in fact, wants us to call the Linux system as GNU/Linux! Images: gnu.org The Linux ext2 file-system supports up to 4000 GB of data Powerful File System • Linux normally uses its own high-performance file system, which uses disk space much more efficiently, optimizes for speed on reading and writing, and automatically prevents fragmentation. The Linux file-system literally does not need a defragmenter, though one is available. It also sees when programs make errors writing to the disk and automatically prevents them, so there is usually no need to run a disk checker unless you notice a problem • Linux can also read and write all FAT variants (FAT12, FAT32), Windows NT's NTFS, OS/2's HPFS, and many others you've never heard of. Often it can use them faster than their Linux can use your hard disk better native operating system can! Wherever 24x7 uptime and reliability is needed, go for a UNIX system Linux has the Unmatched Stability of UNIX • Linux enforces a strict separation between the kernel and other applications. Most services like mail, file and print serving, web serving and so on are applications, and can usually be changed dynamically. At worst, a specific application may need to be restarted, and not the whole system. Reboots are only for kernel updates and hardware changes.UNIX systems have uptimes in terms of years! • Linux also provides the ability to dynamically increase swap space and then reduce it later without a reboot, unlike Windows, where it grows and grows until a restart MS Word has frozen Most ISPs, Web sites, FTP servers, and mail servers run on UNIX/Linux Inbuilt Networking Support TCP/IP networking and the Internet was originally developed on UNIX systems, and most of the high-power networking in the world is done on UNIX. About 75% of the web servers on the Net run a version of UNIX. Linux is network ready In fact, Linux has the largest market share for the entire Internet, running 25.7% of the news servers, 26.9% of the web servers, and 33.7% of the FTP servers in the world. Apart from extremely fast and reliable networking, dozens of major and minor network services are usually provided when you get Linux. Web servers, file and print servers, ftp servers, NIS servers, IRC servers, news servers, and more are available for free or very little cost. Windows NT borrows many security features from UNIX High Level of Security Linux is a very secure operating system, much more so than Windows 9x, and at least the equal of Windows NT. • Since each application runs in its own protected memory space, it is not possible for a virus to infect another application running in memory. Linux also has file permission structure which greatly Oh, was that you? I thought it was a virus and I deleted the mail. limits the damage a virus can do • Linux is less prone to hacker attacks than most OSes. This is partly because of its design and its open-source nature. Security bugs are fixed very quickly, often within hours! Source: toonshome.com Sidewalk III Linux is emerging as a strong competitor to NT. It has given enough scare to Microsoft, that it circulated a memo on the damaging effects of Open-Source revolution! This table, built by a Microsoft certified NT professional, shows a feature by feature comparison of Linux and Windows NT. Component Operating System Kernel Source Code Web Server Telnet Server POP3 / SMTP Server X-Window Server C / C++ Compilers No. of file systems supported Disk quotas support No. of GUIs Free Online Technical Support Platforms SMP Support Linux 2.x Free, about $49 for a CDROM Yes Apache Yes Yes Yes Yes 32 Yes 4 Yes x86, SPARC, PowerPC, StrongARM Upto 16. Beowulf supported Windows NT Server 4.0 Depends on no. of users: $899 to $3999 No IIS No No No No 4 No 1 No Intel x86, Alpha 2 in Workstation, 4 in Server. No Beowulf It would have cost a firm over $1 billion to develop Red Hat 7.1 ⊗ Linux is open, so insecure √ This might be a valid argument, but thankfully, our world is still a very good place. When programmers find a piece of bug in the source, they quickly try to fix it, rather than capitalize on it. If you hack into a system based on a bug you found in Linux, it is only so long as another guy finds out the bug and fixes it ⊗ Linux is not as nice as Windows √ GUIs like GNOME and KDE make a Linux desktop enviable. Hang on… Sidewalk IV KWord: Part of KOffice, and free File/Web Browser: Just like in Windows A fully-loaded Start Menu Yahoo! Messenger X Multimedia System to play media Screenshot of Red Hat Linux 7.1 under KDE 2.1 taken with GIMP. www.kde.org Why do you want to pay for software when you can get them for free? ⊗ There are not many applications for Linux √ As of today, there are about 15,000 applications built for the Linux platform. You can code in C, C++, Java etc.; listen to music; browse the Web; play an action game; watch a movie; and even modify this slideshow with StarOffice! You can do everything in Linux as in Windows ⊗ Linux does not have a centralized authority √ Linux might be coded by programmers around the world, but there is a group of people headed by Linus who have the ultimate say on it. They decide on the next version of Linux Sidewalk V • XMMS, MP3 Player • Nedit, Text Editor for X Source See Seethe thehuge hugevariety variety for for yourself. yourself. • X-Chat, Chat Client • ApplixWare, Office Suite • XFCE, a GUI for Linux • abcde, CD Encoder • Pan, Robust Newsreader • Gaim, AOL Messenger • Bluefish, HTML Editor • BlueJ, a Java IDE • Gnapster, Napster for Linux • MidGard, a PHP Dev. Suite • Kdevelop, C/C++ IDE • Corel WordPerfect Free!! • StarOffice, from Sun, Free!! • LinuxCAD, CAD for Linux • SciLab, Scientific Package • mtv, MPEG Player • Xplns, See Today’s Stars on PC • Unreal Tournament, Shoot! • VMWare, Run Win apps in Linux! • XShipWars, 3D Space Game The 13 root servers of the Internet all run UNIX ⊗ The various UNIXes are fragmenting into a plethora of incompatible versions √ This was the trend sometime back, but since the past ten years, they all are converging. UNIX systems now broadly adhere to ANSI and POSIX standards, that allow software to be source-compatible across different platforms, ranging from embedded micro-controllers to supercomputers. The X/OPEN standard allows a common desktop across all platforms. On the Intel X86 platform, for example, Linux can run SCO UNIX binaries, and FreeBSD can run Linux binaries. In a nutshell, there is as little a difference as among, say, Windows 3.1, Windows 9X, and Windows NT. Some UNIXes DEC Digital UNIX FreeBSD HP-UX IBM AIX Linux SCO UnixWare SGI IRIX Sun Solaris Linux is the No. 1 threat to Windows: Steve Ballmer, CEO, MS Corp. Linux is not very beginner-friendly Linux can be overwhelming for a new user from Windows. Stop comparing Linux with Windows every once in a while, and you will gradually appreciate Linux. Installing Linux is difficult Installing Linux is really a hard task for a newbie. It is better to keep a guru at hand, since it needs a lot of technical stuff. Coordination lacks among apps in Linux Since so many people have contributed to the operating system, there are instances where an application behaves strangely, or crashes. A bug-report window quickly pops up! Red Hat 7.1 has over 30 million lines of source code, mostly in C There is a lack of online help in Linux Help in Linux is in the form of long technical manuals, and user-friendly documentation has only recently been taken up. Linux is still heavily command-dependent Graphical environments like KDE are under constant development and testing, so commands are the best way to work. Linux does not work on many hardware Most hardware work well in Linux, but a few can be notoriously uncooperative. Motorola SM56 Win-Modem, for example, got Linux drivers only recently. As more firms realise the power of Linux, this won’t be a problem. The complete list can be found here: www.m-tech.ab.ca/linux-biz/ In spite of all these setbacks, Linux has found a large following, from behemoth companies to tech geeks. Here is a short list of major supporters and users of Linux. Click on any logo to visit the company’s Web-site. Final Sidewalk • A Linux distribution has software worth thousands of dollars, for virtually no cost • Linux operating system is reliable, stable, and very powerful • Linux comes with a complete development environment, including compilers, toolkits, and scripting languages • Linux comes with networking facilities, allowing you to share hardware • A wide variety of commercial software is also available • Linux is very easily upgradeable • Supports multiple processors as standard • True multitasking. So many apps, all at once • The GUIs are more powerful than Mac! ac! Mac! beats M Lin beats and Lin Win, and beats Win, Mac beats Mac • Linux utilizes your memory, CPU, and other hardware to the fullest Linux: Best Desktop Computer OS: InfoWorld, 1996 Gates bites Gates Linux bites Linux The past few minutes have talked a lot about Linux. Given all this information, we now have a question before us: Where is Tux the penguin heading, and what is in the future? The world has just begun to understand the freedom inherent in Linux. That is why the uses to which Linux has been put so far are only as a desktop and as a server. But many exciting developments are headed our way. Linux-based routers are a very cost-effective alternative to Cisco routers. Other innovative products that have already arrived are the TV set-top box and the MP3 music player for cars, hardly anyone's mental model of a computer. Linux is all set to make its mark in the future computing industry. Source: NY Times Thanks for your interest. Also read the appendices. http://www.linux.org A definitive Linux portal for all kinds of information http://www.linuxdoc.org The Linux documentation project http://www.unix-vs-nt.org/kirch/ An impartial comparison of UNIX / NT http://www.tir.com/~sorceror/mdlug/mdlug.zip A HTML slideshow on Linux http://www.oreilly.com/catalog/opensources/book/toc.html Open-source essays http://www.cuug.ab.ca/~leblancj/nt_to_unix.html It’s good to migrate to Linux http://www.linuxmall.com/resources/nlm Newbies Linux manual http://www.cs.helsinki.fi/~torvalds/ Linus Torvalds’ home page http://www.ssc.com/lj/index.html Linux Journal is a nice Linux periodical http://www.gnu.org/ Official GNU web-site news://comp.os.linux The Linux USENET newsgroup http://www.geocities.com/netmaniac00/ My Web-site: to check for updates netmaniac00@yahoo.com My e-mail address: comments/feedback