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

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.16 Revision 1.39
1<?xml version="1.0" encoding="UTF-8"?> 1<?xml version="1.0" encoding="UTF-8"?>
2<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/gentoo-kernel.xml,v 1.16 2004/10/11 22:53:22 neysx Exp $ --> 2<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/gentoo-kernel.xml,v 1.39 2006/01/31 01:15:42 flammie Exp $ -->
3 3
4<!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> 4<!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
5<guide link="/doc/en/gentoo-kernel.xml"> 5<guide link="/doc/en/gentoo-kernel.xml">
6<title>Gentoo Linux Kernel Guide</title> 6<title>Gentoo Linux Kernel Guide</title>
7<author title="Author"> 7<author title="Author">
8 <mail link="swift@gentoo.org">Sven Vermeulen</mail> 8 <mail link="swift@gentoo.org">Sven Vermeulen</mail>
9</author> 9</author>
10<author title="Contributor"> 10<author title="Contributor">
11 <mail link="lostlogic@gentoo.org">Brandon Low</mail> 11 <mail link="lostlogic@gentoo.org">Brandon Low</mail>
12</author> 12</author>
13<author title="Editor"> 13<author title="Editor">
14 <mail link="dsd@gentoo.org">Daniel Drake</mail>
15</author>
16<author title="Editor">
14 <mail link="carl@gentoo.org">Carl Anderson</mail> 17 <mail link="carl@gentoo.org">Carl Anderson</mail>
15</author> 18</author>
16<author title="Editor"> 19<author title="Editor">
17 <mail link="peesh@gentoo.org">Jorge Paulo</mail> 20 <mail link="peesh@gentoo.org">Jorge Paulo</mail>
18</author> 21</author>
19<author title="Editor"> 22<author title="Editor">
20 <mail link="bennyc@gentoo.org">Benny Chuang</mail> 23 <mail link="bennyc@gentoo.org">Benny Chuang</mail>
21</author> 24</author>
22<author title="Editor"> 25<author title="Editor">
23 <mail link="g.guidi@sns.it">Gregorio Guidi</mail> 26 <mail link="greg_g@gentoo.org">Gregorio Guidi</mail>
27</author>
28<author title="Editor">
29 <mail link="fox2mike@gentoo.org">Shyam Mani</mail>
24</author> 30</author>
25 31
26<abstract> 32<abstract>
27This document gives you an overview on all kernel sources that Gentoo 33This document gives you an overview on all kernel sources that Gentoo
28provides through Portage. 34provides through Portage.
29</abstract> 35</abstract>
30 36
37<!-- The content of this document is licensed under the CC-BY-SA license -->
38<!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
31<license/> 39<license/>
32 40
33<version>0.7.3</version> 41<version>1.13</version>
34<date>October 12, 2004</date> 42<date>2006-01-30</date>
35 43
36<chapter> 44<chapter>
37<title>Introduction</title> 45<title>Introduction</title>
38<section> 46<section>
39<body> 47<body>
51</body> 59</body>
52</section> 60</section>
53</chapter> 61</chapter>
54 62
55<chapter> 63<chapter>
56<title>The Choices, Part I</title> 64<title>Supported kernel packages</title>
57<section> 65<section>
58<title>genkernel</title> 66<title>genkernel</title>
59<body> 67<body>
60 68
61<p> 69<p>
70</p> 78</p>
71 79
72</body> 80</body>
73</section> 81</section>
74<section> 82<section>
75<title>gentoo-sources</title> 83<title>General purpose: gentoo-sources</title>
76<body>
77
78<p>
79For most users, the recommended kernel sources are the
80<c>gentoo-sources</c>. The <c>gentoo-sources</c> package contains various
81kernel patches, designed to improve user experience with respect to different
82areas. Speaking of <e>security</e>: you can find support for
83<uri link="http://www.grsecurity.net">grsecurity</uri>, together with other
84security enhancements and, naturally, all the recent fixes for known
85vulnerabilities. The included patches deal also with <e>performance</e>
86(including tweaks for desktop usage and support for recent hardware) and
87<e>features</e> (supermount, bootsplash, the latest NTFS drivers, and more).
88</p>
89
90<p>
91The <c>gentoo-sources</c> (together with <c>gentoo-dev-sources</c>) absorb
92most of the resources of the Gentoo kernel team. They are brought to you by a
93group of talented developers, which can count on the expertise of popular
94kernel hacker Greg Kroah-Hartman, maintainer of udev and responsible for the
95USB and PCI subsystems of the official linux kernel.
96</p>
97
98</body> 84<body>
99</section> 85
86<p>
87For most users, we recommend the <c>gentoo-sources</c> kernel. Since the
882005.0 release, Gentoo Linux uses 2.6 as the default kernel. Unless you are
89specifically using the 2.4 profile, <c>gentoo-sources</c> will be a 2.6 kernel
90on <e>most</e> architectures.
91</p>
92
93<p>
94<c>gentoo-sources</c> is a kernel based on Linux 2.6, with various kernel
95patches included to fix security problems, kernel bugs, and to increase
96compatibility with the more uncommon system architectures. Linux 2.6 is
97the current official stable kernel tree, and development is progressing
98rapidly. For highest performance, best hardware support, and its large
99new feature set, we recommend 2.6 over its older 2.4 counterpart.
100</p>
101
102<p>
103Some of the more uncommon system architectures are not fully compatible with
104Linux 2.6, and some users prefer to the tried-and-tested Linux 2.4 kernel;
105for this reason we provide <c>gentoo-sources</c> (the 2.4 version). The
106patches included in this kernel are similar to those included in its 2.6
107counterpart, plus a number of patches designed to add functionality and
108improve performance. Linux 2.4 is currently not being developed further - only
109bug and security fixes are being included in the newer releases. If you are
110able to, we suggest that you upgrade to Linux 2.6. You may find the
111<uri link="/doc/en/migration-to-2.6.xml">migration document</uri> useful.
112</p>
113
114<p>
115The <c>gentoo-sources</c> package absorbs most of the resources of the Gentoo
116kernel team. They are brought to you by a group of talented developers, which
117can count on the expertise of popular kernel hacker Greg Kroah-Hartman,
118maintainer of udev and responsible for the USB and PCI subsystems of the
119official Linux kernel.
120</p>
121
122</body>
100<section> 123</section>
124<section>
101<title>vanilla-sources</title> 125<title>Plain kernels: vanilla-sources</title>
102<body> 126<body>
103 127
104<p> 128<p>
105The next kernel sources that many of you will probably be familiar with 129The next kernel sources that many of you will probably be familiar with
106as Linux users are the <c>vanilla-sources</c>. These are the official 2.4 130as Linux users are the <c>vanilla-sources</c>. These are the official kernel
107kernel sources released on <uri>http://www.kernel.org/</uri>, maintained 131sources released on <uri>http://www.kernel.org/</uri>. Please note that we do
108(contrary to popular belief) not by Linus Torvalds himself, but by Marcelo 132not patch these kernels at all - these are purely for people who wish to run
109Tosatti. Linus is the leader of active kernel development, but as he is 133a completely unmodified Linux kernel.
110only one man, he passes off the maintenance of the stable 2.4 kernel branch
111to someone he can trust to handle it once it has stabilized. Thus, Alan
112Cox became the maintainer of the Linux-2.2 kernel series and Marcelo
113Tosatti became the maintainer of the Linux-2.4 kernel series. This is
114what all the other patch sets in the 2.4 series are based on. Marcelo has
115been doing an outstanding job with its maintenance and it can be
116counted on for stability and up-to-date (if not bleeding edge) hardware
117support.
118</p>
119
120<p> 134</p>
121<c>vanilla-sources</c> are probably the most stable sources available 135
122since they are the most tested and all possible kernel sources are based
123on them. If you don't need any of the extras that the other kernels supply
124then the <c>vanilla-sources</c> are your thing.
125</p> 136<p>
137Similar to <c>gentoo-sources</c>, two versions of the kernel can be found
138under this package: 2.4 and 2.6.
139</p>
126 140
141<p>
142Linux 2.4 is maintained by Marcelo Tosatti. Linus Torvalds, the original
143creator of Linux, handed maintainership of the Linux 2.4 branch over to
144Marcelo when Linus went off to start developing the newer 2.6 kernel tree.
145Marcelo has done a fine job of keeping 2.4 stable and secure, and is now
146only accepting security and bug fixes into the 2.4 kernel tree. Actual
147development happens in the Linux 2.6 kernel tree.
148</p>
149
150<p>
151Linux 2.6 is maintained by Andrew Morton, who works closely with Linus
152Torvalds to deliver a fast, powerful, and feature-packed Linux kernel.
153Development is happening at incredible pace and this kernel tree is now very
154mature.
155</p>
156
127</body> 157</body>
128</section>
129<section> 158</section>
130<title>gentoo-dev-sources</title>
131<body>
132 159
133<p>
134The <c>gentoo-dev-sources</c> ebuild includes the most up-to-date 2.6 kernel
135with Gentoo's optimized performance patches.
136</p>
137
138</body>
139</section> 160<section>
140<section> 161<title>For servers: hardened-sources and rsbac-sources</title>
141<title>development-sources</title>
142<body>
143
144<p>
145The <c>development-sources</c> ebuild provides the stable 2.6 Linux kernel. As
146opposed to what the name might suggest, this kernel source is completely stable
147and production-ready. This is the official 2.6 kernel released on
148<uri>http://www.kernel.org/</uri>.
149</p>
150
151</body> 162<body>
152</section>
153<section>
154<title>hardened-sources</title>
155<body>
156 163
157<p>
158<c>hardened-sources</c> provides patches for the various subprojects of
159Gentoo Hardened (such as support for LSM/SELinux and GRSecurity), together
160with stability/security-enhancements. Check
161<uri>http://www.gentoo.org/proj/en/hardened/</uri> for more information.
162</p> 164<p>
163 165<c>hardened-sources</c> is based on the official Linux kernel and is targeted
166at our users running Gentoo on server systems. It provides patches for the
167various subprojects of Gentoo Hardened (such as support for
168<uri link="http://www.nsa.gov/selinux/">LSM/SELinux</uri> and
169<uri link="http://grsecurity.net">grsecurity</uri>), together with
170stability/security-enhancements. Like <c>gentoo-sources</c> it comes in 2.6
171and 2.4 versions. Check <uri>http://www.gentoo.org/proj/en/hardened/</uri> for
172more information.
164<p> 173</p>
165The following USE-flags can be set to select optional patches: 174
166</p> 175<p>
167 176<c>rsbac-sources</c> contains patches to use Rule Set Based Access Controls
168<table> 177(<uri link="http://www.rsbac.org">RSBAC</uri>) and comes in 2.4 and 2.6
169<tr><th>Flags</th><th>Description</th></tr> 178flavours. It is maintained by the <uri link="/proj/en/hardened/rsbac/">RSBAC
170<tr><ti>selinux</ti><ti>Substitute grSecurity with SELinux support</ti></tr> 179project</uri>, a sub-project of Gentoo Hardened.
171</table>
172
173</body>
174</section>
175<section>
176<title>hardened-dev-sources</title>
177<body>
178
179<p> 180</p>
180<c>hardened-dev-sources</c> use the 2.6 kernel with the patches provided by the 181
181various subprojects of Gentoo Hardened. 182<impo>
182</p> 183These kernels provide powerful patches for enhanced security. Please read the
184<uri link="/proj/en/hardened/">documentation</uri> before you use them.
185</impo>
183 186
184</body> 187</body>
185</section> 188</section>
186<section> 189<section>
187<title>Architecture dependent kernels</title> 190<title>Architecture dependent kernels</title>
188<body> 191<body>
189 192
190<p> 193<p>
191<c>alpha-sources</c>, <c>hppa-sources</c>, <c>hppa-dev-sources</c>, 194<c>alpha-sources</c>, <c>hppa-sources</c>,<c>mips-sources</c>, <c>sh-sources</c>
192<c>ia64-sources</c>, <c>mips-sources</c>, <c>ppc-sources</c>, 195<c>sparc-sources</c> and <c>xbox-sources</c> are, as their names suggest,
193<c>pegasos-sources</c>, <c>pegasos-dev-sources</c>, <c>sparc-sources</c> 196patched to run best on specific architectures. They also contain some of the
194and <c>xbox-sources</c> are, as their names suggest, patched to run best on 197patches for hardware and features support from the other patch sets mentioned
195specific architectures. They also contain some of the patches for hardware and 198above and below.
196features support from the other patch sets mentioned above and below. Kernel
197sources that contains a "-dev-" means that the sources use the 2.6 kernel
198instead of the 2.4 kernel.
199</p>
200
201<p>
202The <c>compaq-sources</c> provide RedHat's kernel sources for Alpha,
203maintained by Compaq.
204</p> 199</p>
205 200
206</body> 201</body>
207</section> 202</section>
208</chapter> 203</chapter>
209 204
210<chapter> 205<chapter>
211<title>The Choices, Part II</title> 206<title>Unsupported kernel packages</title>
212<section> 207<section>
213<body> 208<body>
214 209
215<p> 210<p>
216Now I'm going to try to briefly describe some of the other 211Now I'm going to try to briefly describe some of the other
217<path>sys-kernel/*-sources</path> which you saw scroll by when you ran 212<path>sys-kernel/*-sources</path> which you saw scroll by when you ran
218<c>emerge -s sources</c>. Lets take them in alphabetical order. 213<c>emerge -s sources</c>. Lets take them in alphabetical order. These
219</p> 214kernels are provided as a courtesy only and the various patch sets are not
220 215supported by the Gentoo team.
221</body>
222</section>
223<section>
224<title>aa-sources</title>
225<body>
226
227<p>
228First we have <c>aa-sources</c>. This is Andrea Arcangeli's patch set.
229Andrea is known as an amazing coder by many other kernel hackers. His
230kernel patch set has some of the most aggressively tuned VM (Virtual
231Memory) patches known to mankind.
232</p>
233
234<p>
235It also provides User Mode Linux support (check out our
236<uri link="/doc/en/uml.xml">UML Guide</uri> for more information) and
237the latest TUX Webserver (an in-kernel webserver).
238</p>
239
240<p>
241If you have Memory Management troubles with other kernels,
242<c>aa-sources</c> can be your solution. If you want to optimize Linux's
243Memory Management for your system, <c>aa-sources</c> is <e>definitely</e>
244what you need.
245</p>
246
247<p>
248Visit
249<uri>http://www.kernel.org/pub/linux/kernel/people/andrea/kernels/v2.6</uri>
250for more information about all the patches in these kernel sources.
251</p> 216</p>
252 217
253</body> 218</body>
254</section> 219</section>
255<section> 220<section>
256<title>ck-sources</title> 221<title>ck-sources</title>
257<body> 222<body>
258 223
259<p> 224<p>
260<c>ck-sources</c> is Con Kolivas's kernel patch set. This kernel is 225<c>ck-sources</c> is Con Kolivas's kernel patch set. This patchset is
261<e>HIGHLY</e> tuned for desktop performance at the expense of 226primarily designed to improve system responsiveness and interactivity and is
262throughput and some of the scheduler's ability to prioritize 227configurable for varying workloads (from servers to desktops). The patchset is
263applications. Con Kolivas benchmarks kernels to find the best 228also quite mature and has been put through numerous iterations of development
264combination of features for desktop use. See 229and tuning. The emphasis of each release is on stability and security. Support
265<uri>http://kernel.kolivas.org</uri> for more information on Con and his 230and information is available at <uri>http://kernel.kolivas.org</uri> and in
266patches. 231<c>#ck</c> on <c>irc.oftc.net</c>.
267</p> 232</p>
268 233
269</body> 234</body>
270</section>
271<section> 235</section>
236<section>
272<title>grsec-sources</title> 237<title>git-sources</title>
273<body> 238<body>
274 239
275<p> 240<p>
276The <c>grsec-sources</c> kernel source is patched with the latest GRSecurity 241The <c>git-sources</c> package tracks daily snapshots of the upstream
277updates (GRSecurity version 2.0 and up) which includes, amongst other 242development kernel tree. You should run these kernels if you are interested in
278security-related patches, support for PaX. 243kernel development or testing. Bugreports should go to the <uri
244link="http://bugme.osdl.org/">Linux Kernel Bug Tracker</uri> or LKML (Linux
245Kernel Mailing List).
279</p> 246</p>
280 247
281</body> 248</body>
282</section> 249</section>
283<section> 250<section>
284<title>mm-sources</title> 251<title>mm-sources</title>
285<body> 252<body>
286 253
287<p> 254<p>
288The <c>mm-sources</c> are based on the <c>development-sources</c> and contain 255The <c>mm-sources</c> are based on the <c>vanilla-sources</c> and contain
289Andrew Morton's patch set. They include the experimental and bleeding-edge 256Andrew Morton's patch set. They include the experimental and bleeding-edge
290features that are going to be included in the official kernel (or that are 257features that are going to be included in the official kernel (or that are
291going to be rejected because they set your box on fire). They are known to be 258going to be rejected because they set your box on fire). They are known to be
292always moving at a fast pace and can change radically from one week to the 259always moving at a fast pace and can change radically from one week to the
293other; kernel hackers use them as a testing ground for new stuff. 260other; kernel hackers use them as a testing ground for new stuff.
294</p> 261</p>
295 262
296<p> 263<p>
297If you really want to live on the edge and you think 264If you really want to live on the edge and you think
298<c>development-sources</c> are for wussies, then try out 265<c>vanilla-sources</c> are for wussies, then try out
299<c>mm-sources</c>. 266<c>mm-sources</c>. Be warned that this kernel is highly experimental and
267doesn't always work as expected.
300</p> 268</p>
301 269
302</body> 270</body>
303</section> 271</section>
304<section> 272<section>
305<title>openmosix-sources</title> 273<title>openmosix-sources</title>
306<body> 274<body>
307 275
308<p> 276<p>
309The <c>openmosix-sources</c> are patched to support the openMosix system 277The <c>openmosix-sources</c> are patched to support the openMosix system
310(like MOSIX but Open Source). For more information see 278(a cluster oriented kernel patchset like MOSIX but Open Source). For more
311<uri>http://www.openmosix.org</uri>. 279information see <uri>http://www.openmosix.org</uri>.
312</p> 280</p>
313 281
314</body> 282</body>
315</section>
316<section> 283</section>
317<title>pac-sources</title>
318<body>
319
320<p>
321The <c>pac-sources</c> kernel tree is patched with Bernhard Rosenkraenzer's
322(bero) patches.
323</p>
324
325</body>
326</section> 284<section>
285<title>openvz-sources</title>
286<body>
287
288<p>
289OpenVZ is a server virtualization solution built on Linux. OpenVZ creates
290isolated, secure virtual private servers (VPSs) or virtual environments on a
291single physical server enabling better server utilization and ensuring that
292applications do not conflict. For more information, see
293<uri>http://www.openvz.org</uri>.
294</p>
295
296</body>
327<section> 297</section>
298<section>
299<title>suspend2-sources</title>
300<body>
301
302<p>
303The <c>suspend2-sources</c> are patched with both genpatches
304which includes the patches found in gentoo-sources, and <uri
305link="http://www.suspend2.net">Software Suspend 2</uri> which is a new
306and improved implementation of suspend-to-disk for the Linux kernel.
307</p>
308
309<p>
310This kernel is recommended for laptop users who often rely on being able
311to suspend their laptop and resume work elsewhere.
312</p>
313
314</body>
315</section>
316<section>
328<title>selinux-sources</title> 317<title>uclinux-sources</title>
329<body> 318<body>
330 319
331<p> 320<p>
332<c>selinux-sources</c> from <uri>http://www.nsa.gov/selinux</uri> are 321The <c>uclinux-sources</c> are meant for CPUs without MMUs as well as embedded
333patches for the security conscious to support the LSM (Linux Security 322devices. For more information, see <uri>http://www.uclinux.org</uri>.
334Modules) and the Flask Security Architecture.
335</p> 323</p>
336 324
337</body> 325</body>
338</section> 326</section>
339<section> 327<section>
353<uri link="/doc/en/uml.xml">Gentoo UML Guide</uri>. 341<uri link="/doc/en/uml.xml">Gentoo UML Guide</uri>.
354</p> 342</p>
355 343
356</body> 344</body>
357</section> 345</section>
346</chapter>
347
348<chapter>
349<title>Previously provided kernel packages</title>
350<section>
351<title>aa-sources</title>
352<body>
353
354<p>
355<c>aa-sources</c> was a heavily modified kernel with all kinds of patches.
356The upstream maintainer has stopped releasing kernel patchsets, this package
357was removed as it went out of date.
358</p>
359
360</body>
361</section>
362<section>
363<title>alpha-sources</title>
364<body>
365
366<p>
367<c>alpha-sources</c> was a 2.4 kernel with patches applied to improve hardware
368compatibility for the Alpha architecture. These patches have been developed
369and included in the mainline kernel. Alpha users can now run any recent kernel
370with no need for extra patches.
371</p>
372
373</body>
374</section>
375<section>
376<title>development-sources</title>
377<body>
378
379<p>
380<c>development-sources</c>, the official 2.6 kernel from kernel.org, can now
381be found under the <c>vanilla-sources</c> package.
382</p>
383
384</body>
385</section>
386<section>
387<title>gentoo-dev-sources</title>
388<body>
389
390<p>
391<c>gentoo-dev-sources</c>, a 2.6 kernel patched with bug, security and
392stability fixes, can now be found under the <c>gentoo-sources</c> package.
393</p>
394
395</body>
396</section>
397<section>
398<title>grsec-sources</title>
399<body>
400
401<p>
402The <c>grsec-sources</c> kernel source used to be patched with the latest
403grsecurity updates (grsecurity version 2.0 and up) which included, amongst
404other security-related patches, support for PaX. As grsecurity patches are
405included in <c>hardened-sources</c>, this package is no longer in Portage.
406</p>
407
408</body>
409</section>
410<section>
411<title>hardened-dev-sources</title>
412<body>
413
414<p>
415<c>hardened-dev-sources</c> can now be found under the <c>hardened-sources</c>
416package.
417</p>
418
419</body>
420</section>
421<section>
422<title>rsbac-dev-sources</title>
423<body>
424
425<p>
426The <c>rsbac-dev-sources</c> kernels can now be found under the
427<c>rsbac-sources</c> package.
428</p>
429
430</body>
431</section>
432<section>
433<title>selinux-sources</title>
434<body>
435
436<p>
437<c>selinux-sources</c>, a 2.4 kernel including lots of security enhancements,
438has been obsoleted by security development in the 2.6 tree. SELinux
439functionality can be found in the <c>hardened-sources</c> package.
440</p>
441
442</body>
443</section>
358<section> 444<section>
359<title>win4lin-sources</title> 445<title>win4lin-sources</title>
360<body> 446<body>
361 447
362<p> 448<p>
363<c>win4lin-sources</c> are patched to support the userland win4lin tools 449<c>win4lin-sources</c> were patched to support the userland win4lin tools
364that allow Linux users to run many Microsoft Windows (TM) applications 450that allow Linux users to run many Microsoft Windows (TM) applications
365at almost native speeds. See <uri>http://www.netraverse.com/</uri> for more 451at almost native speeds. This was removed due to security issues.
366information.
367</p>
368
369</body>
370</section>
371<section>
372<title>wolk-sources</title>
373<body>
374
375<p>
376<c>wolk-sources</c> contains the <e>Working Overloaded Linux Kernel</e> from
377<uri>http://sourceforge.net/projects/wolk</uri>. This kernel contains
378many patches of a wide variety, all combined into the kernel with
379extreme care. This allows you to configure nearly every one into and out
380of the kernel at compile time -- so the kernel will work with nearly any
381combination of the patches.
382</p>
383
384<p>
385If you need a certain combination of patches that you cannot find in other
386kernel sources, WOLK is definitely worth a shot.
387</p> 452</p>
388 453
389</body> 454</body>
390</section> 455</section>
391</chapter> 456</chapter>

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.39

  ViewVC Help
Powered by ViewVC 1.1.20