Linux Kernel 2.6.20 Released
diegocgteleline.es writes "After two months of development, Linux 2.6.20 has been released. This release includes two different virtualization implementations: KVM: full-virtualization capabilities using Intel/AMD virtualization extensions and a paravirtualization implementation usable by different hypervisors. Additionally, 2.6.20 includes PS3 support, a fault injection debugging feature, UDP-lite support, better per-process IO accounting, relative atime, relocatable x86 kernel, some x86 microoptimizations, lockless radix-tree readside, shared pagetables for hugetbl, and many other things. Read the list of changes for more details."
I admit to not knowing what they are either, but here it is - radix tree. Sounds like a pretty nice tree data structure, an alternative to your hashtables, balanced trees, etc. designed for sets of strings.
Since I love the PHP and PERL implementations of associate arrays, I guess it's neat to have these data structures implemented directly in the kernel! Sounds like they might be using them as a sort of in-memory data store.
SixD
For those of us outside of the US: Anheuser-Busch is a brewery conglomerate, probably a bit like Bavaria.
DNA is the ultimate spaghetti code.
Hoping this gets into distros soon.
The latest ubuntu pre-release has the 2.6.20rc kernel. This will be 2.6.20 final (+patches) in the final "Feisty Fawn" release in a couple of months.
Also, I believe (but I'm not 100% sure) that fedora 7 will ship 2.6.20. Current pre-release (test1) and rawhide have 2.6.19.
-- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz
This comment hurts my brain. You bitch about TLAs but they're not even acronyms. Do you even know what TLA stands for?!
Lockless means it's doing something without locking everyone else from the data. Sometimes this means optimistic resolution (everyone try, and if it looks like it screwed up, try again!), sometimes it means keeping local read copies, sometimes it means something new and/or crazy. Lockless approaches are used when you have data that lots of threads must share but efficiency concerns or non-blocking requirements force you away from simply using a lock and blocking when someone else is playing with the data.
A radix-tree, as opposed to "radix-free", is a data structure used in certain applications, with operations dependent on the length of the key rather than the amount of data stored. In 2.6.20 (and others), it's used to organize some information about the page cache.
This code is associated with the RCU, which you may recall is part of an SCO lawsuit. If you're interested in any other feature or changes, the kernel newbies site is instrumental!
I Browse at +4 Flamebait
Open Source Sysadmin
Fishing actually. It's pretty well the inverse of the goat thing.
It's useful for kdump users. Kdump uses kexec to execute a new kernel in a non-standard localization of the memory. Until now kdump people used a different kernel that was compiled to be run in a different memory localization from the standard one. With this feature, you can use the same kernel to do a standard booting and a kexec boot without carring a additional kernel image around.
Since pointing people to the relevent document is apparently flamebait; I will copy and paste what you get if you click on the fourth heading in giant print from the changes article.
Relocatable kernel support for x86
This feature (enabled with CONFIG_RELOCATABLE) isn't very noticeable for end-users but it's quite interesting from a kernel POV. Until now, it was a requeriment that a i386 kernel was loaded at a fixed memory address in order to work, loading it in a different place wouldn't work. This feature allows to compile a kernel that can be loaded at different 4K-aligned addresses, but always below 1 GB, with no runtime overhead. Kdump users (a feature introduced in 2.6.13 that it triggers kexec in a kernel crash in order to boot a kernel that has been previously loaded at a 'empty' address, then runs that kernel, saves the memory where the crashed kernel was placed, dumps it in a file and continues booting the system) will benefit from this because until now the "rescue kernel" need to be compiled with different configuration options in order to make it bootable at a different address. With a relocatable kernel, the same kernel can be boot at different addresses.
The World Wide Web is dying. Soon, we shall have only the Internet.
From http://kernelnewbies.org/Linux_2_6_20 (raw copy and paste -- didn't fix the formatting) since the site is getting hammered:
/dev/kvm). Guest mode has no access to any I/O devices; any such access is intercepted and directed to user mode for emulation.
Short overview (for news sites, etc)
2.6.20 makes linux join to the virtualization trends. This release adds two virtualization implementations: A full-virtualization implementation that uses Intel/AMD hardware virtualization capabilities called KVM (http://kvm.sourceforge.net) and a paravirtualization implementation (http://lwn.net/Articles/194543) that can be used by different hypervisors (Rusty's lguest; Xen and Vmware in the future, etc),. But this release also adds initial Sony Playstation 3 support, a fault injection debugging feature (http://lwn.net/Articles/209257), UDP-lite support, better per-process IO accounting, relative atime, support for using swap files for suspend users, relocatable x86 kernel support for kdump users, small microoptimizations in x86 (sleazy FPU, regparm, support for the Processor Data Area, optimizations for the Core 2 platform), a generic HID layer, DEEPNAP power savings for PPC970, lockless radix-tree readside, shared pagetables for hugetbl, ARM support for the AT91 and iop13xx processors, full NAT for nf_conntrack and many other things.
Important things (AKA: ''the cool stuff'')
Sony Playstation 3 support
You may like the Wii or the 360 more, but only the PS3 is gaining official Linux support, written by Sony engineers. Notice that the support at this time is incomplete (apparently enabling it will not boot on a stock PS3) and it doesn't support the devices included like the graphics card, etc. (commit 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
Virtualization support through KVM
KVM (project page) adds a driver for Intel's and AMD's hardware virtualization extensions to the x86 architecture (KVM will not work in CPUs without virtualization capabilities). See the Virtualization wiki for more information about virtualization in Linux
The driver adds a character device (/dev/kvm) that exposes the virtualization capabilities to userspace. Using this driver, a process can run a virtual machine (a "guest") in a fully virtualized PC containing its own virtual hard disks, network adapters, and display. Each virtual machine is a process on the host; a virtual cpu is a thread in that process. kill(1), nice(1), top(1) work as expected. In effect, the driver adds a third execution mode to the existing two: we now have kernel mode, user mode, and guest mode. Guest mode has its own address space mapping guest physical memory (which is accessible to user mode by mmap()ing
32 and 64 bits guests are supported (but not x86-64 guests on x86-32 hosts!). For i386 guests and hosts, both pae and non-pae paging modes are supported. SMP hosts and UP guests are supported, SMP guests aren't (support will be added in the future). You also can start multiple virtual machines in a host. Performance currently is non-stellar, it will be improved by a lot with the future inclusion of KVM paravirtualization KVM support.
The Windows install currently bluescreens due to a problem with the virtual APIC, a fix is being worked on and will be added in future releases. A temporary workaround is to use an existing image or install through qemu - Windows 64-bit does not work either (commit)
Paravirtualization support for i386
Paravirtualization is the act of running a guest operating system, under control of a host system, where the guest has been ported to a virtual architecture which is almost like the hardware it is actually running on. This technique allows full guest systems to be run in a relatively efficient manner (continue reading this LWN article for more information). This allows to link different hypervisors (lguest/lhype/rustyvisor implements a hypervisor in 6.000 lines; Xen and Vmware will be probably ported to th
Ant(Dude) @ Quality Foraged Links (AQFL.net) & The Ant Farm (antfarm.ma.cx / antfarm.home.dhs.org).
Well, that's mostly because of the nature of the thing. Linux is just the kernel, whereas Windows and MacOS X include everything from the kernel up through the desktop and some applications. Rest assured that KDE 4, for example, will have pretty colors!
LOAD "SIG",8,1
What are you talking about? QEMU can be used to install both XP and 2000. (Runs slow though.)
Unless things changed since the last RC, the "ps3 support" is incomplete and unusable at this point, and you still need to stick with the 2.6.16 kernel that YDL is shipping
God Fucking Damnit
Actually, that's a replacement for the Jell-o Tree, which had to be locked all the time to keep those darned kids out of it.
Come on, mod me Informative. I dare you.... 8^)
Crumb's Corollary: Never bring a knife to a bun fight.
VMWare workstation actually does more than VMWare server, which is why it is not free. You can look up the comparison table on the VMWare site, but Workstation is usually more attractive to developers because it has (amongst other things):
- Multiple Snapshots - You can only take and rollback to one snapshot with the Server Product, Workstation allows you to go back to many different points in time.
- Shared folders - Not available with Server. Very handy for accessing the host filesystem when the networking setup of the guest does not allow connectivity to the host (think test LAN or similar)
The above features are "cream" on top of the core of virtualisation. If you just want to run a virtualized host, and things like snapshots or shared folders don't matter to you, use VMWare Server.My understanding is KVM provides the infrastructure for userland programs (such as VMWare, Xen) etc to access hardware virtualization services provided by late model Intel and AMD processors. Asking if KVM is a reasonable alternative to VMWare Server is not really a good way to frame the question - one day VMWare may use KVM for virtualisation. A better questions may be "which user-space virtualisation tool provides the best features for me as a user/developer/admin - Xen, VMWare, WidgetWorks" etc.
Mandriva Flash: http://www.mandriva.com/en/linux/2007/node_3481/
Navicula hydraulica plena anguilarum est. Omnes castelli tuus nostri sunt. Ed elli avea del cul fatto trombetta.
As of RC3, the PS3 support doesn't include drivers for PS3-specific devices such as the Ethernet controller, and doesn't successfully boot.
Things may have changed but I'm stucking with my hand-patched 2.6.17 with zd1211 support for usb wifi.
I use the PS3 Linux quite a bit as a family-room computer. Sound is limited to 2-channel, but good quality. Video has no acceleration, but is still fast and looks good on our 720p TV. Unfortunately, the built-in WIFI doesn't work with Linux, and the Sony-provided kernel seems to lack any support for USB WIFI.
Yes... Did you read the page you linked to?
Zombie Processes are not a bad thing. They're not memory leaks.
If you have a lot of zombie processes hanging around it's because of a bug in a program. It's pretty unlikely that it's a kernel bug.
I respond to your sigs
For those of you outside of Germany: Bavaria is a state of Germany. It even contains more beer than any brewery conglomerate...