|
| |
:Linux kernel 2.2 explained
Introduction
Should I upgrade? How do I upgrade? Any big problems I can expect? Linux Today's Dave Whitinger examines the newest Linux kernel, 2.2.0.
Last May, in his keynote speech to a crowd of over 1,000 at the 1998 LinuxExpo in Durham, NC, Linus Torvalds told the world that he expected
kernel 2.2.0 to be released "real soon now" -- in June or July 1998.
Eight months later, after an incredible amount of further development and testing, we finally have our new kernel.
In this article, I examine the 2.2.0 kernel and attempt to address some of the more common questions that users are likely to ask about it.
What is it?
The kernel is the core of the operating system. It's primary functions are controlling execution of processes, handling memory management,
providing a file system, and providing a portable interface through which programs may communicate with hardware.
The Linux kernel has been in development since 1991. For a complete look at the history of the Linux kernel, visit the
Linux Kernel Version History web site.
If your computer
is not a production
system, then it
makes good sense
to upgrade it
and see how well
it performs.
|
Should I upgrade?
There are good reasons for upgrading and good reasons to stay with the 2.0.XX series of kernels.
The most direct answer is: if this is a production machine, you are strongly advised not to upgrade to 2.2 until it has proven completely stable.
This is not to say that 2.2.0 is not already stable, but on a production machine, you may be better served to delay your upgrade until it's
stability has been proven elsewhere.
Which leads me to the reason you may choose to upgrade: if your computer is not a production system (e.g., your personal workstation, your
spouse's/kids' computer), then it makes good sense to upgrade it and see how well it performs, especially if you want to take advantage of the 2.2 kernel's new features.
What new features are present in the 2.2 kernel?
For this question, we visit the Wonderful World of Linux 2.2 article, that Joseph Pranevich so generously
volunteered to write.
The summary is this:
Increased hardware architecture support
The kernel now fully supports:
- x86
- SPARC
- Ultra
- Alpha
- m68k
- PowerPC
Linux 2.2 is the first stable Linux to support x86 processor vendor selection in the kernel configuration tool for even better fine-tuning.
Better CD-ROM support
Thankfully, the hodge-podge of hundreds of CD-ROM standards has solidified behind the 'standard' of ATAPI
CD-ROMs. This reprieve has given developers time to completely rewrite the CD-ROM driver system to be more
standardized in terms of support. Small, quirky differences between the individual drivers have now all been fixed for
better support.
Sound support
The sound support has been completely re-written in order for the sound card drivers to be modular from the start. This will
ease the setting up of a sound card, and will allow distribution vendors more flexibility in their setup.
Graphics
Perhaps the most surprising and cutting-edge addition to kernel 2.2 is what is called the 'frame-buffer console' driver (or 'fbcon', for short.)
From the kernel source:
"Frame buffer consoles ("fbcon") are now in the kernel for all
platforms, not just those non-Intel ones for which VGA text mode is
impossible. VGAcon is still available for those who want it, but fbcon
has the advantage of providing a uniform graphical subsystem across all
Linux ports, and it displays a spiffy penguin logo on boot-up ;-). For
more information, see the files in /usr/src/linux/Documentation/fb/"
New filesystems
The new kernel will support a vast array of filesystems:
- Amiga FFS
- Macintosh HFS
- ROM Filesystem
- UFS
- CODA
- OS/2 HPFS (Read only)
- NTFS (Read only)
(Not all filesystems supported are listed -- only the newer and more interesting ones...)
Linux 2.2 adds to the already present internationalization features of the operating system by including the ability to load some UNICODE codepages
for translating filenames into Linux's native system. Linux 2.0 only supported international keyboards and the like.
Linux 2.2 will be a more 'standard' UNIX in a number of ways. The most pronounced of these ways to the end user will
be the addition of UNIX98-style Pty devices using a new filesystem (devpts) and a cloning device to provide the
functionality.
How do I upgrade?
First, you must make sure you are running the latest versions of these software packages:
| Package | Version needed | How to ascertain version |
| Kernel modules | 2.1.121 | insmod -V |
| Binutils | 2.8.1.0.23 | ld -v |
| Linux libc5 C Library | 5.4.46 | ls -l /lib/libc.so.* |
| Linux libc6 C Library | 2.0.7pre6 | ls -l /lib/libc.so.* |
| Dynamic Linker (ld.so) | 1.9.9 | ldd --version or ldd -v |
| Procps | 1.2.9 | ps --version |
| Procinfo | 15 | procinfo -v |
| Psmisc | 17 | pstree -V |
| Net-tools | 1.49 | hostname -V |
| Loadlin | 1.6a | Dos based |
| Sh-utils | 1.16 | basename --v |
| Autofs | 3.1.1 | automount --version |
| NFS | 2.2beta37 | showmount --version |
| Bash | 1.14.7 | bash -version |
| Ncpfs | 2.2.0 | ncpmount -v |
| Pcmcia-cs | 3.0.6 | cardmgr -V |
| PPP | 2.3.5 | pppd -v |
| Util-linux | 2.9 | chsh -v |
You only need to upgrade these packages if you are currently using them. If you don't currently use Ncpfs, for example, don't worry about getting the latest version. If you end up needing to upgrade something, first check with your distribution vendor's ftp site for updates. Failing that, you may access the
Linux Changes page for an HTML-ized version of this table (and more!) with links to each package's download site.
There is a good possibility that your distribution is already up to date, and ready for the kernel.
After this is in place, follow through with the standard kernel compilation techniques. Untar the file into /usr/src/linux, then:
cd /usr/src/linux
make config # Answer the questions are are given
make dep ; make clean
make bzImage
Notice that it is now encouraged to use "bzImage" instead of the old "zImage". This allows for better compression of a kernel that has increased considerably in size.
Once you have the new bzImage, you may configure your lilo to boot the image as normal.
What problems can I expect?
It is still too early to say what kinds of problems people may find with the new kernel, but if you carefully upgraded each of your software packages (listed above), you should not run into any problems.
I have been using the beta to this kernel for quite some time, with no problems at all. Your results may vary, of course, but if you have a spare machine that you can play with, I highly encourage you to take part in this historic event by testing the new kernel out.
Please use the talkback forum below to voice any comments or questions you have regarding this article.


