/[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.61 - (show annotations) (download) (as text)
Mon Sep 6 05:03:31 2010 UTC (4 years, 1 month ago) by nightmorph
Branch: MAIN
Changes since 1.60: +35 -18 lines
File MIME type: application/xml
Add pf-sources, clean up ck-sources location

1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
3 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/gentoo-kernel.xml,v 1.60 2010/04/18 04:48:53 nightmorph Exp $ -->
4
5 <guide>
6 <title>Gentoo Linux Kernel Guide</title>
7
8 <author title="Author">
9 <mail link="swift@gentoo.org">Sven Vermeulen</mail>
10 </author>
11 <author title="Contributor">
12 <mail link="lostlogic@gentoo.org">Brandon Low</mail>
13 </author>
14 <author title="Editor">
15 <mail link="dsd@gentoo.org">Daniel Drake</mail>
16 </author>
17 <author title="Editor">
18 <mail link="carl@gentoo.org">Carl Anderson</mail>
19 </author>
20 <author title="Editor">
21 <mail link="peesh@gentoo.org">Jorge Paulo</mail>
22 </author>
23 <author title="Editor">
24 <mail link="bennyc@gentoo.org">Benny Chuang</mail>
25 </author>
26 <author title="Editor">
27 <mail link="greg_g@gentoo.org">Gregorio Guidi</mail>
28 </author>
29 <author title="Editor">
30 <mail link="fox2mike@gentoo.org">Shyam Mani</mail>
31 </author>
32 <author title="Editor">
33 <mail link="nightmorph@gentoo.org">Joshua Saddler</mail>
34 </author>
35
36 <abstract>
37 This document gives you an overview on all kernel sources that Gentoo
38 provides through Portage.
39 </abstract>
40
41 <!-- The content of this document is licensed under the CC-BY-SA license -->
42 <!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
43 <license/>
44
45 <version>2</version>
46 <date>2010-09-05</date>
47
48 <chapter>
49 <title>Introduction</title>
50 <section>
51 <body>
52
53 <p>
54 As with everything else in Gentoo Linux, the philosophy of the Gentoo
55 Kernel team is to give you, the user, as much freedom of choice as
56 possible. If you take a look at the output of <c>emerge -s sources</c>
57 you see a large variety of kernels to choose from. In this document,
58 I will attempt to give you a brief rundown of the goals of each of the
59 patch sets, which we at Gentoo design, and also explain the other kernel
60 sources we make available to you.
61 </p>
62
63 <p>
64 Linux 2.4 is maintained by Willy Tarreau. Linus Torvalds, the original creator
65 of Linux, handed maintainership of the Linux 2.4 branch over to Marcelo Tosatti
66 when Linus went off to start developing the newer 2.6 kernel tree. Marcelo did a
67 fine job of keeping 2.4 stable and secure, and has since handed over
68 maintainership to Willy. Note that only security and bug fixes are accepted into
69 the 2.4 kernel tree. Actual development happens in the Linux 2.6 kernel tree.
70 </p>
71
72 <p>
73 Linux 2.6 is maintained by Andrew Morton, who works closely with Linus
74 Torvalds to deliver a fast, powerful, and feature-packed Linux kernel.
75 Development is happening at incredible pace and this kernel tree is now very
76 mature.
77 </p>
78
79 <p>
80 Some of the more uncommon system architectures are not fully compatible with
81 Linux 2.6, and some users prefer the tried-and-tested Linux 2.4 kernel. However,
82 please note that Linux 2.4 is currently not being developed further - only bug
83 and security fixes are being included in the newer releases. If you are able to,
84 we suggest that you upgrade to Linux 2.6. You may find the <uri
85 link="/doc/en/migration-to-2.6.xml">migration document</uri> useful.
86 </p>
87
88 </body>
89 </section>
90 </chapter>
91
92 <chapter>
93 <title>Supported kernel packages</title>
94 <section>
95 <title>genkernel</title>
96 <body>
97
98 <p>
99 <c>Genkernel</c> is a kernel toolset that can be used to autodetect your
100 hardware and configure your kernel automatically. This is usually recommended
101 for users who do not feel comfortable about compiling a kernel manually.
102 </p>
103
104 <p>
105 For more information, please read the <uri link="/doc/en/genkernel.xml">Gentoo
106 Linux Genkernel Guide</uri>.
107 </p>
108
109 </body>
110 </section>
111 <section>
112 <title>General purpose: gentoo-sources</title>
113 <body>
114
115 <p>
116 For most users, we recommend the <c>gentoo-sources</c> kernel.
117 <c>gentoo-sources</c> is a kernel based on Linux 2.6, lightly patched to fix
118 security problems, kernel bugs, and to increase compatibility with the more
119 uncommon system architectures.
120 </p>
121
122 <p>
123 The <c>gentoo-sources</c> package absorbs most of the resources of the Gentoo
124 kernel team. They are brought to you by a group of talented developers, which
125 can count on the expertise of popular kernel hacker Greg Kroah-Hartman,
126 maintainer of udev and responsible for the USB and PCI subsystems of the
127 official Linux kernel.
128 </p>
129
130 </body>
131 </section>
132 <section>
133 <title>For servers: hardened-sources</title>
134 <body>
135
136 <p>
137 <c>hardened-sources</c> is based on the official Linux kernel and is targeted at
138 our users running Gentoo on server systems. It provides patches for the various
139 subprojects of Gentoo Hardened (such as support for <uri
140 link="http://www.nsa.gov/selinux/">LSM/SELinux</uri> and <uri
141 link="http://grsecurity.net">grsecurity</uri>), together with
142 stability/security-enhancements. Check
143 <uri>http://www.gentoo.org/proj/en/hardened/</uri> for more information.
144 </p>
145
146 <impo>
147 This kernel provides powerful patches for enhanced security. Please read the
148 <uri link="/proj/en/hardened/">documentation</uri> before you use it.
149 </impo>
150
151 </body>
152 </section>
153 <section>
154 <title>Architecture dependent kernels</title>
155 <body>
156
157 <p>
158 <c>cell-sources</c>, <c>mips-sources</c>, <c>sparc-sources</c>, and
159 <c>xbox-sources</c> are, as their names suggest, patched to run best on specific
160 architectures. They also contain some of the patches for hardware and features
161 support from the other patch sets mentioned above and below.
162 </p>
163
164 </body>
165 </section>
166 </chapter>
167
168 <chapter>
169 <title>Unsupported kernel packages</title>
170 <section>
171 <body>
172
173 <p>
174 Now I'm going to try to briefly describe some of the other
175 <path>sys-kernel/*-sources</path> which you saw scroll by when you ran
176 <c>emerge -s sources</c>. Let's take them in alphabetical order. These
177 kernels are provided as a courtesy only and the various patch sets are not
178 supported by the Gentoo team.
179 </p>
180
181 </body>
182 </section>
183 <section>
184 <title>ck-sources</title>
185 <body>
186
187 <p>
188 <c>ck-sources</c> is Con Kolivas's kernel patch set. This patchset is primarily
189 designed to improve system responsiveness and interactivity and is configurable
190 for varying workloads (from servers to desktops). The patchset includes a
191 different scheduler, BFS, designed to keep systems responsive and smooth even
192 when under heavy load. Support and information is available at
193 <uri>http://kernel.kolivas.org</uri> and in <c>#ck</c> on <c>irc.oftc.net</c>.
194 </p>
195
196 </body>
197 </section>
198
199 <section>
200 <title>git-sources</title>
201 <body>
202
203 <p>
204 The <c>git-sources</c> package tracks daily snapshots of the upstream
205 development kernel tree. You should run these kernels if you are interested in
206 kernel development or testing. Bugreports should go to the <uri
207 link="http://bugzilla.kernel.org/">Linux Kernel Bug Tracker</uri> or LKML
208 (Linux Kernel Mailing List).
209 </p>
210
211 </body>
212 </section>
213 <section>
214 <title>mm-sources</title>
215 <body>
216
217 <p>
218 The <c>mm-sources</c> are based on the <c>vanilla-sources</c> and contain
219 Andrew Morton's patch set. They include the experimental and bleeding-edge
220 features that are going to be included in the official kernel (or that are
221 going to be rejected because they set your box on fire). They are known to be
222 always moving at a fast pace and can change radically from one week to the
223 other; kernel hackers use them as a testing ground for new stuff.
224 </p>
225
226 <p>
227 If you really want to live on the edge and you think
228 <c>vanilla-sources</c> are for wussies, then try out
229 <c>mm-sources</c>. Be warned that this kernel is highly experimental and
230 doesn't always work as expected.
231 </p>
232
233 </body>
234 </section>
235 <section>
236 <title>pf-sources</title>
237 <body>
238
239 <p>
240 The <c>pf-sources</c> kernel brings together parts of several different kernel
241 patches. It includes the BFS patchset from <c>ck-sources</c>, the
242 <c>tuxonice</c> patches, <uri link="http://www.linuximq.net">LinuxIMQ</uri>, and
243 the <uri
244 link="http://algo.ing.unimo.it/people/paolo/disk_sched/patches/">BFQ</uri> I/O
245 <uri
246 link="http://kerneltrap.org/Linux/Budget_Fair_Queuing_IO_Scheduler">scheduler</uri>.
247 </p>
248
249 </body>
250 </section>
251 <section>
252 <title>openvz-sources</title>
253 <body>
254
255 <p>
256 OpenVZ is a server virtualization solution built on Linux. OpenVZ creates
257 isolated, secure virtual private servers (VPSs) or virtual environments on a
258 single physical server enabling better server utilization and ensuring that
259 applications do not conflict. For more information, see
260 <uri>http://www.openvz.org</uri>.
261 </p>
262
263 </body>
264 </section>
265 <section>
266 <title>tuxonice-sources</title>
267 <body>
268
269 <p>
270 The <c>tuxonice-sources</c> (formerly <c>suspend2-sources</c>) are patched with
271 both genpatches which includes the patches found in gentoo-sources, and <uri
272 link="http://www.tuxonice.net">TuxOnIce</uri> which is an improved
273 implementation of suspend-to-disk for the Linux kernel, formerly known as
274 <e>suspend2</e>.
275 </p>
276
277 <p>
278 This kernel is recommended for laptop users who often rely on being able
279 to suspend their laptop and resume work elsewhere.
280 </p>
281
282 </body>
283 </section>
284 <section>
285 <title>usermode-sources</title>
286 <body>
287
288 <p>
289 <c>usermode-sources</c> are the User Mode Linux kernel patches. This
290 kernel is designed to allow Linux to run within Linux to run within Linux
291 to ... User Mode Linux is intended for testing and virtual server support.
292 For more information about this amazing tribute to the stability and
293 scalability of Linux, see <uri>http://user-mode-linux.sourceforge.net</uri>.
294 </p>
295
296 <p>
297 For more information on UML and Gentoo, read the
298 <uri link="/doc/en/uml.xml">Gentoo UML Guide</uri>.
299 </p>
300
301 </body>
302 </section>
303 <section>
304 <title>vanilla-sources</title>
305 <body>
306
307 <p>
308 The next kernel sources that many of you will probably be familiar with as Linux
309 users are the <c>vanilla-sources</c>. These are the official kernel sources
310 released on <uri>http://www.kernel.org/</uri>. Please note that we do not patch
311 these kernels at all - these are purely for people who wish to run a completely
312 unmodified Linux kernel. We recommend that you use <c>gentoo-sources</c>
313 instead.
314 </p>
315
316 <p>
317 Two versions of the kernel can be found under this package: 2.4 and 2.6.
318 </p>
319
320 </body>
321 </section>
322 <section>
323 <title>zen-sources</title>
324 <body>
325
326 <p>
327 <c>zen-sources</c> is designed for desktop systems. It includes code not found
328 in the mainline kernel. The zen kernel has patches that add new features,
329 support additional hardware, and contain various tweaks for desktops.
330 </p>
331
332 </body>
333 </section>
334 </chapter>
335
336 <chapter>
337 <title>Previously provided kernel packages</title>
338 <section>
339 <title>aa-sources</title>
340 <body>
341
342 <p>
343 <c>aa-sources</c> was a heavily modified kernel with all kinds of patches.
344 The upstream maintainer has stopped releasing kernel patchsets, this package
345 was removed as it went out of date.
346 </p>
347
348 </body>
349 </section>
350 <section>
351 <title>alpha-sources</title>
352 <body>
353
354 <p>
355 <c>alpha-sources</c> was a 2.4 kernel with patches applied to improve hardware
356 compatibility for the Alpha architecture. These patches have been developed
357 and included in the mainline kernel. Alpha users can now run any recent kernel
358 with no need for extra patches.
359 </p>
360
361 </body>
362 </section>
363 <section>
364 <title>development-sources</title>
365 <body>
366
367 <p>
368 <c>development-sources</c>, the official 2.6 kernel from kernel.org, can now
369 be found under the <c>vanilla-sources</c> package.
370 </p>
371
372 </body>
373 </section>
374 <section>
375 <title>gentoo-dev-sources</title>
376 <body>
377
378 <p>
379 <c>gentoo-dev-sources</c>, a 2.6 kernel patched with bug, security and
380 stability fixes, can now be found under the <c>gentoo-sources</c> package.
381 </p>
382
383 </body>
384 </section>
385 <section>
386 <title>grsec-sources</title>
387 <body>
388
389 <p>
390 The <c>grsec-sources</c> kernel source used to be patched with the latest
391 grsecurity updates (grsecurity version 2.0 and up) which included, amongst
392 other security-related patches, support for PaX. As grsecurity patches are
393 included in <c>hardened-sources</c>, this package is no longer in Portage.
394 </p>
395
396 </body>
397 </section>
398 <section>
399 <title>hardened-dev-sources</title>
400 <body>
401
402 <p>
403 <c>hardened-dev-sources</c> can now be found under the <c>hardened-sources</c>
404 package.
405 </p>
406
407 </body>
408 </section>
409 <section>
410 <title>hppa-sources</title>
411 <body>
412
413 <p>
414 <c>hppa-sources</c> was a 2.6 kernel with patches applied to improve hardware
415 compatibility for the HPPA architecture. These patches have been developed
416 and included in the mainline kernel. HPPA users can now run any recent kernel
417 with no need for extra patches.
418 </p>
419
420 </body>
421 </section>
422 <section>
423 <title>rsbac-dev-sources</title>
424 <body>
425
426 <p>
427 The <c>rsbac-dev-sources</c> kernels can now be found under the
428 <c>rsbac-sources</c> package.
429 </p>
430
431 </body>
432 </section>
433 <section>
434 <title>rsbac-sources</title>
435 <body>
436
437 <p>
438 <c>rsbac-sources</c> was a 2.6-based kernel. It contained patches to use Rule
439 Set Based Access Controls (<uri link="http://www.rsbac.org">RSBAC</uri>). It has
440 been removed due to lack of maintainers. Use <c>hardened-sources</c> if you need
441 additional security features.
442 </p>
443
444 </body>
445 </section>
446 <section>
447 <title>selinux-sources</title>
448 <body>
449
450 <p>
451 <c>selinux-sources</c>, a 2.4 kernel including lots of security enhancements,
452 has been obsoleted by security development in the 2.6 tree. SELinux
453 functionality can be found in the <c>hardened-sources</c> package.
454 </p>
455
456 </body>
457 </section>
458 <section>
459 <title>sh-sources</title>
460 <body>
461
462 <p>
463 <c>sh-sources</c> was a 2.6 kernel with patches applied to improve hardware
464 compatibility for the SuperH architecture. These patches have been developed
465 and included in the mainline kernel. SuperH users can now run any recent kernel
466 with no need for extra patches.
467 </p>
468
469 </body>
470 </section>
471 <section>
472 <title>uclinux-sources</title>
473 <body>
474
475 <p>
476 The <c>uclinux-sources</c> are meant for CPUs without MMUs as well as embedded
477 devices. For more information, see <uri>http://www.uclinux.org</uri>. Lack of
478 security patches as well as hardware to test on were the reasons this is no
479 longer in the tree.
480 </p>
481
482 </body>
483 </section>
484 <section>
485 <title>win4lin-sources</title>
486 <body>
487
488 <p>
489 <c>win4lin-sources</c> were patched to support the userland win4lin tools
490 that allow Linux users to run many Microsoft Windows (TM) applications
491 at almost native speeds. This was removed due to security issues.
492 </p>
493
494 </body>
495 </section>
496 </chapter>
497 </guide>

  ViewVC Help
Powered by ViewVC 1.1.20