/[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.20 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.20 2004/11/14 10:17:52 swift 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">
21</author> 21</author>
22<author title="Editor"> 22<author title="Editor">
23 <mail link="bennyc@gentoo.org">Benny Chuang</mail> 23 <mail link="bennyc@gentoo.org">Benny Chuang</mail>
24</author> 24</author>
25<author title="Editor"> 25<author title="Editor">
26 <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>
27</author> 30</author>
28 31
29<abstract> 32<abstract>
30This document gives you an overview on all kernel sources that Gentoo 33This document gives you an overview on all kernel sources that Gentoo
31provides through Portage. 34provides through Portage.
32</abstract> 35</abstract>
33 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 -->
34<license/> 39<license/>
35 40
36<version>0.7.6</version> 41<version>1.13</version>
37<date>November 14, 2004</date> 42<date>2006-01-30</date>
38 43
39<chapter> 44<chapter>
40<title>Introduction</title> 45<title>Introduction</title>
41<section> 46<section>
42<body> 47<body>
73</p> 78</p>
74 79
75</body> 80</body>
76</section> 81</section>
77<section> 82<section>
78<title>General purpose: gentoo-sources and gentoo-dev-sources</title> 83<title>General purpose: gentoo-sources</title>
79<body>
80
81<p>
82For most users, the recommended kernel sources are the
83<c>gentoo-sources</c>. The <c>gentoo-sources</c> package contains various
84kernel patches, designed to improve user experience with respect to different
85areas. Speaking of <e>security</e>: you can find support for
86<uri link="http://www.grsecurity.net">grsecurity</uri>, together with other
87security enhancements and, naturally, all the recent fixes for known
88vulnerabilities. The included patches deal also with <e>performance</e>
89(including tweaks for desktop usage and support for recent hardware) and
90<e>features</e> (supermount, bootsplash, the latest NTFS drivers, and more).
91</p>
92
93<p>
94For users looking to take advantage of the new features, stability, and
95performance of Linux 2.6, we provide <c>gentoo-dev-sources</c>. This package
96consists of a minimal patchset providing fixes and enhancement for stability
97and security. This kernel will become our recommended default at some point
98in the near future.
99</p>
100
101<p>
102The <c>gentoo-sources</c> (together with <c>gentoo-dev-sources</c>) absorb
103most of the resources of the Gentoo kernel team. They are brought to you by a
104group of talented developers, which can count on the expertise of popular
105kernel hacker Greg Kroah-Hartman, maintainer of udev and responsible for the
106USB and PCI subsystems of the official Linux kernel.
107</p>
108
109</body> 84<body>
110</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>
111<section> 123</section>
124<section>
112<title>Plain kernels: vanilla-sources and development-sources</title> 125<title>Plain kernels: vanilla-sources</title>
113<body> 126<body>
114 127
115<p> 128<p>
116The 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
117as 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
118kernel sources released on <uri>http://www.kernel.org/</uri>, maintained 131sources released on <uri>http://www.kernel.org/</uri>. Please note that we do
119(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
120Tosatti. Linus is the leader of active kernel development, but as he is 133a completely unmodified Linux kernel.
121only one man, he passes off the maintenance of the stable kernel branch
122to someone he can trust to handle it once it has stabilized. Thus, Alan
123Cox became the maintainer of the Linux-2.2 kernel series and Marcelo
124Tosatti became the maintainer of the Linux-2.4 kernel series. This last kernel
125is what all the patch sets in the 2.4 series are based on. Marcelo has
126been doing an outstanding job with its maintenance and it can be
127counted on for stability and up-to-date (if not bleeding edge) hardware
128support.
129</p>
130
131<p> 134</p>
132The <c>development-sources</c> ebuild provides the stable 2.6 Linux kernel. As 135
133opposed to what the name might suggest, this kernel source is completely stable
134and production-ready. This is the official 2.6 kernel released on
135<uri>http://www.kernel.org/</uri>.
136</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>
137 140
138</body> 141<p>
139</section> 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>
140 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
157</body>
141<section> 158</section>
159
160<section>
142<title>For servers: hardened-sources and hardened-dev-sources</title> 161<title>For servers: hardened-sources and rsbac-sources</title>
143<body> 162<body>
144 163
145<p>
146<c>hardened-sources</c> is based on Linux 2.4 and is targetted at our users
147running Gentoo on server systems. It provides patches for the various
148subprojects of Gentoo Hardened (such as support for LSM/SELinux and
149GRSecurity), together with stability/security-enhancements. Check
150<uri>http://www.gentoo.org/proj/en/hardened/</uri> for more information.
151</p> 164<p>
152 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.
153<p> 173</p>
154<c>hardened-dev-sources</c> serves the same purpose as <c>hardened-sources</c> 174
155but is based on the newer Linux 2.6 kernel base.
156</p> 175<p>
157 176<c>rsbac-sources</c> contains patches to use Rule Set Based Access Controls
177(<uri link="http://www.rsbac.org">RSBAC</uri>) and comes in 2.4 and 2.6
178flavours. It is maintained by the <uri link="/proj/en/hardened/rsbac/">RSBAC
179project</uri>, a sub-project of Gentoo Hardened.
158<p> 180</p>
159The following USE-flags can be set to select optional patches:
160</p>
161 181
162<table> 182<impo>
163<tr><th>Flags</th><th>Description</th></tr> 183These kernels provide powerful patches for enhanced security. Please read the
164<tr><ti>selinux</ti><ti>Substitute grSecurity with SELinux support</ti></tr> 184<uri link="/proj/en/hardened/">documentation</uri> before you use them.
165</table> 185</impo>
166 186
167</body> 187</body>
168</section> 188</section>
169<section> 189<section>
170<title>Architecture dependent kernels</title> 190<title>Architecture dependent kernels</title>
171<body> 191<body>
172 192
173<p> 193<p>
174<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>
175<c>mips-sources</c>, <c>pegasos-dev-sources</c>, <c>sparc-sources</c>
176and <c>xbox-sources</c> are, as their names suggest, 195<c>sparc-sources</c> and <c>xbox-sources</c> are, as their names suggest,
177patched to run best on specific architectures. They also contain some of 196patched to run best on specific architectures. They also contain some of the
178the patches for hardware and features support from the other patch sets 197patches for hardware and features support from the other patch sets mentioned
179mentioned above and below. A "-dev-" in the name of a kernel package means that 198above and below.
180the sources use the 2.6 kernel instead of the 2.4 kernel.
181</p> 199</p>
182 200
183</body> 201</body>
184</section> 202</section>
185</chapter> 203</chapter>
198</p> 216</p>
199 217
200</body> 218</body>
201</section> 219</section>
202<section> 220<section>
203<title>aa-sources</title>
204<body>
205
206<p>
207First we have <c>aa-sources</c>. This is Andrea Arcangeli's patch set.
208Andrea is known as an amazing coder by many other kernel hackers. His
209kernel patch set has some of the most aggressively tuned VM (Virtual
210Memory) patches known to mankind.
211</p>
212
213<p>
214It also provides User Mode Linux support (check out our
215<uri link="/doc/en/uml.xml">UML Guide</uri> for more information) and
216the latest TUX Webserver (an in-kernel webserver).
217</p>
218
219<p>
220If you have Memory Management troubles with other kernels,
221<c>aa-sources</c> can be your solution. If you want to optimize Linux's
222Memory Management for your system, <c>aa-sources</c> is <e>definitely</e>
223what you need.
224</p>
225
226<p>
227Visit
228<uri>http://www.kernel.org/pub/linux/kernel/people/andrea/kernels/v2.6</uri>
229for more information about all the patches in these kernel sources.
230</p>
231
232<p>
233Andrea has not been maintaining his patchsets recently, and as a result of
234this, this kernel is a bit out of date and may be removed from Portage soon.
235</p>
236
237</body>
238</section>
239<section>
240<title>ck-sources</title> 221<title>ck-sources</title>
241<body> 222<body>
242 223
243<p> 224<p>
244<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
245<e>HIGHLY</e> tuned for desktop performance at the expense of 226primarily designed to improve system responsiveness and interactivity and is
246throughput and some of the scheduler's ability to prioritize 227configurable for varying workloads (from servers to desktops). The patchset is
247applications. Con Kolivas benchmarks kernels to find the best 228also quite mature and has been put through numerous iterations of development
248combination of features for desktop use. See 229and tuning. The emphasis of each release is on stability and security. Support
249<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
250patches. 231<c>#ck</c> on <c>irc.oftc.net</c>.
251</p> 232</p>
252 233
253</body> 234</body>
254</section>
255<section> 235</section>
236<section>
256<title>grsec-sources</title> 237<title>git-sources</title>
257<body> 238<body>
258 239
259<p> 240<p>
260The <c>grsec-sources</c> kernel source is patched with the latest GRSecurity 241The <c>git-sources</c> package tracks daily snapshots of the upstream
261updates (GRSecurity version 2.0 and up) which includes, amongst other 242development kernel tree. You should run these kernels if you are interested in
262security-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).
263</p> 246</p>
264 247
265</body> 248</body>
266</section> 249</section>
267<section> 250<section>
268<title>mm-sources</title> 251<title>mm-sources</title>
269<body> 252<body>
270 253
271<p> 254<p>
272The <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
273Andrew Morton's patch set. They include the experimental and bleeding-edge 256Andrew Morton's patch set. They include the experimental and bleeding-edge
274features 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
275going 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
276always 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
277other; kernel hackers use them as a testing ground for new stuff. 260other; kernel hackers use them as a testing ground for new stuff.
278</p> 261</p>
279 262
280<p> 263<p>
281If you really want to live on the edge and you think 264If you really want to live on the edge and you think
282<c>development-sources</c> are for wussies, then try out 265<c>vanilla-sources</c> are for wussies, then try out
283<c>mm-sources</c>. Be warned that this kernel is highly experimental and 266<c>mm-sources</c>. Be warned that this kernel is highly experimental and
284doesn't always work as expected. 267doesn't always work as expected.
285</p> 268</p>
286 269
287</body> 270</body>
290<title>openmosix-sources</title> 273<title>openmosix-sources</title>
291<body> 274<body>
292 275
293<p> 276<p>
294The <c>openmosix-sources</c> are patched to support the openMosix system 277The <c>openmosix-sources</c> are patched to support the openMosix system
295(like MOSIX but Open Source). For more information see 278(a cluster oriented kernel patchset like MOSIX but Open Source). For more
296<uri>http://www.openmosix.org</uri>. 279information see <uri>http://www.openmosix.org</uri>.
297</p> 280</p>
298 281
299</body> 282</body>
300</section>
301<section> 283</section>
302<title>pac-sources</title>
303<body>
304
305<p>
306The <c>pac-sources</c> kernel tree is patched with Bernhard Rosenkraenzer's
307(bero) patches. Be warned that this kernel is quite out of date and may be
308removed from Portage soon.
309</p>
310
311</body>
312</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>
313<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>
314<title>selinux-sources</title> 317<title>uclinux-sources</title>
315<body> 318<body>
316 319
317<p> 320<p>
318<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
319patches for the security conscious to support the LSM (Linux Security 322devices. For more information, see <uri>http://www.uclinux.org</uri>.
320Modules) and the Flask Security Architecture.
321</p> 323</p>
322 324
323</body> 325</body>
324</section> 326</section>
325<section> 327<section>
339<uri link="/doc/en/uml.xml">Gentoo UML Guide</uri>. 341<uri link="/doc/en/uml.xml">Gentoo UML Guide</uri>.
340</p> 342</p>
341 343
342</body> 344</body>
343</section> 345</section>
344<section>
345<title>win4lin-sources</title>
346<body>
347
348<p>
349<c>win4lin-sources</c> are patched to support the userland win4lin tools
350that allow Linux users to run many Microsoft Windows (TM) applications
351at almost native speeds. See <uri>http://www.netraverse.com/</uri> for more
352information.
353</p>
354
355</body>
356</section>
357<section>
358<title>wolk-sources</title>
359<body>
360
361<p>
362<c>wolk-sources</c> contains the <e>Working Overloaded Linux Kernel</e> from
363<uri>http://sourceforge.net/projects/wolk</uri>. This kernel contains
364many patches of a wide variety, all combined into the kernel with
365extreme care. This allows you to configure nearly every one into and out
366of the kernel at compile time -- so the kernel will work with nearly any
367combination of the patches.
368</p>
369
370<p>
371If you need a certain combination of patches that you cannot find in other
372kernel sources, WOLK is definitely worth a shot.
373</p>
374
375</body>
376</section>
377</chapter> 346</chapter>
378 347
379<chapter> 348<chapter>
380<title>Previously provided kernel packages</title> 349<title>Previously provided kernel packages</title>
381<section> 350<section>
402</p> 371</p>
403 372
404</body> 373</body>
405</section> 374</section>
406<section> 375<section>
407<title>gaming-sources</title> 376<title>development-sources</title>
408<body>
409
410<p>
411<c>gaming-sources</c> was a 2.4 kernel with a broken scheduler patch applied
412which enhanced performance in games. It was removed from Portage because some
413problems accumulated, and the scheduler work being done in Linux 2.6 at the
414same time offered the same or even better performance.
415</p>
416
417</body> 377<body>
418</section> 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>
419<section> 385</section>
420<title>gs-sources</title>
421<body>
422
423<p>
424<c>gs-sources</c>, once advertised as our server-style patch set, became a
425testing ground for prerelease 2.4 kernels. Unfortunately, the maintainer
426became inactive and this kernel detoriated with new system updates and
427became out of date.
428</p>
429
430</body>
431</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>
432<section> 396</section>
433<title>ia64-sources</title>
434<body>
435
436<p>
437<c>ia64-sources</c> was a 2.6 kernel with some fixes applied to provide
438improved hardware compatibility for the IA-64 architecture. These fixes are
439now included in the mainline 2.6 kernel tree, so this package was no longer
440useful.
441</p>
442
443</body>
444</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>
445<section> 409</section>
446<title>pac-sources</title>
447<body>
448
449<p>
450<c>pac-sources</c>, a kernel designed to enhance multimedia performance, has
451been superseded by development work in the 2.6 development branch.
452</p>
453
454</body>
455</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>
456<section> 420</section>
457<title>planet-ccrma-sources</title> 421<section>
422<title>rsbac-dev-sources</title>
458<body> 423<body>
459 424
460<p> 425<p>
461<c>planet-ccrma-sources</c>, a kernel designed to enhance audio performance, 426The <c>rsbac-dev-sources</c> kernels can now be found under the
462has been superseded by development work in the 2.6 development branch. 427<c>rsbac-sources</c> package.
463</p> 428</p>
464 429
465</body> 430</body>
466</section> 431</section>
467<section> 432<section>
468<title>selinux-sources</title> 433<title>selinux-sources</title>
469<body> 434<body>
470 435
471<p> 436<p>
472<c>selinux-sources</c>, a 2.4 kernel including lots of security enhancements, 437<c>selinux-sources</c>, a 2.4 kernel including lots of security enhancements,
473has been obseleted by security development in the 2.6 tree. 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>
444<section>
445<title>win4lin-sources</title>
446<body>
447
448<p>
449<c>win4lin-sources</c> were patched to support the userland win4lin tools
450that allow Linux users to run many Microsoft Windows (TM) applications
451at almost native speeds. This was removed due to security issues.
474</p> 452</p>
475 453
476</body> 454</body>
477</section> 455</section>
478</chapter> 456</chapter>
479
480</guide> 457</guide>

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

  ViewVC Help
Powered by ViewVC 1.1.20