Slashdot Mirror


Behind the Scenes in Kernel Development

An anonymous reader writes "Some interesting changes took place in the way the Linux kernel is developed and tested. In many ways, the methods used to develop the Linux kernel are much the same today as they were 3 years ago. However, several key changes have improved overall stability as well as quality. This article takes a look behind the scenes at the tools, tests, and techniques -- from revision control and regression testing to bugtracking and list keeping -- that helped make 2.6 a better kernel than any that have come before it." We might as well mention here (again) that a couple of new kernels are out: leif.singer writes "2.6.3 and 2.4.25 are out, fixing another vulnerability in do_mremap()."

1 of 139 comments (clear)

  1. Linux in C++ by onash · · Score: 0, Flamebait

    I would like to see Linux written in C++. I've had to dig into the code a couple of times, and it's really not easy to understand what's happening under the hood,for example all those function pointers to that could be replaced by virtual functions. C++ being slower than C is a myth, it may have been true few years ago.. but not anymore.

    The benefit of writing something like Linux in C++ is that the more complex things can be abstracted so they can be understood by more programmers and computer science students (or according to Open Source philosophy; more eyes, fewer bugs). Object orientation, instead of modular C programming, would also mean that it would be easier to refactor parts of the systems, which could ease things up for students that want to test their theories in action, and then donate them to Linux if they are better

    C can be thought of as a subset of C++, so there is no reason to stop using neat C tricks (not everything should be an Object - C++ is not Java!). This isn't about stop low level programming. It should be about making the code more understandable. C and C++ can live happily together, but some Linux coders are just stubborn and won't stop using new as variable names and etc.