Реферат: Linux 2 Essay Research Paper Table of

? Red Hat LINUX – UNIX for Windows users. This is the easiest transition into the UNIX world you can possibly hope for if you’re a Windows user. Red Hat attempts to provide exceptional functionality and stability while keeping the system relatively easy to use and graphically oriented. Make no mistake, you will still have to learn about UNIX and the command line, but you will at least have something up and running by the time you are ready to hit the books.

? Slackware LINUX – UNIX for UNIX hackers. Slackware, released several times per year, loves to provide cutting edge and beta applications and system code, and really gives that “get your hands dirty” feel. Don’t be confused by its insider attitude, however. Slackware is very complete and can provide a serious platform for beginners and migrating Windows network users. Slackware simply requires a little more elbow grease and study to get going. Once going, Slackware “feels” much more like UNIX than does Red Hat.

? Caldera OpenLINUX – UNIX for business guys. If you’re afraid that your boss won’t like seeing LINUX on your desktop, and you have decided against Red Hat for one reason or another, Caldera’s OpenLINUX is the next logical choice. OpenLINUX is built by Caldera from the ground up for the business community; OpenLINUX often includes an office suite and telephone support. OpenLINUX also comes in several versions, from a small version for desktops to a big, ugly version for network servers.

? Debian GNU/LINUX – UNIX for purists. Debian GNU/LINUX is a sort of spiritual operating system, and both its website and its distribution remind me of those of the more “official” UNIXes like the *BSD projects. If you are interested in LINUX, but can’t loose the hang-up about LINUX not being the true and official UNIX, maybe you’ll feel a little more at ease using Debian GNU/LINUX.

Performance

Many benchmarks have been conducted by independent organizations, pitting LINUX against Windows NT and against the various flavors of UNIX. Apart from one study that is discussed later in this section, it appears that LINUX quite consistently beats NT not only on single-processor machines, but also on multi-processor machines on which NT is expected to scale better on account of its multi-threaded architecture. LINUX seems able to deliver good performance even with “heavyweight” processes instead of the “lightweight” threads that NT uses. Process forking in LINUX is particularly efficient, almost obviating the need for threads. LINUX also narrowly beats Solaris on its home ground, SPARC hardware, albeit only single-processor SPARC machines. UNIX systems, LINUX included, treat graphics as a user-level application that can be optionally run. Reasonably, sophisticated graphical interfaces exist for LINUX, but these are not tightly integrated with the operating system kernel. They can be “switched off” when not required. On servers, graphics capability is an unnecessary overhead most of the time. Typically, on UNIX servers, LINUX included, the graphical interface is invoked only when the system is being administrated, and turned off at all other times, delivering a significant performance boost to the system, because graphics is a very resource-intensive capability. The Windows design, by contrast, suffers from an overly tight integration of the graphics subsystem with the kernel (unsurprising in view of its desktop roots), and this design model will forever reduce performance in its role as a server operating system. Perhaps LINUX will lose its slim performance advantage against Solaris when it acquires more high-end features and grows in size. Time will tell. However, the constant fine-tuning of the kernel by a worldwide group of expert systems programmers could continue to give LINUX a performance lead even in future. It will be an interesting battle to watch. In April this year, a benchmark conducted by a company called Mindcraft reported that Windows NT with Microsoft’s IIS (Internet Information Server) performed 2.5 to 3.7 times faster than LINUX as a Windows fileserver (running Samba) and as a webserver (running Apache). This is somewhat surprising, because it is contrary to what several independent testers have found in the past, including Sm@rt Reseller On-line. Subsequent information on the benchmark found that the NT machine used was highly tuned and optimized for the tested load, while the LINUX machine was not, a fact later admitted by Microsoft. It was also discovered that the benchmark was sponsored by Microsoft, and was not as “independent” as it was made out to be. (Microsoft still sports these figures, though). These facts therefore put the results under a cloud. For now, rather than debate the legitimacy of the Mindcraft benchmark, it is best that you design and conduct one yourself, tailoring it to your situation. After all, not everyone runs servers that are as high-end as that used in the benchmark. Microsoft admitted after internal testing that on the same hardware, Netscape Navigator on LINUX was 30-40% faster than Internet Explorer on Windows NT. “Benchmarking”, of course, ranks with lies, damned lies and statistics, but from a variety of sources, the impression one gets is that LINUX is one of the leanest and fastest operating systems available. With the new kernel (version 2.2), it has reportedly even drawn level with the ultrafast FreeBSD. Nevertheless, the LINUX vendors need to submit formal SPEC or TPC benchmark figures; otherwise, this sort of controversy could keep arising. Incidentally, the TPC benchmarks have a price/performance parameter, and LINUX should do very well on that!

