Slashdot Mirror


Linus Announces the 2.6.25 Linux Kernel

LinuxWatch writes "'It's been long promised, but there it is now,' began Linux creator Linus Torvalds, announcing the 2.6.25 Linux kernel. He continued, 'special thanks to Ingo who found and fixed a nasty-looking regression that turned out to not be a regression at all, but an old bug that just had not been triggering as reliably before. That said, that was just the last particular regression fix I was holding things up for, and it's not like there weren't a lot of other fixes too, they just didn't end up being the final things that triggered my particular worries.' There were numerous changes in this revision of the OS. The origins of some of those fixes is detailed in Heise's brief history of this kernel update."

11 of 181 comments (clear)

  1. Re:Wonderful. More Stable. ... So? by Spleen · · Score: 5, Insightful

    Sorry we only make engines and provide them to all the major manufacturers. Please speak with them about the accessory packages.

  2. A better link to the post is... by Anonymous Coward · · Score: 5, Informative

    http://kerneltrap.org/

    1. Re:A better link to the post is... by Daimanta · · Score: 5, Funny

      Modding post -1, itsatrap

      --
      Knowledge is power. Knowledge shared is power lost.
  3. Re:Black monolith by Doc+Nielsen · · Score: 5, Funny

    no no they invented this new thing called modules, which you can load and unload. It's really neat! ;D

    --
    To boldly mod where no one has trolled before.
  4. Almost slashdotted: copy of important stuff below by Anonymous Coward · · Score: 5, Informative
    Direct link to Linus' 2.6.25 announcement message

    Also kernelnewbies.org seems to be very slow at the moment. Here is a copy of the important changes section from their 2.6.25 changelog page:

    1.1. Memory Resource Controller

    Recommended LWN article (somewhat outdated, but still interesting): "Controlling memory use in containers"

    The memory resource controller is a cgroups-based feature. Cgroups, aka "Control Groups", is a feature that was merged in 2.6.24, and its purpose is to be a generic framework where several "resource controllers" can plug in and manage different resources of the system such as process scheduling or memory allocation. It also offers a unified user interface, based on a virtual filesystem where administrators can assign arbitrary resource constraints to a group of chosen tasks. For example, in 2.6.24 they merged two resource controllers: Cpusets and Group Scheduling. The first allows to bind CPU and Memory nodes to the arbitrarily chosen group of tasks, aka cgroup, and the second allows to bind a CPU bandwidth policy to the cgroup.

    The memory resource controller isolates the memory behavior of a group of tasks -cgroup- from the rest of the system. It can be used to:

    * Isolate an application or a group of applications. Memory hungry applications can be isolated and limited to a smaller amount of memory.
    * Create a cgroup with limited amount of memory, this can be used as a good alternative to booting with mem=XXXX.
    * Virtualization solutions can control the amount of memory they want to assign to a virtual machine instance.
    * A CD/DVD burner could control the amount of memory used by the rest of the system to ensure that burning does not fail due to lack of available memory.

    The configuration interface, like all the cgroups, is done by mounting the cgroup filesystem with the "-o memory" option, creating a randomly-named directory (the cgroup), adding tasks to the cgroup by catting its PID to the 'task' file inside the cgroup directory, and writing values to the following files: 'memory.limit_in_bytes', 'memory.usage_in_bytes' (memory statistic for the cgroup), 'memory.stats' (more statistics: RSS, caches, inactive/active pages), 'memory.failcnt' (number of times that the cgroup exceeded the limit), and 'mem_control_type'. OOM conditions are also handled in a per-cgroup manner: when the tasks in the cgroup surpass the limits, OOM will be called to kill a task between all the tasks involved in that specific cgroup.

    Code: (commit 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)

    1.2. Real Time Group scheduling

    Group scheduling is a feature introduced in 2.6.24. It allows to assign different process scheduling priorities other than nice levels. For example, given two users on a system, you may want to to assign 50% of CPU time to each one, regardless of how many processes is running each one (traditionally, if one user is running f.e. 10 cpu-bound processes and the other user only 1, this last user would get starved its CPU time), this is the "group tasks by user id" configuration option of Group Scheduling does. You may also want to create arbitrary groups of tasks and give them CPU time privileges, this is what the "group tasks by Control Groups" option does, basing its configuration interface in cgroups (feature introduced in 2.6.24 and described in the "Memory resource controller" section).

    Those are the two working modes of Control Groups. Aditionally there're several types of tasks. What 2.6.25 adds to Group Scheduling is the ability to also handle real time (aka SCHED_RT) processes. This makes much easier to handle RT tasks and give them scheduling guarantees.

    Documentation: sched-rt-group.txt

    Code: (commit 1, 2, 3, 4)

    There's serious interest in running RT tasks on enterprise-class hardware, so a large number of enhancements t

  5. It's a kernel, not an OS by H4x0r+Jim+Duggan · · Score: 5, Insightful

    "numerous changes in this revision of the OS"

    Asking people to call it GNU/Linux is one thing, but it's not much to ask Slashdot not to call a kernel changelog an OS changelog.

  6. Re:Wonderful. More Stable. ... So? by Simon+Brooke · · Score: 5, Insightful

    My history with Linux has the problem not being with the Linux Kernel but with the X Windows System (Xwindows is big and clunky to support features that we don't fully utilize and are fully utilizeing them less and less). I think Linux needs to seporate from its Unix haritage and start moving away from X11 and to something a bit more direct with the frame buffer and video card (Much like how OS X has). Granted X11 has improved in the areas of 3d acceleration and such. But compared to OS X it is lacking

    And that has precisely what to do with the kernel? X is in user space. If you want to replace X with any other windowing system you like, just port it or write it. And when you've written something as powerful and stable as the X Window System, come back and tell us about it.

    --
    I'm old enough to remember when discussions on Slashdot were well informed.
  7. Re:Wonderful. More Stable. ... So? by bytesex · · Score: 5, Interesting

    I'm no proponent of the GP, but there *is* a 'third way', if you will - expand the X-library so that a) local connections don't necessarily use a protocol over a pipe, but make function-calls instead, and b) implement widgets in the X-client library much more detailed than the current window- and image-primitives; say a basic set of menu-bar, scrollbar, list, tabs etc. All pluggable in the X-server, of course, so that everybody can still 'skin' their desktop according to their taste. c) Do away - finally - with the silly ways that cut-n-paste and drag-n-drop, in short, IPC and buffers, have been implemented in X. Invent a serious way to communicate between X clients, not a tag-along.

    --
    Religion is what happens when nature strikes and groupthink goes wrong.
  8. Re:Black monolith by X.25 · · Score: 5, Funny

    Ok, so is it still a big monolithic kernel that we need to recompile every time we need to load a driver into kernel-space?

    You're the proof that time travel is possible.

  9. Re:Wonderful. More Stable. ... So? by beav007 · · Score: 5, Insightful

    If my laptop isn't supported by linux (any distro), then linux sucks!
    Wrong. If your hardware manufacturer doesn't release decent drivers for Linux, the manufacturer sucks*.

    Linux devs are working their asses off in their parents basements, hacking and testing drivers for hardware that they don't have access to the interface specifications for. If things still look a little shakey, just remember to be glad that they work at all, given the hours of work for $0 return.

    When you are done giving thanks, complain to your hardware manufacturer, who does make money from the deal, and does have the full specifications - AND for reasons unknown, have turned down the offer of OSS developers writing the drivers for them, for free .




    *See also: Canon
  10. Re:exec mode by Anonymous Coward · · Score: 5, Informative

    Funny. How about -1, wrong audience?

    For the uninitiated: placing 'exec true' in your profile renders you unable to open a terminal (on 99% of linux desktops that use bash as shell)

    (heh. Captcha: lecture)