| Talkback(s) |
Name and Date |
|
|
Rob Bos Jan 21, 1999, 14:52:47 |
|
|
Fiachra Jan 21, 1999, 15:57:28 |
|
|
Dean Carpenter Jan 21, 1999, 17:20:53 |
|
|
Miguel Mayorga Jan 21, 1999, 18:20:10 |
|
|
David Fu Jan 22, 1999, 02:39:34 |
|
|
Jay Urish Jan 22, 1999, 10:52:06 |
|
|
John Ho Jan 22, 1999, 11:55:15 |
|
|
mohanasundaram chinnappan Jan 22, 1999, 22:05:02 |
|
|
Larry kizziah Jan 24, 1999, 00:37:27 |
|
|
James Humphry Jan 25, 1999, 15:53:14 |
|
|
jethro rose Jan 24, 1999, 06:35:11 |
|
|
Juan Jan 24, 1999, 08:11:10 |
|
|
Creede Lambard Jan 24, 1999, 11:52:25 |
|
|
tsx Jan 24, 1999, 17:04:14 |
|
|
vinu moses Jan 25, 1999, 11:59:13 |
|
|
Daniel Morrison Jan 26, 1999, 00:00:43 |
|
|
John Jan 26, 1999, 03:00:46 |
|
|
Bert Laverman Jan 26, 1999, 05:42:36 |
|
|
Richard Donkin Jan 26, 1999, 06:31:29 |
|
|
Frank Rietveld Jan 26, 1999, 09:51:11 |
|
|
Carl Niskern Jan 26, 1999, 11:18:14 |
|
|
C. Y. Poh Jan 26, 1999, 11:24:38 |
|
|
Mario Arias Jan 27, 1999, 21:53:22 |
|
|
Joe Merlino Jan 26, 1999, 13:00:41 |
|
|
Ken Corson Jan 26, 1999, 13:44:00 |
|
|
Hans Kugler Jan 26, 1999, 14:49:59 |
|
|
Thomas Stegbauer Jan 26, 1999, 14:58:15 |
|
|
Vic Jan 26, 1999, 16:06:55 |
|
|
kurt Nielsen Jan 26, 1999, 18:36:37 |
|
|
Ricardo Colon Jan 26, 1999, 20:33:11 |
|
|
Ian Bonnycastle Jan 27, 1999, 08:02:54 |
|
|
pedro pilapil Jan 27, 1999, 15:03:53 |
|
|
Mario Arias Jan 27, 1999, 21:53:22 |
|
|
Frank van Wensveen Jan 28, 1999, 09:27:53 |
|
|
Amy Ayers Jan 28, 1999, 13:58:42 |
|
|
Peter Hawx Jan 29, 1999, 09:12:43 |
|
|
Powell Jan 29, 1999, 09:49:52 |
|
|
Ben Brady Jan 29, 1999, 22:38:37 |
|
|
Matteo Morini Jan 30, 1999, 05:22:52 |
|
|
Anocha Yimsiriwattana Jan 30, 1999, 09:12:53 |
|
|
Mark Deneen Jan 30, 1999, 11:13:17 |
|
|
Paulo Santos Jan 30, 1999, 17:48:43 |
|
|
Me Jan 31, 1999, 10:09:18 |
|
|
Dale Herrig Jan 31, 1999, 15:20:49 |
|
|
Jesse Sweetland Jan 31, 1999, 21:08:50 |
|
|
Charles Tew Feb 1, 1999, 19:16:54 |
|
|
Andy Piskur Feb 1, 1999, 22:05:20 |
|
|
Me2 Feb 2, 1999, 10:58:02 |
|
|
Heikki Pellinen Feb 2, 1999, 12:26:06 |
|
|
Wilmer van der Gaast Feb 2, 1999, 14:52:37 |
|
|
ANIL DUBEY Feb 3, 1999, 00:39:35 |
|
|
Jarkko Karhunen Feb 3, 1999, 08:03:14 |
|
|
Martin Laberge Feb 3, 1999, 18:50:31 |
|
|
Joseph Feb 4, 1999, 12:19:33 |
|
|
Hilton Travis Feb 5, 1999, 05:51:47 |
|
|
Elizabeth Dominguez Feb 6, 1999, 16:39:17 |
|
|
SamHsu Feb 8, 1999, 01:44:58 |
|
|
Darren Nguyen Feb 9, 1999, 18:16:48 |
|
|
Sam MacDonald Feb 10, 1999, 10:25:05 |
|
|
Matt Feb 10, 1999, 17:56:08 |
|
|
Young Zhengquan Feb 11, 1999, 02:24:31 |
|
|
Wulin Suo Feb 12, 1999, 01:08:33 |
|
|
Joe Feb 12, 1999, 12:40:34 |
|
|
shiwen Feb 12, 1999, 15:57:56 |
|
|
George Bisada Feb 12, 1999, 17:40:21 |
|
|
Wulin Suo Feb 12, 1999, 23:58:34 |
|
|
Tim Feb 15, 1999, 13:33:16 |
|
|
David Millican Feb 16, 1999, 17:12:53 |
|
|
Forier Feb 18, 1999, 07:02:26 |
|
|
Nandakishore S Feb 18, 1999, 07:38:01 |
|
|
blip Feb 18, 1999, 11:10:33 |
|
|
Dave Archbold Feb 18, 1999, 11:39:52 |
|
|
Darik Leung Feb 19, 1999, 08:00:17 |
|
|
Sean Brennan Feb 19, 1999, 16:05:13 |
|
|
Bret C. Bennett Feb 20, 1999, 01:09:38 |
|
|
Hardy Mayer Feb 24, 1999, 12:46:17 |
|
|
George Kodinov Feb 26, 1999, 02:44:24 |
|
|
Kerry Keal Feb 26, 1999, 20:37:50 |
|
|
Juno Yoo Feb 28, 1999, 02:27:17 |
|
|
Lee Ki Woong Mar 1, 1999, 14:21:25 |
|
|
Alan Denney Mar 1, 1999, 18:14:06 |
|
|
Skip Morrow Mar 3, 1999, 00:47:04 |
|
|
Skip Morrow Mar 3, 1999, 00:50:54 |
|
|
Kevin Mar 4, 1999, 11:12:14 |
|
|
Jello Mar 4, 1999, 11:30:58 |
|
|
Robert John Thom Mar 4, 1999, 12:24:36 |
|
|
J. T. Easley Mar 6, 1999, 18:11:17 |
|
|
Aleksandar Velkovski Mar 6, 1999, 20:35:23 |
|
|
kracken Mar 6, 1999, 23:24:02 |
|
|
Kenneth Mar 7, 1999, 01:54:03 |
|
|
K J Unny Mar 7, 1999, 03:10:30 |
|
|
Jason Bone Mar 8, 1999, 12:59:11 |
|
|
Danny Leung Mar 8, 1999, 20:14:14 |
|
|
ddi Mar 8, 1999, 21:41:33 |
|
|
Kanwar Plaha Mar 9, 1999, 14:03:03 |
|
|
Michael Cooper Mar 11, 1999, 14:03:45 |
|
|
wayne Mar 12, 1999, 05:14:31 |
|
|
Howard Harbert Mar 12, 1999, 08:50:21 |
|
|
Rob Mar 12, 1999, 12:19:37 |
|
|
Aaron Knauf Mar 12, 1999, 16:14:19 |
|
|
Alexander Petkov Mar 14, 1999, 03:59:43 |
|
|
Ajit Mar 14, 1999, 05:23:00 |
|
|
vernie Mar 15, 1999, 06:03:36 |
|
|
Max Mar 15, 1999, 08:50:21 |
|
|
Hector Rivera Mar 15, 1999, 20:31:47 |
|
|
Hector Rivera Mar 15, 1999, 20:33:27 |
|
|
Ravi Hegde Mar 16, 1999, 05:19:02 |
|
|
Marc Gianzero Mar 17, 1999, 15:17:10 |
|
|
dave Mar 17, 1999, 16:22:08 |
|
|
Gavin Mar 18, 1999, 07:28:19 |
|
|
Alan D. Mar 18, 1999, 13:15:49 |
|
|
anonymous Mar 19, 1999, 00:35:23 |
|
|
Upali Weerasinghe Mar 19, 1999, 10:55:32 |
|
|
Ryan Leduc Mar 22, 1999, 13:08:23 |
|
|
Thomas A. Frederiksen Mar 24, 1999, 01:52:47 |
|
| | |