/[gentoo]/xml/htdocs/doc/en/gentoo-kernel.xml
Gentoo

Contents of /xml/htdocs/doc/en/gentoo-kernel.xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (hide annotations) (download) (as text)
Sat Oct 18 19:17:11 2003 UTC (10 years, 10 months ago) by swift
Branch: MAIN
Changes since 1.2: +6 -6 lines
File MIME type: application/xml
pfeifer -> gentoo-test

1 swift 1.1 <?xml version="1.0" encoding="UTF-8"?>
2    
3     <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
4     <guide link="/doc/en/gentoo-kernel.xml">
5     <title>Gentoo Linux Kernel Guide</title>
6     <author title="Author">
7     <mail link="swift@gentoo.org">Sven Vermeulen</mail>
8     </author>
9     <author title="Contributor">
10     <mail link="lostlogic@gentoo.org">Brandon Low</mail>
11     </author>
12     <author title="Editor">
13     <mail link="carl@gentoo.org">Carl Anderson</mail>
14     </author>
15     <author title="Editor">
16     <mail link="peesh@gentoo.org">Jorge Paulo</mail>
17     </author>
18    
19 swift 1.2 <license/>
20    
21 swift 1.1 <abstract>
22     This document gives you an overview on all kernelsources that Gentoo
23     provides through Portage.
24     </abstract>
25    
26 swift 1.3 <version>0.2</version>
27     <date>October 18, 2003</date>
28 swift 1.1
29     <chapter>
30     <title>Introduction</title>
31     <section>
32     <body>
33    
34     <p>
35     As with everything else in Gentoo Linux, the philosophy of the Gentoo
36     Kernel team is to give you, the user, as much freedom of choice as
37     possible. If you take a look at the output of <c>emerge -s sources</c>
38     you see a large variety of kernels to choose from. In this document,
39     I will attempt to give you a brief rundown of the goals of each of the
40     patch sets, which we at Gentoo design, and also explain the other kernel
41     sources we make available to you.
42     </p>
43    
44     </body>
45     </section>
46     </chapter>
47    
48     <chapter>
49     <title>The Choices, Part I</title>
50     <section>
51     <title>gentoo-sources</title>
52     <body>
53    
54     <p>
55     For most users, the recommended kernel sources are the
56     <c>gentoo-sources</c>. The <c>gentoo-sources</c> package contains
57     specially tuned performance kernel patches designed to optimize tasks
58     such as compiling while listening to music and browsing the web. Most
59     of you who are new to Gentoo have probably never run a system where you
60     are regularly compiling many packages from source while you are doing your
61     normal everyday tasks on your computer.
62     You may find that if you use the <c>vanilla-sources</c> (the official
63     kernel sources released from <uri>http://www.kernel.org</uri>) normal tasks --
64     such as listening to music, moving your mouse and the like -- may appear
65     jumpy when you are compiling packages.
66     </p>
67    
68     <p>
69     The <c>gentoo-sources</c> contain an updated ACPI subsystem and are based
70     on Con Kolivas' high-performance kernel patches (<c>ck-sources</c>). We also
71     support grSecurity (a set of security-related patches with support for
72     ACLs), EVMS(2) (a highly flexible storage management filesystem with easy
73     partition resizing), JFS (IBM's high-performance filesystem), the latest
74     NTFS drivers, and more.
75     </p>
76    
77     <p>
78     Because the <c>gentoo-sources</c> are targeted at full performance, they are
79     also very good for gaming purposes.
80     </p>
81    
82     <p>
83     The following USE-flags can be set to select optional patches:
84     </p>
85    
86     <table>
87     <tr><th>Flag</th><th>Description</th></tr>
88     <tr><ti>aavm</ti><ti>Use Andrea Arcangeli's memory management</ti></tr>
89     <tr><ti>evms2</ti><ti>Use EVMS 2.0.1 instead of EVMS 1.2.1</ti></tr>
90     <tr><ti>crypt</ti><ti>Apply Cryptographic patches</ti></tr>
91     <tr><ti>usagi</ti><ti>Keep USAGI, drop superfreeswan, patch-int, loop-jari</ti></tr>
92     </table>
93    
94    
95     </body>
96     </section>
97     <section>
98     <title>vanilla-sources</title>
99     <body>
100    
101     <p>
102     The next kernel sources that many of you will probably be familiar with
103     as Linux users are the <c>vanilla-sources</c>. As I mentioned briefly
104     above, these are the official kernel sources released on
105     <uri>http://www.kernel.org/</uri>. These sources are maintained (contrary
106     to popular belief) not by Linus Torvalds himself, but by Marcelo
107     Tosatti. Linus is the leader of active kernel development, but as he is
108     only one man, he passes off the maintenance of the stable kernel branch
109     to someone he can trust to handle it once it has stabilized. Thus, Alan
110     Cox became the maintainer of the Linux-2.2 kernel series and Marcelo
111     Tosatti became the maintainer of the Linux-2.4 kernel series. This is
112     what all the other patch sets in the 2.4 series are based on. Marcelo has
113     been doing an outstanding job with its maintenance and it can be
114     counted on for stability and up-to-date (if not bleeding edge) hardware
115     support.
116     </p>
117    
118     <p>
119     <c>vanilla-sources</c> are probably the most stable sources available
120     since they are the most tested and all possible kernel sources are based
121     on them. If you don't need any of the extras that the other kernels supply
122     then the <c>vanilla-sources</c> are your thing.
123     </p>
124    
125     </body>
126     </section>
127     <section>
128     <title>gs-sources</title>
129     <body>
130    
131     <p>
132     For users to whom desktop interactive performance comes as a secondary
133     priority to reliability and hardware support, we have the
134     <c>gs-sources</c>. GS stands for Gentoo Stable (creative, aren't we?).
135     This patch set is tuned and tested to provide the best support for the
136     latest hardware and ensures that your mission critical servers will be
137     up when you need them. This kernel doesn't have some of the most
138     aggressive performance tuning patches from the <c>gentoo-sources</c>,
139     but rest assured, the great performance that you know and love from the
140     vanilla kernels are alive and well. Where possible and without
141     compromising stability we add server related performance patches.
142     </p>
143    
144     <p>
145     This kernel provides support for the latest ACPI subsystem, EVMS, ECC
146     (required for HA Linux systems), Encrypted Loopback devices, NTFS, Win4Lin
147     and XFS. It also contains updates for IDE, ext3 and several network cards
148     amongst other patches.
149     </p>
150    
151     <p>
152     In other words, these sources are perfect for servers and
153     High-Availability systems.
154     </p>
155    
156     <p>
157     The following USE-flags can be set to select optional patches:
158     </p>
159    
160     <table>
161     <tr><th>Flags</th><th>Description</th></tr>
162     <tr><ti>crypt</ti><ti>Apply cryptographic patches</ti></tr>
163     </table>
164    
165     </body>
166     </section>
167     <section>
168 swift 1.3 <title>gentoo-test-sources</title>
169 swift 1.1 <body>
170    
171     <p>
172 swift 1.3 <c>gentoo-test-sources</c> are what will become <c>gentoo-sources</c> after
173 swift 1.1 lots of testing and QA. Patches to the <c>gentoo-sources</c> are first
174 swift 1.3 added to <c>gentoo-test-sources</c> for testing. So if you want the
175 swift 1.1 performance of <c>gentoo-sources</c> with the most recent possible
176 swift 1.3 patches, use <c>gentoo-test-sources</c>.
177 swift 1.1 </p>
178    
179     <p>
180     The following USE-flags can be set to select optional patches:
181     </p>
182    
183     <table>
184     <tr><th>Flag</th><th>Description</th></tr>
185     <tr><ti>aavm</ti><ti>Use Andrea Arcangeli's memory management</ti></tr>
186     <tr><ti>evms2</ti><ti>Use EVMS 2.0.1 instead of EVMS 1.2.1</ti></tr>
187     <tr><ti>crypt</ti><ti>Apply Cryptographic patches</ti></tr>
188     <tr><ti>usagi</ti><ti>Keep USAGI, drop superfreeswan, patch-int, loop-jari</ti></tr>
189     </table>
190    
191     </body>
192     </section>
193     <section>
194     <title>hardened-sources</title>
195     <body>
196    
197     <p>
198     <c>hardened-sources</c> provides patches for the various subprojects of
199     Gentoo Hardened, together with stability/security-enhancements. Check
200     <uri>http://www.gentoo.org/proj/en/hardened/</uri> for more information.
201     </p>
202    
203     <p>
204     The following USE-flags can be set to select optional patches:
205     </p>
206    
207     <table>
208     <tr><th>Flags</th><th>Description</th></tr>
209     <tr><ti>selinux</ti><ti>Substitute grSecurity with SELinux support</ti></tr>
210     </table>
211    
212     </body>
213     </section>
214     <section>
215     <title>xfs-sources</title>
216     <body>
217    
218     <p>
219     <c>xfs-sources</c> contains support for EVMS, ACPI, grSecurity and, what
220     you probably already figured out by now, the latest XFS support patches
221     from the XFS Development. The Gentoo LiveCD uses <c>xfs-sources</c>, if
222     you must know :-)
223     </p>
224    
225     <p>
226     More information about XFS on <uri>http://oss.sgi.com/projects/xfs/</uri>.
227     </p>
228    
229     <p>
230     You can select the following USE-flags to select optional patches:
231     </p>
232    
233     <table>
234     <tr><th>Flags</th><th>Description</th></tr>
235     <tr><ti>crypt</ti><ti>Apply cryptographic patches</ti></tr>
236     </table>
237    
238     </body>
239     </section>
240     <section>
241     <title>Architecture dependent kernels</title>
242     <body>
243    
244     <p>
245     <c>alpha-sources</c>, <c>arm-sources</c>, <c>hppa-sources</c>,
246     <c>mips-sources</c>, <c>ppc-sources</c> and <c>sparc-sources</c> are, as
247     their names suggest, patched to run best on specific architectures. They
248     also contain some of the patches for hardware and features support from
249     the other patch sets mentioned above and below.
250     </p>
251    
252     </body>
253     </section>
254     <section>
255     <title>ppc-sources-benh</title>
256     <body>
257    
258     <p>
259     The <c>ppc-sources-benh</c> ebuilds provide additional hardware
260     support for the <c>ppc-sources</c> kernel. It is slightly more
261     experimental than the <c>ppc-sources</c>.
262     </p>
263    
264     </body>
265     </section>
266     <section>
267     <title>ppc-sources-crypto</title>
268     <body>
269    
270     <p>
271     The <c>ppc-sources-crypto</c> ebuilds provide CryptoAPI
272     support for the Gentoo Linux PPC Kernel. More information about
273     CryptoAPI can be found on <uri>http://www.kerneli.org/about/</uri>.
274     </p>
275    
276     </body>
277     </section>
278     <section>
279     <title>ppc-sources-dev</title>
280     <body>
281    
282     <p>
283     The <c>ppc-sources-dev</c> packages provide the development sources for
284     <c>ppc-sources</c>. Every patch which should become part of
285     <c>ppc-sources</c> has to go through <c>ppc-sources-dev</c> first.
286     </p>
287    
288     </body>
289     </section>
290     <section>
291     <title>compaq-sources</title>
292     <body>
293    
294     <p>
295     The <c>compaq-sources</c> provide RedHat's kernel sources for Alpha,
296     maintained by Compaq.
297     </p>
298    
299     </body>
300     </section>
301     </chapter>
302    
303     <chapter>
304     <title>The Choices, Part II</title>
305     <section>
306     <body>
307    
308     <p>
309     Now I'm going to try to briefly describe some of the other
310     <path>sys-kernel/*-sources</path> which you saw scroll by when you ran
311     <c>emerge -s sources</c>. Lets take them in alphabetical order.
312     </p>
313    
314     </body>
315     </section>
316     <section>
317     <title>aa-sources</title>
318     <body>
319    
320     <p>
321     First we have <c>aa-sources</c>. This is Andrea Arcangeli's patch set.
322     Andrea is known as an amazing coder by many other kernel hackers. His
323     kernel patch set has some of the most aggressively tuned VM (Virtual
324     Memory) patches known to mankind. When I last looked, it also contained
325     SGI's XFS filesystem and the O(1) scheduler by Ingo Molar (which will
326     become the default scheduler for Linux 2.6).
327     </p>
328    
329     <p>
330     It also provides User Mode Linux support (check out our
331     <uri link="/doc/en/uml.xml">UML Guide</uri> for more information) and
332     the latest TUX Webserver (an in-kernel webserver).
333     </p>
334    
335     <p>
336     If you have Memory Management troubles with other kernels,
337     <c>aa-sources</c> can be your solution. If you want to optimize Linux's
338     Memory Management for your system, <c>aa-sources</c> is <e>definitely</e>
339     what you need.
340     </p>
341    
342     <p>
343     Visit
344     <uri>http://www.kernel.org/pub/linux/kernel/people/andrea/kernels/v2.4</uri>
345     for more information about all the patches in these kernel sources.
346     </p>
347    
348     </body>
349     </section>
350     <section>
351     <title>ac-sources</title>
352     <body>
353    
354     <p>
355     Next we have the <c>ac-sources</c>. This is Alan Cox's patch set against
356     the 2.4 kernel series. In this patch set you will find the O(1)
357     scheduler, the latest updates to the 2.4 IDE system and many other
358     patches that are waiting for possible inclusion in the 2.4 kernel
359     series.
360     </p>
361    
362     <p>
363     This kernel is known to have very decent support for several additional
364     hardware and may be a candidate for you if you need a stable but less
365     conservative kernel than the <c>vanilla-sources</c>.
366     </p>
367    
368     <p>
369     Check out
370     <uri>http://www.kernel.org/pub/linux/kernel/people/alan/linux-2.4/</uri>
371     to get a look at what Alan is working on.
372     </p>
373    
374     </body>
375     </section>
376     <section>
377     <title>ck-sources</title>
378     <body>
379    
380     <p>
381     <c>ck-sources</c> is Con Kolivas's kernel patch set. This kernel is
382     <e>HIGHLY</e> tuned for desktop performance at the expense of
383     throughput and some of the scheduler's ability to prioritize
384     applications. Con Kolivas benchmarks kernels to find the best
385     combination of features for desktop use. See
386     <uri>http://kernel.kolivas.org</uri> for more information on Con and his
387     patches.
388     </p>
389    
390     </body>
391     </section>
392     <section>
393     <title>development-sources</title>
394     <body>
395    
396     <p>
397     <c>development-sources</c> is the current unstable kernel branch. This
398     is the branch of the Linux kernel that Linus himself maintains. This
399     rapidly changing playground is where the features for the next stable
400     branch are implemented, enhanced and tested before they are released
401     to the vast majority of Linux users.
402     </p>
403    
404     <p>
405     If you want the latest, bleeding edge support and experimental core-system
406     changes, this is what you want. Note however that these are <e>highly</e>
407     experimental kernel sources and it is advised <e>not</e> to use them on mission
408     critical or production systems.
409     </p>
410    
411     <warn>
412     Do note that Gentoo Linux does not support issues with or related
413     to the <c>development-sources</c> or derivatives as it changes too often
414     and is known to break things occasionally.
415     </warn>
416    
417     </body>
418     </section>
419     <section>
420     <title>gaming-sources</title>
421     <body>
422    
423     <p>
424     <c>gaming-sources</c> are based on <c>ck-sources</c> and are therefore
425     tuned for high performance. They also contain patches for the latest
426     game-related hardware (graphic cards, sound cards, and such).
427     </p>
428    
429     <p>
430     If you are a hardcore gamer, this is your choice.
431     </p>
432    
433     </body>
434     </section>
435     <section>
436     <title>mm-sources</title>
437     <body>
438    
439     <p>
440     The <c>mm-sources</c> are based on the <c>development-sources</c> and
441     contain Andrew Morton's patch set. It assembles several other patches,
442     like ext2/3 Extended Attributes and Access Control Lists, Page Table
443     Sharing, the Orlov Allocator, non-linear mapping behaviour, etc into one
444     patch set.
445     </p>
446    
447     <p>
448     If you really want to live on the edge and you think
449     <c>development-sources</c> are for wussies, then try out
450     <c>mm-sources</c>.
451     </p>
452    
453     </body>
454     </section>
455     <section>
456     <title>mosix-sources</title>
457     <body>
458    
459     <p>
460     The <c>mosix-sources</c> are patched to support MOSIX operation for
461     clustered computing. A cluster is a set of nodes (PCs) with software
462     that enables them to handle tasks in a distributed manner. With
463     clusters, you don't need high-profile supercomputers to do lengthy
464     tasks. For more information see <uri>http://www.mosix.org</uri>.
465     </p>
466    
467     </body>
468     </section>
469     <section>
470     <title>openmosix-sources</title>
471     <body>
472    
473     <p>
474     The <c>openmosix-sources</c> are patched to support the openMosix system
475     (like MOSIX but Open Source). For more information see
476     <uri>http://www.openmosix.org</uri>.
477     </p>
478    
479     </body>
480     </section>
481    
482     <!--
483     TODO: Add descriptions of the other ppc-sources here
484     -->
485    
486     <section>
487     <title>redhat-sources</title>
488     <body>
489    
490     <p>
491     The <c>redhat-sources</c> are, as the name suggests, the sources for the
492     RedHat Linux kernel. Thanks to the wonders of Open Source, anyone can
493     take advantage of the work the RedHat engineers put into making their
494     kernels. We at Gentoo have provided an ebuild so that you can easily
495     use this kernel with Gentoo.
496     </p>
497    
498     </body>
499     </section>
500     <section>
501     <title>rsbac-sources</title>
502     <body>
503    
504     <p>
505     <c>rsbac-sources</c> contain the patches from
506     <uri>http://www.rsbac.org</uri>. RSBAC stands for <e>Rule Set Based
507     Access Control</e>. These kernel patches allow you to authorize users
508     based on rules instead of normal uid/gid permissions.
509     </p>
510    
511     </body>
512     </section>
513     <section>
514     <title>selinux-sources</title>
515     <body>
516    
517     <p>
518     <c>selinux-sources</c> from <uri>http://www.nsa.gov/selinux</uri> are
519     patches for the security conscious to support the LSM (Linux Security
520     Modules) and the Flask Security Architecture.
521     </p>
522    
523     </body>
524     </section>
525     <section>
526     <title>usermode-sources</title>
527     <body>
528    
529     <p>
530     <c>usermode-sources</c> are the User Mode Linux kernel patches. This
531     kernel is designed to allow Linux to run within Linux to run within Linux
532     to ... User Mode Linux is intended for testing and virtual server support.
533     For more information about this amazing tribute to the stability and
534     scalability of Linux, see <uri>http://user-mode-linux.sourceforge.net</uri>.
535     </p>
536    
537     <p>
538     For more information on UML and Gentoo, read the
539     <uri link="/doc/en/uml.xml">Gentoo UML Guide</uri>.
540     </p>
541    
542     </body>
543     </section>
544     <section>
545     <title>win4lin-sources</title>
546     <body>
547    
548     <p>
549     <c>win4lin-sources</c> are patched to support the userland win4lin tools
550     that allow Linux users to run many Microsoft Windows (TM) applications
551     at almost native speeds. See <uri>http://www.netraverse.com/</uri> for more
552     information.
553     </p>
554    
555     </body>
556     </section>
557     <section>
558     <title>wolk-sources</title>
559     <body>
560    
561     <p>
562     <c>wolk-sources</c> contains the <e>Working Overloaded Linux Kernel</e> from
563     <uri>http://sourceforge.net/projects/wolk</uri>. This kernel contains
564     many patches of a wide variety, all combined into the kernel with
565     extreme care. This allows you to configure nearly every one into and out
566     of the kernel at compile time -- so the kernel will work with nearly any
567     combination of the patches.
568     </p>
569    
570     <p>
571     If you need a certain combination of patches that you cannot find in other
572     kernel sources, WOLK is definitely worth a shot.
573     </p>
574    
575     </body>
576     </section>
577     </chapter>
578     </guide>

  ViewVC Help
Powered by ViewVC 1.1.20