1.3 Reasons for Using Linux The previous section introduced the important properties and objectives of Linux as a free software project. This section will discuss a number of general properties of the Linux kernel, offering more reasons for its use:Linux supports preemptive multitasking: All processes run independently in different protected memory spaces, so that the failure of one process does not in any way impair the other processes. When a process claims too much computing time, its processor can be taken and allocated to another waiting application. Preemptive multitasking is a fundamental requirement for stable systems.Multiprocessor: Linux is one of the few operating systems supporting several processors in SMP (Symmetric MultiProcessing) operation. This means that several processes can be handled concurrently by different CPUs. Since kernel version 2.0, multiprocessor systems with Intel and Sparc processors are supported. Version 2.2 and the current Version 2.4 additionally improved the performance and parallelism in the Linux kernel.Multiuser: Several users can work concurrently in one system, when they are logged in over different consoles. In addition, users can work easily on several graphical user interfaces.Multiplatform: Section 2.8) to change parametersFor example, various timeout values for the TCP transport protocol or configuration parameters of other protocol instances. There is even a way to use the Proc file system to enable and disable certain functions at runtime, such as packet forwarding.Chapter 23.)And, finally, the best argument: Linux is free of charge. Everyone can download it from the Internet or buy it on CD for a few dollars, usually with a few gigabyte applications (some of them being more useful, some less) and with extensive installation instructions and free support. This means that, for very little money, you can get a high-performing, extremely stable, and easily adaptable operating system that turns a Pentium PC into a high-performing workstation, a highly reliable server, or an individually configurable Internet router. This chapter has been a brief introduction to Linux; the next chapter will introduce the internal structure of the Linux kernel. We will then discuss the basic structure of communication systems in general and the structure of the Linux network architecture in particular. | |
|