/[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.4 - (show annotations) (download) (as text)
Sat Nov 15 00:35:18 2003 UTC (10 years, 11 months ago) by neysx
Branch: MAIN
Changes since 1.3: +1 -0 lines
File MIME type: application/xml
Added $Header$ cvs tag -- NO CONTENT CHANGE

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

  ViewVC Help
Powered by ViewVC 1.1.20