Usability

Users accustomed to the friendly graphical interfaces of Windows and the Mac would reasonably balk at having to type commands in an “arcane syntax”. Nevertheless, things are changing fast. There are two graphical desktop environments for LINUX. KDE (’K’ Desktop Environment) is the slightly more mature one, and the main criticism heard about it these days is that it’s too “clean” and “corporate”. Gnome is a more fun interface that allows users to customize it ad infinitum. Neither interface is yet as polished and complete as the Windows or Mac desktops. However, they have developed to their current state in an amazingly short time (See screenshots located at the back of this document). Critics of LINUX must remember that the earliest versions of Windows were eminently forgettable, and it was only with version 3.1, appearing sometime in 1993, that Windows became usable. It took more than another 2 years for Windows to achieve its current levels of usability in the form of Windows 98. Given the current status of both LINUX desktop projects and their tremendous momentum, it seems reasonable to expect that this argument about LINUX not having a friendly graphical interface will wither away by the end of 1999. Besides, to turn the user-friendliness argument around, a command-line is an excellent alternative to a GUI in many situations. Even with an extremely friendly GUI, a user may find certain operations difficult to express with a graphical metaphor, for instance, “pimping” I meant piping the output of one program to the input of another one. The powerful commands that can be chained together make the LINUX command line a very productive environment. Scripting is another very powerful UNIX mainstay, an area where predominantly GUI-based systems like Windows and the Mac are notoriously weak. The DOS batch files of Windows are pitifully inadequate compared to the basic UNIX shell script, while Applescript comes somewhat closer. Neither can match the breadth and power of LINUX scripting languages like Perl, Python, Tcl and Guile. That may explain why these languages are now being ported to Windows. It remains to be seen whether Windows 2000, with its promised Active Scripting using Visual Basic, brings Windows up to this level. Ironically, with a graphical environment very similar to Windows or the Mac, LINUX’s command-line and scripting interface will perhaps soon emerge as a major selling point for advanced users. Windows and Macintosh treat all users alike, irrespective of skill level, and do not allow users to acquire more control over their machines with increasing experience. UNIX and LINUX systems, on the other hand, “scale” extremely well with experience, rewarding advanced users with dramatically greater productivity. Therefore, the argument that LINUX has no friendly interface is now clearly untrue. The challenge for LINUX now is to develop graphical metaphors for its powerful command-line constructs as well. Piping and redirection through drag-and-drop, visual scripting, graphical representation of the powerful UNIX “file” abstraction, and other innovations can push the LINUX interface beyond the reach of Windows and Macintosh, because they lack the underlying architecture to support such visual representations.

Features

LINUX supports features found in other implementations of UNIX, and many which are not found elsewhere. LINUX is a complete multitasking, multi-user operating system, as are all other versions of UNIX. This means that many users can log into and run programs on the same machine simultaneously. The LINUX system is mostly compatible with several UNIX standards (like if UNIX has standards) at the source level, including IEEE POSIX.1, UNIX System V, and Berkeley System Distribution UNIX. LINUX was developed with source code portability in mind, and it is easy to find commonly used features that are shared by more than one platform. Much of the free UNIX software available on the Internet and elsewhere compiles under LINUX right out of the box . In addition, all of the source code for the LINUX system, including the kernel, device drivers, libraries, user programs, and development tools, is freely distributable. Other specific internal features of LINUX include POSIX job control (used by shells like csh and bash), pseudoterminals (pty devices), and support for dynamically loadable national or customized keyboard drivers. LINUX supports virtual consoles that let you switch between login sessions on the same system console. Users of the screen program will find the LINUX virtual console implementation familiar. The kernel can emulate 387-FPU instructions, and systems without a math coprocessor can run programs that require floating-point math capability. LINUX supports various file systems for storing data, like the ext2 file system, which was developed specifically for LINUX. The XENIX and UNIX System V file systems are also supported, as well as the Microsoft MS-DOS and Windows 95 VFAT file systems on a hard drive or floppy. The ISO 9660 CD-ROM file system is also supported.

