kernelnewbies.org — Linux 2.6.23 is about to be released. Here is a readable article explaining whats news. "fairer CFS process scheduler, a simpler read-ahead mechanism, the lguest 'Linux-on-Linux' paravirtualization hypervisor, XEN guest support, KVM smp guest support, variable process argument length, make SLUB the default slab allocator..."
Oct 9, 2007 View in Crawl 4
daftmanOct 10, 2007
Con isn't a kernel maintainer. He can promise alot but doesn't deliver.
phocion55Oct 10, 2007
Just block and report. No need to feed him.
ventatsuOct 10, 2007
You confuse pluggable with selectable. Pluggable implies that it is select at load time or at runtime. Selectable implies that it can be selected. Pluggable would cause a slowdown due to requiring indirection in the layer between the kernel and the pluggable module. (Static kernels are slightly faster but bigger than module kernels that load only exactly the same components) A pluggable scheduler is a bad idea as the scheduler must be very very very fast, a selectable at *compile* time scheduler could be useful.The CFS scheduler actually made many changes to the code that move it towards having selectable schedulers (vs either the old O(1) scheduler or the SD scheduler). Had Con chosen to rewrite the interfaces to the SD scheduler to the new scheduler interface it's possible that it could have been a second selectable scheduler in the kernel at some point in the future, but now that is a moot point, he took his ball and went home because he didn't like the refs call.
gamelord12Oct 10, 2007
Umm...I don't understand any of this, but I assume it's good?
darkhackerOct 11, 2007
I don't get the technical details, but I'll try to explain the gist of it.Completely Fair Scheduler (CFS) - A computer's CPU can only do one thing at a time but it can do it billions of times in a second. The schedulers job is to break up the CPUs resources to the different processes. Even though the CPU can only do a single thing at a time, the reason you can play music, compile software, browse the web, chat on IM, and all those other wonderful things at the same time is because the scheduler is switching back and forth between these tasks. Because the CPU can do billions of calculations in a second, it appears to be seamless to humans and gives the appearance of the computer doing multiple tasks at the same time. The new scheduler is designed to be completely fair in that each process gets an equal share of the CPU cycles where as before the scheduler would to try prioritize tasks and sometimes made mistakes in determining which process to give higher priority to and thus lag or performance loss occurred.On-Demand Read-Ahead - Mostly just performance improvements, but what this does it is reads a file from the disk and puts it into memory ahead of time so that a program can access that portions of the files content quickly. If you have a massive document file (several thousand pages with graphics and such) then you can't load the entire thing into memory. However if you are on page 7, the read ahead function might load pages 6 and 8 even if they aren't being used at the exact moment in preparation of the user clicking the next page or previous page buttons. This avoids unnecessary disk I/O and makes switching pages faster for the user. That's just one overly simplified example but I think you get the gist of it.fallocate() - One example is that used by virtual machines. If you have a virtual hard disk as a file or say a program that works with very large files, then you need to be sure that the hard drive won't fill up when trying to save that data. This function pre-allocates an empty file. The file may be 100 MB but it is filled with all zeros to show that it is empty. However you can now write to it and know for sure that you aren't going over any disk quotas or filling up a partition. The function fails if it can't allocate the space (much safer than waiting until saving the actual file with real data) and is mostly reserved for large files like the virtual machine disk example I gave.Virtualization - Wikipedia can probably explain this better than I can. <a class="user" href="http://en.wikipedia.org/wiki/Virtualization">http://en.wikipedia.org/wiki/Virtualization</a>Variable Argument Length - Mostly for programmers, but it expands the argument list for a function (like printf) so that you can pass a large number of values (not the size of the value) without the computer freaking out and telling you what a horrible person you are (though it may perform unspeakable acts of perversion with your pet dachshund).ACPI - Blah blah blah, too much crap to get into it here but its responsible for power management and putting your computer into sleep mode. The main difference in 2.6.23 is that instead of the kernel throwing a pile of drivers at your computer and hoping one of them sticks, it can now load the right drivers using udev.There are also a lot of new drivers and just general fixes of that sort. I think this covers the basics pretty well.
crossersJul 18, 2008
this site is very nice! go and read about linux news if are interested in!<a class="user" href="http://www.leannrimes.info">http://www.leannrimes.info</a><a class="user" href="http://www.shpe-sac.org">http://www.shpe-sac.org</a><a class="user" href="http://www.pmidsig.org">http://www.pmidsig.org</a>