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

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