LINUX provides a complete implementation of TCP/IP networking software. This includes device drivers for many popular Ethernet cards, SLIP (Serial Line Internet Protocol) and PPP (Point-to-Point Protocol), which provide access to a TCP/IP network via a serial connection, PLIP (Parallel Line Internet Protocol), and NFS (Network File System). The complete range of TCP/IP clients and services is also supported, which includes FTP, telnet, NNTP, and SMTP. The LINUX kernel is developed to use protected-mode features of Intel 80386 and better processors. In particular, LINUX uses the protected-mode, descriptor based, memory-management paradigm, and other advanced features. Anyone familiar with 80386 protected-mode programming knows that this chip was designed for multitasking systems like UNIX. LINUX exploits this functionality. The kernel supports demand-paged, loaded executables. Only those segments of a program, which are actually in use, are read into memory from disk. In addition, copy-on-write pages are shared among executables. If several instances of a program are running at once, they share physical memory, which reduces overall usage. In order to increase the amount of available memory, LINUX also implements disk paging. Up to one gigabyte of swap space may be allocated on disk (up to eight partitions of 128 megabytes each). When the system requires more physical memory, it swaps inactive pages to disk, letting you run larger applications and support more users. However, swapping data to disk is no substitute for physical RAM, which is much faster. The LINUX kernel also implements a unified memory pool for user programs and disk cache. All free memory is used by the cache, which is reduced when running large programs. Executables use dynamically linked, shared libraries: code from a single library on disk. This is not unlike the SunOS shared library mechanism. Executable files occupy less disk space, especially those, which use many library functions. There are also statically linked libraries for object debugging and maintaining complete binary files when shared libraries are not installed. The libraries are dynamically linked at run time, and the programmer can use his or her own routines in place of the standard library routines. To facilitate debugging, the kernel generates core dumps for post-mortem analysis. A core dump and an executable linked with debugging support allows a developer to determine what caused a program to crash.

Cost

LINUX is a freeware or open source software and thus is free, which is to say that it can be obtained at no cost. Several different distributions of LINUX are available on the Internet for download. No password is required for access, and no registration is required after downloading. There are no “nag” screens begging you to pay for it. It is not crippled in any way, nor is it limited to any particular kind of use. You can use it at home, at school, in your business. You can install it as many times on as many computers as you like, and you can legally make copies of it and give them to friends and colleagues (or even sell copies if you wish). LINUX is also sold commercially on CD-ROM via Internet, mail order, and retail stores. Commercial distributions usually include multiple CD-ROMs, a printed installation manual and/or user’s guide, a bootable floppy disk to help with the installation, 30 days or more of technical support via email or other means, and sometimes extra commercial programs that are not available in the download edition. The cost is normally in the range of $30-$99. By comparison, a retail copy of Windows 98 costs about $189. Judging by the price difference, you might think that Windows 98 has something that LINUX lacks. The truth is just the opposite. Windows 98 has built-in networking software, a web browser, a basic text editor, and a couple of games. Did I leave anything out? LINUX comes with built-in networking software, 2 or more web browsers, half a dozen text editors, over 20 games, a World Wide Web server, an FTP server, an email server, programming environments and compilers allowing you to write programs in C, Pascal, PERL, Python, BASIC, Fortran, and probably other programming languages that even I have never heard of. Of course, that is just the short list.

System Requirements

One of the main issues when installing software is to meet or exceed the minimum hardware requirement. LINUX supports more hardware than some commercial implementations of UNIX. Below is a detailed summary of the supported hardware requirement.

Motherboard and CPU requirements – LINUX currently supports systems with the Intel 80386, 80486, or Pentium CPU, including all variations like the 80386SX, 80486SX, 80486DX, and 80486DX2. Non-Intel clones work with LINUX as well. LINUX has also been ported to the DEC Alpha and the Apple PowerMac. If you have an 80386 or 80486SX, you may also wish to use a math coprocessor, although one isn’t required. The LINUX kernel can perform FPU emulation if the machine doesn’t have a coprocessor. All standard FPU couplings are supported, including IIT, Cyrix FasMath, and Intel. Most common PC motherboards are based on the PCI bus but also offer ISA slots. This configuration is supported by LINUX, as are EISA and VESA-bus systems . IBM’s MicroChannel (MCA) bus, found on most IBM PS/2 systems, is significantly different, and support has been recently added.

