 | Linux: Encyclopedia II - Linux - Usability and market share
Linux - Usability and market share
Once viewed as an operating system only computer professionals and aficionados could use, Linux distributions have become user-friendly, with many graphical interfaces and applications.
Its market share of desktops is rapidly growing. According to market research company IDC, in 2002, only 25% of servers and 2.8% of desktop computers were already running Linux. However, argued advantages of Linux, such as lower cost, fewer security vulnerabilities [8] , and lack of vendor lock-in, have spurred a growing number of high-profile cases of mass adoption of Linux by corporations and governments. The Linux market is among the fastest growing and is projected to exceed $35.7 billion by 2008 [9](this statistic is not comparable to capitalised operating systems like Windows - since Linux is free to use).
Linux and other free software projects have been frequently criticized for not going far enough in terms of ensuring usability, and Linux was once considered more difficult to use than Windows or the Macintosh, although this has changed. Applications running within graphical desktop environments such as GNOME and KDE in Linux are very similar to those running on other operating systems. While some very specific application may not be available for Linux, there usually exists a replacement, often of better quality. A growing number of proprietary software vendors are supporting Linux, and open source development for Linux is also steadily increasing. Additionally, proprietary software for other operating systems may be run through compatibility layers, such as Wine. The area of hardware and services configuration is where user experience is most varied. GUI configuration tools and control panels are available for many system settings and services, but editing of plain-text configuration files is often required. On the command shell, many usability hangups from early Unix days generally remain, such as the difficulty in finding some commands, and the inability to undo many operations such as file deletion. Many older programs with text user interfaces (TUI) have wild inconsistencies between them, but they maintain loyal followings.
It used to be easier to find local technical support for Windows or Mac OS than for Linux in some places but with local Linux User Groups or LUGs appearing everywhere this has changed. It is worth noting that an operating system's usability is subjective and dependent on the background knowledge and needs of its users. For example, Gentoo Linux, a source-based distribution, is time-consuming to install, but can be more usable for advanced users than stereotypical beginner-friendly distributions, such as Mandriva or Ubuntu.
Users might have to switch application software, and there may be fewer options, as in the case of computer games. Equivalents of some specific programs may not be available. However, general applications like spreadsheets, word processors, and browsers are available for Linux in profusion.
Most distributions of Linux have two or more means of software installation, and more office and end-user applications now come with an automated installation program. Because of reluctance to change and the fact that many computers still come with Microsoft Windows pre-installed, there has been a slow initial adoption of new desktop operating systems. Linux is past that stage now, with numerous manufacturers installing Linux and many organizations having five or more years experience with Linux - since installation evolved to graphical user interfaces - or Unix, which has been around for decades. Linux is rapidly gaining popularity as a desktop operating system as it is increasingly used in schools and workplaces and more people are becoming familiar with it.
Support for certain new and obscure hardware remains an issue. Though some vendors provide device drivers, many device drivers must be developed by volunteers after the release of the product. Often, this development requires reverse engineering of some sort, as certain manufacturers remain secretive and refuse to provide the hardware or firmware specifications for their products. Deliberately non-portable hardware drivers like Winmodems and Winprinters have been a general problem.
There have been conflicting studies of Linux's usability and cost in the past. Microsoft-sponsored studies such as those by IDC and Gartner have argued that Linux had a higher total cost of ownership (TCO) than Windows. However, Relevantive, the renowned Berlin-based organization specializing in providing consultation to companies on the usability of software and Web services, concluded that the usability of Linux for a set of desktop-related tasks is "equal to Windows XP." Since then, there have been numerous independent studies and articles [10] [11] [12] that show that a modern Linux desktop using Gnome or KDE is on par with or superior to Microsoft Windows.
Linux distributions have been criticized for unpredictable development schedules, thus making enterprise users less comfortable with Linux than they might be with other systems (Marcinkowski, 2003). However, some observers claim that the intervals between Linux distribution releases are no worse, and often better, than the project management "schedule slipping" that occurs with other operating systems and with software systems in general. The large number of choices of Linux distributions can also confuse users and software vendors.
The paper Why Open Source Software / Free Software (OSS/FS)? Look at the Numbers! identifies many quantitative studies of open source software, on topics including market share and reliability, with many studies specifically examining Linux.
See also: Windows vs. Linux
Linux - Installation
In the past, difficulty of installation was a barrier to wide adoption of Linux-based systems, but the process has been made easy in recent years. Many distributions are at least as easy to install as a comparable version of Windows. It is unnecessary to file license numbers and enter them during installation. Also, personal computers that come with Linux distributions already installed are readily available from numerous vendors, including large mainstream vendors like Hewlett-Packard and Dell.
The most common method of installing Linux, supported by all major distributions, is by booting from a CD that contains the installation program and installable software. Such a CD can be burned from a downloaded ISO image, purchased alone for a low price, or can be obtained as part of a box set that may also include manuals and additional commercial software.
Some distributions, such as Debian, can be installed from a small set of floppy disks. After a basic system is installed, more software can be added by downloading it from the Internet or using CDs.
Other distributions, such as Knoppix, can be run directly from a "live CD" running entirely in RAM, rather than installing it to the hard drive. With this, one boots from the CD and can use Linux without making any modification to the contents of the hard drive. Similarly, some minimal distributions, such as tomsrtbt, can be run directly from as little as 1 floppy disk without needing to change the hard drive contents.
Still another mode of installation of Linux is to install on a powerful computer to use as a server and to use ordinary less powerful machines (perhaps without hard drives, and having less memory and slower CPUs) as thin clients over the network. Clients can boot over the network from the server and display results and pass information to the server where all the applications run. A Linux Terminal Server is a single machine to which many clients can connect this way, so one obtains the benefit of installing Linux on many machines for the cost of installing on one. The clients can be ordinary PCs with the addition of the network bootloader on a drive or network interface controller. Variations on this mode include using local drives and computing power to run applications. The cost savings achieved by using thin clients can be invested in greater computing power or storage on the server.
Many distributions also support booting over a network, so an installation on a properly configured machine can be done remotely.
Anaconda, one of the more popular installers, is used by Red Hat Linux, Fedora Core and other distributions to simplify the installation process. It is famous for its ability to automatically partition a hard drive using the Disk Druid utility.
Many distribution companies now are sparing no effort to provide users with advanced, easy and specific installations. Some beginners (especially those familiar with Microsoft Windows and Mac OS) may still feel that making the shift can be hard but many solutions have been created to solve this problem.
Some let the user install Linux on top of their current system. Consider WinLinux, for example. After downloading the installer (more than 100MB), the user can install Linux just like any other Windows application. The software provides all the needed features; it is a real Linux distribution. The difference is that it is not necessary for the user to leave Windows, since Linux is installed to the Windows hard-disk partition. A Linux boot loader will boot the Linux system when the PC is restarted and the user chooses to boot Linux. Similar approaches include coLinux.
Technology of virtual machines (such as Virtual PC or VMware) also enables Linux to be run inside another OS such as Microsoft Windows. The virtual machine software will simulate an isolated environment onto which the Linux system is installed. After everything is done, the virtual machine can be booted just as if it were an independent computer.
Linux - Demonstration
The difficulty in quickly demonstrating Linux on the computer of a potential new user remains still an obstacle, slowing its adoption as a personal computing platform. So-called "live CDs" that simply boot from CD and automatically load the necessary drivers for the user's respective system promise to change that. Linux User Groups or LUGS, still provide the primary face-to-face forum for demonstration of Linux. Commercial exhibitions provide Linux demonstrations to potential new users, especially corporate buyers. Many commercial distributions are hard to install, but with work, allow someone to re-use an old machine to see what the Linux desktop is like. The approach by Knoppix, which runs Linux directly from a CD without disturbing the PC's hard drive, is probably the most successful demonstration tool to date. MEPIS also runs from CD like Knoppix and they both can also be installed onto a PC like any other Linux distribution. Ubuntu also has a separate "Live" version of their distribution which runs from CD. The fastest approach is probably that of Workspot, which uses VNC to provide a free Linux desktop demo online.
Linux - Configuration
Configuration of most system wide settings are stored in a single directory called /etc, while user-specific settings are stored in hidden files in the user's home directory. A few programs use a configuration database instead of files.
There are a number of ways to change these settings. The easiest way to do this is by using tools provided by distributions such as Debian's debconf, Mandriva's Control Center, or SUSE's YaST. Others, like Linuxconf, Gnome System Tools, and Webmin, are not distribution-specific. There are also many command line utilities for configuring programs. Since nearly all settings are stored in ordinary text files they can be configured by any text editor.
Linux - Running Windows applications
There are several ways to run applications written for Microsoft Windows on Linux, with varying levels of success. The popular Wine software, along with the commercial derivatives Crossover Office and Transgaming's Cedega create an application compatibility layer by reimplementing the Windows API inside of Linux. Many Windows programs run on Linux at approximately the same speed using these programs, and in some cases run even faster. Since these programs are written without use of any Microsoft code, they do not require a Windows license. Although compatibility is improving, in many cases week-by-week, applications that make use of non-standard programming practices can experience problems.
A similar alternative to running Windows applications inside Linux is to use the proprietary Win4Lin software, which converts Microsoft's version of the Windows API to run inside Linux rather than reimplementing it from scratch. Since a legal copy of the Microsoft implementation of the Windows API is needed, use of Win4Lin requires a copy of Windows.
A third alternative for running Windows applications within Linux is to use a virtual machine program and run the desired application along with the entire virtual Windows operating system. VMware is a proprietary hardware virtualisation program that can run Windows in this way with near-perfect functionality, however this approach can carry a considerable speed and performance penalty. Full CPU emulators (such as QEMU or the slower counterpart Bochs) can be used, though to run a Windows program these emulators will also require a copy of Windows. Aside from the performance difficulties, virtual machine approaches to running Windows applications cannot integrate Windows programs into the Linux desktop, as they must instead run inside the virtual Windows desktop.
A fourth alternative is to run the applications on a Windows machine but use remote access software such as VNC to view it on the Linux desktop. This is a good solution where applications are unable to be migrated, or an item of hardware such as a dongle, custom decoder card, or some USB devices will only run under Windows. At its simplest one or more people needing occasional access to Windows applications can share remote access to a single Windows PC for that purpose using VNC. In a corporate setting essentially the same can be done using a Citrix server, rdesktop to access a Microsoft Terminal Services server, or with NX technology.
Linux - Programming on Linux
A number of compilers are available for Linux.
The GNU Compiler Collection (GCC) comes with the vast majority of distributions. GCC supports C, C++ and Java (for example by using GCJ) among other languages.
There are also a number of IDEs available for Linux. Some of the most popular are Anjuta, Code::Blocks, KDevelop, NetBeans IDE, Glade (actually a user interface designer), Eclipse, the famous Emacs and Vim.
Another option for linux programming is writing shell scripts. These are applications that are written without the need for compilation of the code. They are interpreted line-by-line as commands entered in the shell.
Linux also integrates well with Python, Perl, PHP and Ruby.
Linux - Portability of Linux
As originally envisioned by Linus Torvalds, Linux was strictly an x86 application. But eventually, people started trying to port it to other platforms, and now Linux is available on many CPU architectures, among them:
- Intel/AMD x86 (the "normal PC")
- Both AMD and Intel versions of "64-bit x86"
- ARM (handhelds, embedded systems)
- Alpha
- Motorola 68K (Sun3, Amiga, Atari, early Mac, Apollo....)
- MIPS (DECstation, SGI Indy....)
- PA-RISC (HP workstations)
- PowerPC (Macintosh)
- IBM System/390
- SuperH (Sega Dreamcast)
- Sparc (Sun4)
Complete distributions exist for most of these architectures, but most distributions focus on the "Intel" PC market.
Linux - Support
Technical support is provided by commercial suppliers and by other Linux users, usually in online forums, newsgroups and mailing lists. GNU/Linux users are often organised in so called Linux User Groups or abbreviated LUG.
The business model of commercial suppliers is generally dependent on charging for support, especially for business users. Companies, which offer a special business version of their distribution, add special support packages and special tools to administrate higher numbers of installations or do administrative tasks more easily.
Other related archives1990s, 1991, 2003, 2004, 2005, 64-bit, 9885 Linux, AMD, Access control list, Amiga, Anaconda, Andrew Tanenbaum, Anjuta, Apache, Ari Lemmke, Australia, AutoZone, BSD, Bash, Berkeley, Berlin, BitKeeper, Bochs, C, C++, CD, Carrier Grade Linux, Cedega, Citrix, Code::Blocks, Comparison of Linux distributions, Constructive Cost Model, Cray XD1, Crossover Office, DaimlerChrysler, Debian, Dell, Eclipse, Emacs, Eric S. Raymond, Espoo, Fedora Core, Finland-Swedish, Finnish, Free Software Foundation, GCJ, GNOME, GNU, GNU Compiler Collection, GNU General Public License, GNU Project, GNU/Linux naming controversy, GPL, Gartner, Gentoo Linux, Git, Glade, Gnome System Tools, Google Video Search, Groklaw, Helsinki University of Technology, Hewlett-Packard, Hurd, IA-32, IBM, IDC, IPA, IPodLinux, ISO image, Intel 386, Internet, Java, July, KDE, KDevelop, Knoppix, LAMP, LGPL, Larry Ewing, Linksys, Linus Torvalds, Linux (washing powder), Linux For You, Linux Format, Linux Journal, Linux Magazine, Linux Mark Institute, Linux User Groups, Linux consolidation, Linux distribution, Linux distributions, Linux kernel, Linuxconf, List of Linux books, List of Linux distributions, List of Unix programs, List of file systems, List of words of disputed pronunciation, LiveCD, MEPIS, MIT License, Mac OS, Mach microkernel, Macintosh, Mandriva, March, MediaWiki, Microsoft Windows, Minix, MySQL, NX technology, NetBeans IDE, Novell, OS-tan, Opterons, PHP, POSIX, PS2 Linux, Palm OS, Perl, PlayStation 2, PlayStation 3, Python, QEMU, RAM, Red Hat, Red Hat Linux, Relevantive, Richard Stallman, Ruby, SCO Group, SCO-Linux controversies, SUSE, September, September 17, Shell account, Simputer, Sun Microsystems, Symbian OS, Terminal Services, The Cathedral and the Bazaar, TiVo, Top500, Transgaming's, Trix, Tux, US, Ubuntu, University of Helsinki, Unix, Unix-like, VMware, VNC, Vim, Virtual PC, Vmlinux, Webmin, Wikipedia, Win4Lin, WinLinux, Windows, Windows API, Windows CE, Windows XP, Windows vs. Linux, Wine, Winmodems, Winprinters, Workspot, X Window System, Xbox Linux, YaST, adoption of Linux, also known as, application, application software, architecture, assembler, asteroid, bootstrapping, coLinux, command line, command line interface, command shell, compatibility layer, compilers, computer, computer architectures, computer games, copyleft, debconf, desktop, desktop environments, developers, developing nations, device drivers, digital video recorder, dongle, embedded systems, emulators, firewalls, firmware, floppy disk, floppy disks, free software, geek, graphical, hacker, handheld devices, hard drive, kernel, lawsuit, libraries, licensing, lilo, live CD, logo, mailing lists, mascot, microprocessors, mobile phones, newsgroups, office suites, online forums, open-source, operating system, partition, penguin, personal computers, personal video recorders, professionals, project management, proprietary, rdesktop, real-time, reverse engineering, routers, servers, set-top boxes, shell, shell scripts, shells, source code, source lines of code, supercomputers, telecommunications, terminal emulator, text editor, text editors, text files, text user interfaces, thin clients, threads, tomsrtbt, total cost of ownership, trademark, trademarked, undo, usability, user-friendly, vendor lock-in, video game console, video game industry, virtual machine, virtual machines
 Adapted from the Wikipedia article "Usability and market share", under the G.N U Free Docmentation License. Please also see http://en.wikipedia.org/wiki |