|

楼主 |
发表于 2003-1-10 08:44:51
|
显示全部楼层
原文资料
Planning
Certification Objectives
1.01 Open Source and Free Software
1.02 GPL and Open Source Licenses
1.03 About Linux
1.04 Starting Out
1.05 Hardware
History. 2
Linux. 2
Free Software. 3
Open Source Software. 6
Services and Applications. 7
Current Support for Networking Services. 8
Flexibility of Open Source Software. 10
R&D Processes and Practices. 10
Future Development 11
Needs. 12
Intel and Clones. 14
Red Hat Linux is a modern, flexible, and mature operating system. Although it started life on the Intel platform, it has since been ported to many other platforms such as Amiga, DEC Alpha, Apple Power PC, Sun workstations, and others. Linux boasts many other features:
Multitasking Linux is a true preemptive multitasking operating system. All processes run independently of each other and leave processor management to the kernel.
Symmetrical multiprocessing Linux currently scales up to 16 processors but only 8 on Intel-based systems.
Networking Linux supports a multitude of networking protocols.
Interoperability Linux can interoperate with Windows 9x/NT/NT 2000, Novell, Mac, and most other versions of UNIX.
Multiuser Linux can handle multiple users simultaneously logged on to one machine.
Advanced memory management Traditional UNIX systems used swapping to manage memory, where the entire memory structure of a program was written to disk when the system began running low on memory. Linux uses paging, a method that intelligently allocates memory, when system memory is running low, by prioritizing memory tasks. Linux currently supports up to 64GB of RAM.
POSIX support POSIX defines a minimum interface for UNIX-type operating systems. Linux currently supports POSIX 1003.1. This ensures that POSIX-compliant UNIX programs will port easily to Linux.
Multiple file systems Linux must be installed on Extended 2 Linux-formatted partitions, but if certain other OS file systems already exist on the same host, Linux will support several of these file system formats as well, including DOS/Windows, OS/2, and Novell. This is just another interoperability feature provided by Linux.
CERTIFICATION OBJECTIVE 1.01
Open Source and Free Software
All Linux distributions are based on the same idea: Take the Linux kernel and surround it with freely available software to create a usable operating system. Red Hat Linux 7.0 used Linux kernel 2.2, while version 7.1 uses kernel 2.4. Red Hat Software continuously evolves their distribution by using the most current, stable kernel as well as the latest available software for each of its distributions.
History
Although Linux came into being in 1991, it can trace its lineage back much further. In 1969, a Bell Labs programmer named Ken Thompson invented the UNIX operating system. Around the same time, another programmer, Dennis Ritchie, was working on a new computer language called C. By 1974, the two had rewritten UNIX in the C language, and ported it to several different machines. It is this combination of UNIX and C that Linux owes much of its heritage to.
UNIX and C are at the heart of Linux and the Open Source movement. While languages such as Perl, Python, Java, and others make the headlines today, far more lines of open source code have been written than any other single language.
Though many of these programs have been ported to other operating systems, such as Windows NT, UNIX and UNIX-like operating systems have benefited from Open Source software the most.
Linux
In 1991, a student at Helsinki University in Finland posted this message to the Usenet group comp.os.minix:
From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: Gcc-1.40 and a posix-question
Message-ID: <1991Jul3.100050.9886@klaava.Helsinki.FI>
Date: 3 Jul 91 10:00:50 GMT
Hello netlanders,
Due to a project I'm working on (in minix), I'm interested in the posix
standard definition. Could somebody please point me to a (preferably)
machine-readable format of the latest posix rules? Ftp-sites would be
nice.
It was followed up a few months later with this post:
From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: What would you like to see most in minix?
Summary: small poll for my new operating system
Message-ID: <1991Aug25.205708.9541@klaava.Helsinki.FI>
Date: 25 Aug 91 20:57:08 GMT
Organization: University of Helsinki
Hello everybody out there using minix -
I'm doing a (free) operating system (just a hobby, won't be big and
professional like gnu) for 386(486) AT clones. This has been brewing
since april, and is starting to get ready. I'd like any feedback on
things people like/dislike in minix, as my OS resembles it somewhat
(same physical layout of the file-system (due to practical reasons)
among other things).
I've currently ported bash(1.08) and gcc(1.40), and things seem to work.
This implies that I'll get something practical within a few months, and
I'd like to know what features most people would want. Any suggestions
are welcome, but I won't promise I'll implement them :-)
Linus (torvalds@kruuna.helsinki.fi)
PS. Yes - it's free of any minix code, and it has a multi-threaded fs.
It is NOT portable (uses 386 task switching etc), and it probably never
will support anything other than AT-harddisks, as that's all I have
:-(.
The student, of course, was Linus Torvalds. Linus had just purchased a (then) state-of-the-art 386 PC, and wanted, among other things, to learn how it worked. The MS-DOS operating system was too limiting, and immediately discounted. At the time, he had been using another UNIX-like operating system called Minix, a microkernel-based teaching operating system. Minix had many limitations, however, so Linus set about writing a new operating system that did not suffer the limitations of MS-DOS and Minix.
Linus was by no means the first person to come up with the idea of a free UNIX-like operating system. Several years earlier The Free Software Foundation, headed by Richard M. Stallman, announced a kernel called The HURD. Unfortunately, efforts on this new kernel faltered, and it wasn't until 1996 that a stable version of The HURD was available. William and Lynne Jolitz in 1991 were also busy porting Berkeley UNIX, BSD, to the Intel platform.
But Linux was quickly propelled to the front of the pack by the large army of programmers from all across the world, who all pitched in their expertise for the Linux kernel. Instead of the project becoming chaotic and unmanageable, Linux actually benefited from the large number of coders and testers, and nearly instant feedback every time a new kernel was released, which was often. At times, several versions of Linux were released in a single day. A few years after development had begun on Linux, it was a full-featured, stable operating system.
Today, the Linux kernel is developed the same as it was in the beginning. Programmers across the globe collaborate on discussion groups and e-mail lists to work on the Linux kernel. Most are not paid for their efforts, doing it instead from a sense of community that binds Linux developers.
CERTIFICATION OBJECTIVE 1.02
GPL and Open Source Licenses
The terms "Free" and "Open Source" software are commonly used to mean the same thing. While the differences are subtle, they are very important.
Free Software
Free software is the term typically used to refer to software that has been released under the GNU Public License, or GPL. The GPL (also called Copyleft) was designed with the philosophy that all software should be free. Not free as in zero price, but free as in open. As the Free Software Foundation's Richard Stallman puts it in his essay "The GNU Operating System and the Free Software Movement."
The term "Free software" is sometimes misunderstood-it has nothing to do with price. It is about freedom. To clear up some of the confusion, the following is the definition of Free software. A program is Free software for users if:
You have the freedom to run the program, for any purpose.
You have the freedom to modify the program to suit your needs. (To make this freedom effective in practice, you must have access to the source code, since making changes in a program without having the source code is exceedingly difficult.)
You have the freedom to redistribute copies, either gratis or for a fee.
You have the freedom to distribute modified versions of the program, so the community can benefit from your improvements.
Since "free" refers to freedom, not to price, there is no contradiction between selling copies and Free software. In fact, the freedom to sell copies is crucial: collections of Free software sold on CD-ROMs are important for the community, and selling them is an important way to raise funds for Free software development. Therefore, a program that people are not free to include on these collections is not Free software.
The idea of Free software is not new. In fact, back when mainframes ruled the data centers and universities, most software was free, and end users were free to modify it to suit their needs. In the same essay, Richard Stallman describes the situation at MIT in 1971:
"We did not call our software 'free software,' because that term did not yet exist, but that is what it was. Whenever people from another university or a company wanted to port and use a program, we gladly let them. If you saw someone using an unfamiliar and interesting program, you could always ask to see the source code, so that you could read it, change it, or cannibalize parts of it to make a new program."
In the 1980s, the trend reversed, and most new software was becoming proprietary. The idea that software should be shared soon turned into a criminal idea. Groups such as the "Software Publishers Association" sprang up, encouraging people to turn in colleagues and corporations who they suspected of violating software copyrights.
In 1984, Richard Stallman, began work on the GNU project. GNU stands for "GNUs Not UNIX," a self-recursive definition meant to imply that GNU software, unlike UNIX software, is open and free. Today, much of the software and utilities used in most Linux distributions, including Red Hat, are GNU utilities.
Here is the most recent version of the GNU Public License, of which most Red Hat Linux software falls under. It can be found at http://www.gnu.org:
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed:
PREAMBLE
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software-to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and modification follow:
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The " rogram" below refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification.") Each licensee is addressed as "you."
Activities other than copying, distribution, and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may, at your option, offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version," you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
NO WARRANTY
BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
It is important to note that the Linux kernel, which is distributed under the GPL, contains the following preamble:
NOTE! This copyright does not cover user programs that use kernel services by normal system calls-this is merely considered normal use of the kernel, and does not fall under the heading of "derived work." Also note that the GPL below is copyrighted by the Free Software Foundation, but the instance of code that it refers to (the Linux kernel) is copyrighted by me and others who actually wrote it.
Linus Torvalds
Open Source Software
Open Source software, like Free software, requires that software source code be provided and readable. What Open Source does not promote, however, are the philosophical reasons behind free software. Where the GPL makes freedom a central point, Open Source sidesteps the philosophy and sets only the guidelines for software to fit the Open Source definition. Richard M. Stallman in his essay, "Why Free Software Is Better than Open Source," states that:
The obvious meaning for "open source software" is "You can look at the source code." This is a much weaker criterion than "free software"; it includes free software, but also includes semi-free programs such as xv, and even some proprietary programs, including qt, under its former license.
That obvious meaning for "open source" is not the meaning that its advocates intend. (Their "official" definition is much closer to "free software.") The result is that people often misunderstand them. Of course, this can be addressed by publishing a precise definition for the term. The people using "open source software" have done this, just as we have done for "free software." However, this approach is only partially effective in either case. For free software, we have to teach people that we intend one meaning rather than another that fits the words equally well. For open source, we would have to teach them to use a meaning which does not really fit at all.
Here is the most recent version of "The Open Source Definition," which can be found at http://www.opensource.org:
Open source doesn't just mean access to the source code. The distribution terms of an open-source program must comply with the following criteria:
1. Free Redistribution
The license may not restrict any party from selling or giving away the software as a component of an aggregate software distribution containing programs from several different sources. The license may not require a royalty or other fee for such sale.
2. Source Code
The program must include source code, and must allow distribution in source code as well as compiled form. Where some form of a product is not distributed with source code, there must be a well-publicized means of downloading the source code, without charge, via the Internet. The source code must be the preferred form in which a programmer would modify the program. Deliberately obfuscated source code is not allowed. Intermediate forms such as the output of a preprocessor or translator are not allowed.
3. Derived Works
The license must allow modifications and derived works, and must allow them to be distributed under the same terms as the license of the original software. (rationale)
4. Integrity of the Author's Source Code
The license must not discriminate against any person or group of persons. (rationale)
5. No Discrimination Against Fields of Endeavor
The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research. (rationale)
6. Distribution of License
The rights attached to the program must apply to all to whom the program is redistributed without the need for execution of an additional license by those parties. (rationale)
7. License Must Not Be Specific to a Product
The rights attached to the program must not depend on the program's being part of a particular software distribution. If the program is extracted from that distribution and used or distributed within the terms of the program's license, all parties to whom the program is redistributed should have the same rights as those that are granted in conjunction with the original software distribution. (rationale)
8. License Must Not Contaminate Other Software
The license must not place restrictions on other software that is distributed along with the licensed software. For example, the license must not insist that all other programs distributed on the same medium must be open-source software. (rationale)
9. Example Licenses
The GNU GPL, BSD, X Consortium, and Artistic licenses are examples of licenses that we consider conformant to the Open Source Definition. So is the MPL.
Bruce Perens wrote the first draft of this document as "The Debian Free Software Guidelines," and refined it using the comments of the Debian developers in a month-long e-mail conference in June, 1997. He removed the Debian-specific references from the document to create the "Open Source Definition."
Services and Applications
If you think that Free and Open Source software is a new or niche idea, it may surprise you to learn that most of the Internet runs on Free or Open Source software. Most of your e-mail is passed across the Internet using Sendmail, a free program written by Eric Allman in 1979. A survey done by Netcraft in June 2001 showed that over 65 percent of Web sites on the Internet are using the Apache Web Server, or Apache derivatives. (The survey can be found at http://www.netcraft.com/survey/.) And every time you type a Web address into your browser, there's a good chance it resolves the location of that Web address against a server running BIND, a free implementation of the Domain Name System that runs the Internet. The free news server innd handles much of the Usenet traffic, and many people read that news using free newsreaders such as rn, tin, and mutt. One of the most popular (and powerful) editors, GNU/Emacs, is used to compose documents and source code, read e-mail, news, and even program in LISP.
In the development space, languages such as C, C++, Perl, Python, Tcl/Tk, Pascal, Cobol, Fortran, and many others are freely available. And, if you're curious as to how these compilers are built, the source code is available for every one of them.
CERTIFICATION OBJECTIVE 1.03
About Linux
You hear people talking about Linux all the time. But you also probably hear about the "Red Hat" Linux distribution, and names like SuSE, Caldera, Debian, Slackware, and others. Are they all Linux?
Recall that Linux is the operating system kernel. That is, Linux is the very heart of the operating system. However, like all operating systems, to be useful, Linux has to have utilities and programs to do the actual work. This is where distributions come in. All of the Linux distributions run the Linux kernel. But after that, the distributions vary from each other to some degree. For example, the Slackware distribution looks and feels much like Berkeley UNIX, whereas the SuSE distribution is much more System V'ish. Red Hat Linux tends to fall somewhere in between but is leaning toward System V more and more with each new release.
Current Support for Networking Services
Linux was built from the start to be a network operating system. This may seem obvious now, but consider that in 1991 nobody knew how important networking and the Internet would be to modern-day computing. This gives Linux a big edge in terms of network stability and integration.
Today, Linux supports the networking protocols contained in Table 1-1.
Protocol
Description
TCP/IP
This is the protocol used by the Internet, and on most local networks.
IP Version 6
This is the protocol that will eventually replace IP version 4 on the Internet.
AppleTalk
The protocol used for Apple computers to communicate with each other.
CCITT X.25 Packet Layer
The X.25 networking protocol.
Acorn Econet/AUN
An older protocol, used by Acorn computers to access file and print servers.
IPX
The Novell networking protocol, used to access Novell file and print servers.
Table 1: Networking Protocols Supported by Linux
Flexibility of Open Source Software
Much ado has been made about Free and Open Source software, but what do you really get that you can't get from closed operating systems such as Microsoft Windows?
Stability?69When a version of an open source program is released on the Internet, there is a large peer review of the source code. With so many people looking at the code, there's a much better chance somebody will see a bug, and even offer a correction. This type of peer review just isn't possible in the closed source world.
Modifications?69In a closed source environment, you're at the mercy of the vendor. If you want or need a feature, you can submit a request for features, and only hope the vendor will agree with you. If not, you're stuck. With open source, you have the source code, and you can add the features yourself, if need be. Or, you can hire a programmer to make the changes for you. Many times, you can post a message to the appropriate Usenet newsgroup saying "Gee, it sure would be nice if program Foo could do this." Sometimes somebody will have a patch written within a couple days that does just what you want.
Support?69There are literally thousands of open source advocates out there on newsgroups and e-mail lists who can answer your questions when you need help. Best of all, it's free. Contrast this with the big money you throw to the closed source vendors, who may or may not be able to help you. And if you really feel the need to pay for support, there are several companies out there now providing 24/7 technical support for Linux.
Freedom?69With proprietary software, the primary goal is to make money. That the software may be useful to you is only a secondary concern. Keep in mind, too,, that software never truly belongs to you, but is instead licensed for your use. The software vendor has all the advantages; you have none of them. However, Free and Open Source software gives you the freedom to view, modify, and share the code with others.
R&D Processes and Practices
The traditional development process of software has always gone something like this: Software company decides to create a package. Specifications are drawn up, some prototyping is done, software designers write, rewrite, and refine it. It goes back and forth for review and bug testing. Finally, the decision is made to release the product; it gets stamped onto media, and shrink-wrapped. Only when the consumer unpacks the box does the software truly ever see the light of day, because throughout the entire lifecycle of the development process, the software was tested and developed only by the software company. Even in a beta testing program, the number of participants is nowhere near the masses of people who will finally use the software.
The Free and Open Source model differs significantly. Usually the process begins because a programmer has an "itch" that needs to be scratched. In other words, the programmer thinks it would be a fun project to, say, write a mail client. Or perhaps she's been reading Usenet, hearing people lament how they wish X mail client had these features. In any case, the programmer whips out some code and posts it to the Internet, asking for participants, peer reviewers, or just comments. Perhaps a few people join in, and add features to this code. A new revision is posted for others to see. As people become more interested, the project takes on a life larger than perhaps the original author intended. A programmer in Colorado might be working on the user interface, while programmers in Spain and Iceland collaborate on some other area of code.
In May of 1997, Eric S. Raymond presented his paper, "The Cathedral and the Bazaar" at the 1997 Linux Kongress. You can find this essay at http://www.tuxedo.org/~esr/writings. Raymond likened traditional software companies to cathedral builders, skilled artisans who worked meticulously on their software projects within the hallowed walls of the giant software companies:
"I had been preaching the UNIX gospel of small tools, rapid prototyping, and evolutionary programming for years. But I also believed there was a certain critical complexity above which a more centralized, a priori approach was required. I believed that the most important software (operating systems and really large tools like Emacs) needed to be built like cathedrals, carefully crafted by individual wizards or small bands of mages working in splendid isolation, with no beta to be released before its time."
But Linux showed another type of development model, which Raymond calls "the Bazaar." This is an environment where anybody with a computer, a compiler, and the desire to write software, can join in. Raymond writes:
"Linus Torvalds' style of development-release early and often, delegate everything you can, be open to the point of promiscuity-came as a surprise. No quiet, reverent cathedral-building here-rather, the Linux community seemed to resemble a great babbling bazaar of differing agendas and approaches (aptly symbolized by the Linux archive sites, who'd take submissions from anyone) out of which a coherent and stable system could seemingly emerge only by a succession of miracles."
But Linux has succeeded, and continues to do so using the same Bazaar-style development process it began with in 1991.
Future Development
The future of Linux is lined with uncertainty and excitement. Uncertainty because it's hard to predict just where the course of the Internet and technology will run. Exciting because Linux will be right there when it happens.
Even now, exciting things are happening in the Linux world. Kernel development continues at a brisk pace, and companies like Red Hat Software are showing that the world is taking Linux seriously. On the day of its Initial Public Offering, the price of Red Hat Software stock tripled. Entire companies make their livings on Free and Open Source software, such as Cygnus, SuSE, VA Research, and others.
CERTIFICATION OBJECTIVE 1.04
Starting Out
Compared to previous versions of Linux, Red Hat Linux 7.x is pretty straightforward as far as operating system installs go. Still, you'll want to make sure you're prepared beforehand. Before installing Red Hat Linux 7.x make sure:
You have documentation. You'll want installation documentation and post-install documentation, so you'll know how to use your new system.
You have the correct hardware. While Red Hat Linux supports more and more hardware with each release, you still need to check to make sure your components are supported.
You know your hardware's specifications. You should know what interrupt your network card, for instance, operates on. If you're using SCSI peripherals, make sure you know all their SCSI IDs.
You know what installation method you will be using. You should know what installation method you will be using: Upgrade, Server, Workstation, Laptop, or Custom.
You know how you will be laying your file systems out.
Optionally You should have the latest patches for the version of Red Hat you'll be installing.
Needs
What is the difference between a workstation and a server in the Linux world? Simply put, it is the selection of software packages to be installed. The workstation and laptop installation selects packages that are user-oriented, such as X and games, whereas the server installation preferentially installs network, file, and print services, but does not install X and most of the games. A custom installation lets you decide on everything.
Before you begin a Red Hat Linux installation, you need to know what the purpose of the machine will be. Will it be a development workstation? An FTP? A Web server? Or will it be a database server? Each of these examples requires a different configuration.
Workstation Installation
If you're new to Linux, or just need a basic workstation, Red Hat makes it easy to get started. During the installation, you are given four choices:
Workstation
Server
Laptop
Custom
Selecting "Workstation" (the "Laptop" install is much the same) will give you an easy and fast way (with some loss of flexibility in configuration) to get started. The Workstation install does the following:
It removes any preexisting Linux and Linux swap partitions, but does not remove DOS partitions.
It uses all free space on the primary drive.
The following partitions are created:
A 64MB swap partition.
On Intel systems, a 16MB partition (mounted as /boot) is created. The kernel and associated files reside here.
On Alpha systems, a 2MB partition (mounted as /dos) is created, where the MILO boot loader will reside.
The rest of the disk is mounted as /, where all other files are placed.
If a DOS/Windows partition exists, Red Hat Linux will automatically configure your system to dual-boot.
At least 1.2 GB for just one X Desktop and 1.5GB, for both Gnome and KDE with games, of free disk space is required for a Workstation install. Remember that performing a Workstation install will automatically overwrite all of the existing Linux and Linux swap partitions on the disk.
Server Installation
The Server installation will give you a fast and easy way (with some loss of flexibility in configuration) to set up a Web, FTP, or other type of server class system. When presented with the three types of installs, select "Server." The Server install does the following:
It removes all preexisting partitions (even DOS partitions).
It uses all space on the primary drive.
The following partitions are created:
A 256MB swap partition.
On Intel systems, a 16MB partition (mounted as /boot) is created. The kernel and associated files reside here.
On Alpha systems, a 2MB partition (mounted as /dos) is created, where the MILO boot loader will reside.
A 256MB partition (mounted as /).
A 512MB (or more) partition mounted as /usr.
A 512MB (or more) partition mounted as /home.
A 256MB partition mounted as /var.
A hard disk of at least 1.9GB in size is required for a Server install.
If you read the official Red Hat installation guide, it suggests you only need 650MB of disk for a minimal Server class install, less than for a workstation. If you add up the partitions actually created according to the docs, you get closer to the 1.9GB number. So, assuming the worst, you really need 1.9GB at the minimum.
Remember that performing a Server install will automatically overwrite all of the partitions on the disk, including DOS/Windows partitions.
Note that a Server installation, unlike a Workstation installation, will remove all existing partitions on the primary hard drive, even DOS partitions.
Custom Installation
The Custom install gives you the most flexibility to choose how you want your system installed, but at some loss of ease and speed. You determine how the disk is laid out, what size each partition is, and which packages will be installed. The Custom install is recommended for veteran Linux users only.
CERTIFICATION OBJECTIVE 1.05
Hardware
Although Red Hat offers Linux for Intel, Sparc, and Alpha platforms, we will concentrate on the most common platform, Intel.
Intel and Clones
Installing on most Intel-based computers is pretty straightforward, but you'll save yourself a lot of time and frustration by knowing exactly what hardware you have. You should be familiar with the following information about your system:
Drives Check to see if you are using SCSI or IDE drives. You should know the manufacturer, model number, and capacity of the drive. If it's a SCSI drive, make sure you know its SCSI ID.
Hard drive controller You should know the manufacturer and model number of the drive controller. Oftentimes, this information is hard to obtain, so at the very least try to identify the chipset of the controller.
CD-ROM If you're using a SCSI or IDE CD-ROM, you probably won't have to worry about what type it is. However, if you are using a CD-ROM with a proprietary interface (common with older models), you should know the manufacturer, as well as the model number of the drive and controller. Also, for proprietary interfaces, you should note what IRQ it uses.
Mouse You should know what type of mouse interface you are using-PS/2, serial, or some other type.
Display adaptor If you will be running X, you will need the manufacturer, model number, and how much memory is on the adaptor.
Sound, video, and game adaptors If you want to set up sound on your system, you should know the manufacturer and model number of the sound card. You should also know what IRQ it uses, if any.
Network adaptors If you'll be networking your Linux system, you should know the manufacturer and model number of the network adaptor. You should also know what IRQ it uses, if any.
Monitor If you will be running X, you will need the manufacturer, model number, resolutions, and frequencies of the monitor.
Not all hardware will work with Linux. After you've collected information about your system, you should consult the Intel Hardware Compatibility List (HCL) in the next section to determine if your components are compatible with Red Hat Linux 7.x.
Intel Hardware Compatibility List
The current Hardware Compatibility List is available at http://hardware.redhat.com. Another source , for compatibility concerns, although somewhat dated, is on the Red Hat Linux CD-ROM. You can also check in /usr/doc/HOWTO/Hardware-HOWTO on an installed Red Hat Linux 6.x system (on the last CD-ROM of RH 7.x), or online at http://sunsite.unc.edu/pub/Linux/do...Hardware-HOWTO.
sr d
r n 3 P/)fhi hof
Linux Hardware Compatibility HOWTO --
Patrick Reijnen, <antispam.hardware_howto@antispam.reij-
nen.nl.com (remove both "antispam.")>
v99.3, 28 September 1999
This document lists most of the hardware supported by Linux and helps
you locate any necessary drivers.
______________________________________________________________________
Table of Contents
1. Introduction
1.1 Welcome
1.2 Copyright
1.3 System architectures
2. Computers/Motherboards/BIOS
2.1 Specific system/motherboard/BIOS
2.2 Unsupported
3. Laptops
3.1 Specific laptops
3.2 PCMCIA
4. CPU/FPU
5. Memory
6. Video cards
6.1 Diamond video cards
6.2 SVGALIB (graphics for console)
6.3 XFree86 3.3.2
6.3.1 Accelerated
6.3.2 Unaccelerated
6.3.3 Monochrome
6.3.4 Alpha, Beta drivers
6.4 S.u.S.E. X-Server
6.5 Commercial X servers
6.5.1 Xi Graphics, Inc
6.5.2 Metro-X 4.3.0
7. Controllers (hard drive)
7.1 Alpha, Beta drivers
8. Controllers (hard drive RAID)
9. Controllers (SCSI)
9.1 Supported
9.2 Alpha, Beta drivers
9.3 Unsupported
10. Controllers (I/O)
11. Controllers (multiport)
11.1 Non-intelligent cards
11.1.1 Supported
11.2 Intelligent cards
11.2.1 Supported
11.2.2 Alpha, Beta drivers
12. Network adapters
12.1 Supported
12.1.1 Ethernet
12.1.2 ISDN
12.1.3 Frame Relay
12.1.4 Wireless
12.1.5 X25
12.1.6 Pocket and portable adapters
12.1.7 Slotless
12.1.8 ARCnet
12.1.9 TokenRing Take a look at the token ring web site
12.1.10 FDDI
12.1.11 Amateur radio (AX.25)
12.1.12 PCMCIA cards
12.2 Alpha, Beta drivers
12.2.1 Ethernet
12.2.2 ISDN
12.2.3 ATM
12.2.4 Frame Relay
12.2.5 Wireless
12.3 Unsupported
13. Sound cards
13.1 Supported
13.2 Alpha, Beta drivers
13.3 Unsupported
14. Hard drives
14.1 Unsupported
15. Tape drives
15.1 Supported
15.2 Alpha, Beta drivers
15.3 Unsupported
16. CD-ROM drives
16.1 Supported
16.2 Alpha, Beta drivers
16.3 Notes
17. CD-Writers
18. Removable drives
19. Mice
19.1 Supported
19.2 Alpha, Beta drivers
19.3 Notes
20. Modems
21. Printers/Plotters
21.1 Ghostscript
21.1.1 Ghostscript 5.1 supported printers
21.1.2 Alpha, Beta drivers
22. Scanners
22.1 Supported
22.2 Alpha, Beta drivers
22.3 Unsupported
23. Other hardware
23.1 Amateur Radio
23.2 VESA Power Savings Protocol (DPMS) monitors
23.3 Touch screens
23.4 Terminals on serial port
23.5 Joysticks
23.6 Video capture boards / Frame Grabbers / TV tuner
23.7 Digital Camera
23.7.1 Supported
23.7.2 Unsupported
23.8 UPS
23.9 Multifunction boards
23.10 Data acquisition
23.11 Watchdog timer interfaces
23.12 Miscellaneous
24. Related sources of information
25. Acknowledgments
26. Appendix A. S3 cards supported by XFree86 3.3.x.
27. Appendix B. Supported PCMCIA cards
27.1 Ethernet cards
27.2 Fast Ethernet (10/100baseT) adapters
27.3 Token-ring adapters
27.4 Wireless network adapters
27.5 ISDN
27.6 Modem and serial cards
27.7 Memory cards
27.8 SCSI adapters
27.9 ATA/IDE CD-ROM adapters
27.10 Multifunction cards
27.11 ATA/IDE card drives
27.12 ATA/IDE Interface Cards
27.13 Parallel port cards:
27.14 Miscellaneous cards
27.15 Working on ...
27.16 Unsupported
28. Appendix C. Supported Parallel Port devices
28.1 Ethernet
28.2 Hard drives
28.3 Tape drives
28.4 CD-ROM drives
28.5 Removable drives
28.6 IDE Adapter
28.7 SCSI Adapters
28.8 Digital Camera
28.9 PCMCIA parallel port cards
29. Appendix D. Plug and Play devices
30. Appendix E. Linux incompatible Hardware
31. Glossary
______________________________________________________________________
1. Introduction
NOTE: USB is not yet supported by Linux.
(Actually, as of RedHat 7.x, USB is supported)
1.1. Welcome
Welcome to the Linux Hardware Compatibility HOWTO. This document lists
most of the hardware components (not computers with components built
in) supported by Linux, so reading through this document you can
choose the components for your own Linux computer. As the list of
components supported by Linux is growing rapidly, this document will
never be complete. So, when components are not mentioned in this
HOWTO, the only reason will be that I don't know they are supported. I
simply have not found support for the component and/or nobody has told
me about support.
Subsections titled 'Alpha, Beta drivers' list hardware with alpha or
beta drivers in varying degrees of usability. Note that some drivers
only exist in alpha kernels, so if you see something listed as
supported but it isn't in your version of the Linux kernel, upgrade.
Some devices are supported by binary-only modules; avoid these when
you can. Binary-only modules are modules which are compiled for ONE
kernel version. The source code for these modules has NOT been
released. This may prevent you from upgrading or maintaining your
system.
Linus Torvalds says "I allow binary-only modules, but I want people to
know that they are only ever expected to work on the one version of
the kernel that they were compiled for"
See <http://www.kt.opensrc.org/kt19990211_5.html#10> for information
on source code availability of components.
The latest version of this document can be found on
<http://users.bart.nl/~patrickr/hard...ware-HOWTO.html>,
SunSite and all the usual mirror sites. Translations of this and other
Linux HOWTO's can be found at
<http://metalab.unc.edu/pub/Linux/do...TO/translations> and
<ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/translations>.
If you know of any Linux hardware (in)compatibilities not listed here,
please let me know. Just send mail.
Still need some help selecting components after reading this document?
Check the "Build Your Own PC" site at <http://www.verinet.com/pc/>.
Want to have a preconfigured Linux system? Have a look at
<http://www.linuxresources.com/web/>.
1.2. Copyright
Copyright 1997, 1998, 1999 Patrick Reijnen
This HOWTO is free documentation; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free software Foundation; either version 2 of the
license, or (at your option) any later version.
This document is distributed in the hope that it will be useful, but
without any warranty; without even the implied warranty of
merchantability or fitness for a particular purpose. See the GNU
General Public License for more details. You can obtain a copy of
the GNU General Public License by writing to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
If you use this or any other Linux HOWTO's in a commercial
distribution, it would be nice to send the authors a complimentary
copy of your product.
1.3. System architectures
This document only deals with Linux for Intel platforms. For other
Platforms, check the following:
o ARM Linux
<http://www.arm.uk.linux.org/>
o Linux/68k
<http://www.clark.net/pub/lawrencc/linux/index.html>
o Linux/8086 (The Embeddable Linux Kernel Subset)
<http://www.linux.org.uk/ELKS-Home/index.html>
o Linux/Alpha
<http://www.azstarnet.com/~axplinux/>
o Linux/MIPS
<http://www.linux.sgi.com>
o Linux/PowerPC
<http://www.linuxppc.org/>
o Linux for Acorn
<http://www.ph.kcl.ac.uk/~amb/linux.html>
o Linux for PowerMac
<http://ftp.sunet.se/pub/os/Linux/mk...info/index.html>
(The rest has been omitted for brevity)
What to Avoid
If you are going out specifically to purchase hardware for a Linux system, there are a few things to keep in mind:
Avoid proprietary products, such as non-SCSI or non-IDE CD-ROM drives.
Avoid hardware that says on the package, "Requires Windows."
Winmodems are modems that handle processing on the system through proprietary interfaces. Because these interfaces are generally not published, Linux has little or no support for these devices.
Avoid hardware not listed on the Hardware Compatibility List (HCL). Although some hardware not specifically mentioned on the HCL will work with Linux, you should research before you buy. Ask the manufacturer or others running Linux.
Reference Sources
One of the oft-cited reasons to use Linux is its incredible support base. If you're having problems, want to ask if a certain piece of hardware is supported, or just need Linux information, here are some resources.
The man pages?69Using the man command at a Linux prompt will give you help with Linux commands and libraries. For example, to get usage on the ls command, type man ls at a command prompt. For help using the man command, type man man.
Package documentation?69Many Red Hat Linux packages store their documentation in /usr/doc/packagename.
HOWTOs and FAQs?69These are located in /usr/doc/HOWTO and /usr/doc/FAQ, respectively.
The info command?69This will give hypertext information regarding many commands on your system.
The Linux Documentation Project (LDP)?69Located on the Web at http://www.linuxdoc.org.
The Red Hat Knowledge Base?69Located at http://www.redhat.com/knowledgebase.
Red Hat mailing lists?69Found at http://www.redhat.com/community/list_subscribe.html.
The Free Software Foundation?69Located at http://www.gnu.org.
The Open Source Community?69Located at http://www.opensource.org.
Certification Summary
This chapter outlined the differences and similarities between Open Source and Free software, which make up most Linux distributions. We covered the traits that make Linux a viable operating environment, such as preemptive multitasking and memory management. We also covered the history behind UNIX, and the community that has driven it. The two major licenses, the General Public License and the Open Source Definition, were discussed and compared.
Also covered were networking support and hardware compatibility. Finally, we outlined the different types of Red Hat Linux installations, as well as the advantages and disadvantages of each.
学习要点
来源:Steve's RHCE Study Guide
Steve Bremer, steve at clublinux dot org
v .10, April 10th, 2002
Please see Copyright and especially the Disclaimer before using this material. If you find an error, please report it to me at the e-mail address above along with a reference to the material containing the correct information. Before reporting an error, please check for the latest version of this study guide at http://endor.clublinux.org/RHCE.html.
1. Hardware
1.1 Device Information
The following information should be collected about your devices before you begin the installation.
Disk Drives
Make
Model
Capacity
Geometry (C/H/S)
CD-ROM Drives
SCSI or IDE - Should work fine
Older CD-ROM with proprietary interface:
Make
Model
IRQ
SCSI Controllers
Make
Model
NIC
Make
Model
IRQ (if needed)
ioport (if needed)
Video Card
Make
Model
Amount of Memory
Sound Card (including game adapters)
Make
Model
IRQ (if needed)
Monitor
Make
Model
Resolutions
Frequencies (both vertical and horizontal)
Mouse
Type of Mouse Interface
Serial
May need to assign IRQ if > 3 serial devices
9 or 25 pin rectangular
/dev/ttyS[0-3]
Protocols -- Microsoft, Logitech
PS/2
IRQ 12 reserved
6 pin mini DIN
/dev/psaux
Protocols -- PS/2
Busmouse
Round 9 pin connector
Plugs into card (set IRQ and ioport with jumpers)
Protocols -- Most use BusMouse, but other options include: Inport(Microsoft), Logitech, ATI-XL
/dev/inportbm (Inport)
/dev/logibm (Logitech)
/dev/atibm (ATI-XL)
1.2 BIOS Limitations
Can see only the first 1024 cylinders on a disk drive (Doesn't apply to SCSI drives since the controllers have their own BIOS)
Can only access first 2 EIDE drives at boot (including CD-ROM)
Bootable drives must be on first two IDE channels (e.g. must be one of hda,hdb,hdc,hdd)
1.3 Disk Drives
IDE/EIDE
Device Names - /dev/hd[a-t]
16 partitions (15 usable)
4 Primary partitions max
/dev/hd?[1-4]
1 Extended partition max (takes place of 1 primary partition if used)
Can be one of /dev/hd?[2-4]
Up to 12 logical partitions within an Extended partition
Start at /dev/hd?5
IDE (ATA) - 504 MB max size
EIDE (ATA-2 or FastATA) -- 8 GB max w/o Logical Block Addressing (LBA)
Controller specific, NOT drive specific (e.g. To switch from IDE to EIDE you replace the controller, not the disk drive)
LBA -- Allows drives with > 1024 cylinders to be used by adjusting the "HEAD" value.
Example: A drive with 2048 Cylinders, 16 Heads, and 63 Sectors appears to the BIOS as having 1024 Cylinders, 32 Heads, and 63 Sectors
SCSI
Device names
First controller -- /dev/sda, /dev/sdaa, /dev/sdab, etc.
Second controller -- /dev/sdb, /dev/sdba, /dev/sdbb, etc.
15 partitions (all usable)
Not affected by BIOS limitations like IDE drives.
1.4 RAM
2.2.x Kernels - 4 GB max
2.4.x Kernels
1 GB on Default Kernel
4 GB on i686 Kernel
64 GB with Enterprise Kernel on Pentium II and higher systems that support PAE (Physical Address Extensions)
1.5 Serial Ports
Standard serial ports are /dev/ttyS[0-3] (COM1 - COM4 in the DOS world)
IRQs can be shared on Kernels >= 2.2.x
/dev/ttyS0 and /dev/ttyS2 share IRQ 4
/dev/ttyS1 and /dev/ttyS3 share IRQ 3
For kernels < 2.2.0, IRQs must be explicitly defined using setserial.
e.g. /sbin/setserial /dev/ttyS0 irq 4
1.6 IRQs
Standard Assignment
0 - Nonmaskable interrupt (NMI)
1 - System Timer
2 - Cascade for controller 2
3 - /dev/ttyS1 and /dev/ttyS3 (Serial ports)
4 - /dev/ttyS0 and /dev/ttyS2 (Serial ports)
5 - Usually used for Sound card, but can be Parallel port 2
6 - Floppy disk controller
7 - Parallel port 1
8 - Real-time clock
9 - Redirected to IRQ2
10 - Not assigned (usually used for network cards)
11 - Not assigned
12 - PS/2
13 - Coprocessor
14 - Hard disk controller 1
15 - Hard disk controller 2
A Bare Bones system will have IRQs 5, 7, 9, 10, 11, and 12 free
1.7 Plug -n- Play
ISA
2.2.x Kernels -- requires isapnptools to configure
2.4.x Kernels -- Generally automatic
PCI -- Generally automatic
1.8 PC Card (PCMCIA)
The "Card Services" packages handles configuration of PC cards automatically.
1.9 Hardware Conflicts
Most common problems with hardware occur due to resource conflicts.
DMA Channels
IRQs
I/O Port Addresses
1.10 Adding a Peripheral
If the peripheral has any jumpers or switches, set them to values that won't conflict with any of the existing hardware devices in your machine.
Shutdown your system and add the peripheral.
Restart the system and edit any necessary configuration files.
If the existing kernel doesn't support the peripheral, rebuild the kernel or build the necessary module(s)
2. Linux Hardware Support
2.1 Architectures
IA-32
IA-64
Alpha
S390
2.2 CPU
32 Processor support
8 CPU's typical on IA-32
2.3 Swap Limitations
4 GB maximum.
8 Swap partitions maximum.
2 GB maximum size per swap partition. |
|