/[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.1 - (hide annotations) (download) (as text)
Sun May 18 09:49:39 2003 UTC (11 years, 1 month ago) by swift
Branch: MAIN
File MIME type: application/xml
New document

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

  ViewVC Help
Powered by ViewVC 1.1.20