Memory requirements – LINUX requires very little memory, compared to other advanced operating systems. You should have 4 megabytes of RAM at the very least, and 16 megabytes is strongly recommended. The more memory you have, the faster the system will run. Some distributions require more RAM for installation. LINUX supports the full 32-bit address range of the processor. In other words, it uses all of your RAM automatically

Hard drive controller requirements – It is possible to run LINUX from a floppy diskette, or, for some distributions, a live file system on CD-ROM, but for good performance you need hard disk space. LINUX can co-exist with other operating systems – it only needs one or more disk partitions. LINUX supports all IDE and EIDE controllers as well as older MFM and RLL controllers. Most, but not all, ESDI controllers are supported. LINUX also supports a number of popular SCSI drive controllers. This includes most Adaptec and Buslogic cards as well as cards based on the NCR chip sets.

Hard drive space requirements – Of course, to install LINUX, you need to have some amount of free space on your hard drive. LINUX will support more than one hard drive on the same machine; you can allocate space for LINUX across multiple drives if necessary. You could run a system in 20 megabytes of disk space. However, for expansion and larger packages like X, you need more space. Realistic space requirements range from 200 megabytes to one gigabyte or more.

Monitor and video adaptor requirements – LINUX supports standard Hercules, CGA, EGA, VGA, IBM monochrome, Super VGA, and many accelerated video cards, and monitors for the default, text-based interface. In general, if the video card and monitor work under an operating system like MS-DOS, the combination should work fine under LINUX.

Miscellaneous hardware – LINUX also support devices like a CD-ROM drive, mouse, and sound card.

Mice and other pointing devices – Typically, a mouse is used only in graphical environments like X. However, several LINUX applications that are not associated with a graphical environment also use mice. LINUX supports standard serial mice like Logitech, MM series, Mouseman, Microsoft (2-button), and Mouse Systems (3-button). LINUX also supports Microsoft, Logitech, and ATIXL bus mice, and the PS/2 mouse interface. Pointing devices that emulate mice, like trackballs and touchpads, should work also.

CD-ROM drives – LINUX supports many common CD-ROM drives attach to standard IDE controllers. Another common interface for CD-ROM is SCSI. SCSI support includes multiple logical units per devices. Additionally, a few proprietary interfaces, like the NEC CDR-74, Sony CDU-541 and CDU-31a, Texel DM-3024, and Mitsumi are supported. LINUX supports the standard ISO 9660 file system for CD-ROMs, and the High Sierra file system extensions.

Tape drives – Any SCSI tape drive, including quarter inch, DAT, and 8MM are supported, if the SCSI controller is supported. Devices that connect to the floppy controller like floppy tape drives are supported as well, as are some other interfaces, like QIC-02.

Printers – LINUX supports the complete range of parallel printers. If MS-DOS or some other operating system can access your printer from the parallel port, LINUX should be able to access it, too. LINUX printer software includes the UNIX standard lp and lpr software. This software allows you to print remotely via a network. LINUX also includes software that allows most printers to handle PostScript files.

Modems – As with printer support, LINUX supports the full range of serial modems, both internal and external. A great deal of telecommunications software is available for LINUX, including Kermit, pcomm, minicom, and seyon. If your modem is accessible from another operating system on the same machine, you should be able to access it from LINUX with no difficulty.

Ethernet cards – Many popular Ethernet cards and LAN adaptors are supported by LINUX. LINUX also supports some FDDI, frame relay, and token ring cards, and all Arcnet cards. A list of supported network cards is generally included in the kernel source of the distribution.

Installation

Each Linux distrribution has its own setup utility, every one vastly different from all the others. This makes it very difficult if not impossible to write a general step by step Linux installation manual. The closest thing in existence is the Linux Installation and Getting Started Guide , which should be included in HTML format with every Linux distribution, and is available online thanks to the Linux Documentation Project . This book contains a fairly good comparison of the major distributions and an outline of the installation process for each one. It also covers the basic technical concepts you need to understand during installation, and covers some issues of usability following the install.

К-во Просмотров: 165
Бесплатно скачать Реферат: Linux 2 Essay Research Paper Table of