Linus Torvalds, creator of the core code that drives the Linux open-source operating system, acknowledged in an e-mail message this week that Linux isn't yet fully mature, which can make development difficult.
Torvalds was commenting on the recent release of version 2.5.0 of the kernel, or heart, of Linux, which on Monday had to be replaced because of a file-system bug. The 2.5 kernel is only for software developers working on future versions of Linux. Current retail versions of Linux use variations on the 2.4 kernel.
In a note to a Linux developer, Torvalds said a major release like kernel 2.5 or 2.4 is always difficult, because once a large number of people get their hands on the software, they are statistically more likely to discover errors.
"The people you really want to test it won't test it until it is stable, and you cannot make it stable before you have lots of testers," he wrote in the message, later posted on a Linux developer site. "A basic chicken-and-egg problem, in short."
With Linux, things are more difficult because the OS is relatively young, and is still changing quickly.
"The real solution is to make fewer fundamental changes between stable kernels, and that's a real solution that I expect to become more and more realistic as the kernel stabilizes," Torvalds wrote. "But you also have to realize that fewer fundamental changes is a mark of a system that isn't evolving as quickly and that is reaching middle age. We are probably not quite there yet."
However, he said the 2.5 version of the kernel, released last week, is "off to a good start."
"The system does look fairly stable, with just some silly problems that have known solutions and aren't a major pain to handle," Torvalds wrote.
One problem with kernel 2.5.0 was corrected on Monday, when version 2.4.15, also known as 2.5.0, was replaced by 2.4.16 because the earlier version could corrupt file systems. The file-system corruption bug had earlier cropped up in pre-release version 9 of kernel 2.4.15.
Staff writer Matthew Broersma reported from London.