Linux Kernel 3.0?
An anonymous reader writes "A discussion on the Linux kernel mailing list between Linux creator Linus Torvalds, Linux guru Ingo Molnar, and a few others debated the name of the upcoming stable kernel release. The choices: 2.6 or 3.0. Evidently there's been enough improvements, most notably the VM, that they're leaning towards calling it 3.0..."
To a consumer, 3.0 sounds like a better product than 2.6
:-)
My vote would be to make it Linux 10.0 to make it compatible with the SuSe & mandrake number systems.
on to 3.11! Oops!
Though some of the improvements may have been a real boost (the O(1) scheduler, etc), the decision to call it "3.0" won't come until some serious marketing decisions are made.
Linux is not an underground system anymore -- it is a competitor in a business market and means billions of dollars to people and businesses, as unsuccessful as they may be.
Calling the kernel 3.0 is just a name, a marketing strategy, that will give the idea to people who aren't in the know that something truly significant and revolutionary has happened.
There's clearly a war going on between the idealists and the realists in that mailing list, and a simple number like "3.0" can make or break millions of dollars.
A rose by any other name would still have thorns.
Linus said:
--
Linus agreed that if the VM is as good as it seems to be, indeed the upcoming release deserves to be called 3.0. But he also pointed out that there are many silent users who tend not to speak up until there is an official release. He asks, "people who are having VM trouble with the current 2.5.x series, please _complain_, and tell what your workload is. Don't sit silent and make us think we're good to go.. And if Ingo is right, I'll do the 3.0.x thing."
---
So does this mean that us semi-power users should be going ahead and testing the 2.5 kernel? If so to what degree.. Should we be running 2.5 on our desktop boxes? What about video drivers (nvidia) and all that?... When does it actually get into the 'testing' time frame, hence things start to become stable?
Cheers
craz
stuff
Emacs adheres religiously to the maxim of only bumping up the release number for really major changes (i.e., those that created backwards incompatibility.). Consequently, they are on point release 21 or something--they have dropped the initial 1. or 2. because it apparently seemed redundant.
Here's my idea...
I've heard that the 2.2 kernel was very very stable. Now, one could say that:
#1 from 2.2 -> 2.6, we improve stability (since we're taking the 2.x codebase and improving on it) and refrain from adding too many new features.
#2 from 2.2 -> 3.0, we are expected to lose some stability, since this is a *new* codebase (it is a newer version, right? not an improvement like the #1 case) and see more new features.
but personaly, i don't care what you call it. Call it version 3.1337 or whatever...it's still the newer Linux ("Linux kernel" is redundant).
just my thoughts.
Looking for people to chat about multicopters, coding, music. skype: gtsiros
We all know what happened when Leisure Suit Larry skipped a number...It was chaos to all the sex-starved cyber geeks. Go 3 or go home!
You think that I'm crazy, you should see this guy!
As Linus said, it doesn't really matter what it's called, so long as people use it. Versions don't have any real technical meaning (other than the even/odd kernels which signify stable/development).
Since it doesn't have any technical meaning, it shouldn't be argued on technical merit. However, version numbers play a big roll in the business world. Business and marketing folk get the biggerbetterfaster vibe from increasing version numbers.
Several distributions just released new versions in the last couple of months, or are on the verge of releasing new versions. Redhat, Mandrake, Debian, etc. Good stuff. Let the hype play out, and don't trump it by releasing a Brand New Big Version Kernel that none of the distros contain.
Make this one 2.6. Technical people in the know, the ones who run the servers, the ones who really need the performance increases, will upgrade accordingly. Rumors in the press will be able to convince people that Linux is growing and kicking ass.
Make the 3.0 switch after distributions have caught their breath, and after some of the other nifty things that impact userland have been completed: the POSIX stuff, further refinement of the new VM system, FS improvements (resizing, reiser 4, etc).
Then everyone can whoop and holler about what a great new kernel it is, and how much more added value it gives to distribution version increments, etc. etc.
Linux is great technology. Fantastic technology. It's development shouldn't be dictated by fickle marketroids. But version numbers are the most publicly visible attribute of the kernel, and should be treated accordingly.
Yeah right..
2005-03-28: Debian 3.1 is released!
It includes the advanced Linux 2.4.8-kernel, KDE 2.2.1 and
four year old versions of another 20000 or so packages.
Get it here!
My other account has a 3-digit UID.
Debian might be slow with releases but I hope they're not going to go backwards. I'm typing this under KDE 2.2.2 and Linux 2.4.18, both came from binary packages straight from Woody.
There's no 2.6 in the list of What Software Version Numbers Really Mean, so obviously it can't be 2.6. Therefore it must be at least 3.0. In fact, I'm stil confused as to how a 2.4 release got out.
I think we should speed up development and annoint a dedicated "version czar" who will make sure that the Linux kernels stay ahead of Windows. Hard as it may be, I'm willing to ``do my share'' and volunteer for this position. My first step would be to shift the decimal point 3 places to the right. This decimal has been hogging the #2 spot in the release number for too long; it is time it got relegated to the #5 spot, where it rightfully belongs.
The Linux kernel alone is not a consumer product.
By itself, it is not very useful, but when you bundle it with a couple of hundred other utilities, applications and environments and call it a distribution, the distribution becomes a consumer product. When you strip it bare and embed it into a device, the device becomes a consumer product. When you load it onto a general purpose computer and call it an appliance, the appliance becomes a consumer product.
When it comes to the kernel, there is no need for consumer level marketing trickery.
Ahh - My eye!
The doctor said I'm not supposed to get Slashdot in it!
The truth is changing major version numbers would give the Linux business a major shot in the arm. Every press establishment would have no choice but to run a story about Linux and it's capibilities at a time when MS is chasing it's customers off, and everybody would have to upgrade their Linux mascot.
Do you really think there would be version wars if the announcments didn't make the participants money?
Novel theory: Modern Man evolved from psychopath
NT 4.0 is STILL NT4.0 despite the fact that most recent software REQUIRES a recent service pack.
I've taken up calling Microsoft service packs by major.minor.servicepack. Therefore, Windows NT 4 is up to 4.0.7, Windows 2000 is up to 5.0.3, and Windows XP is up to 5.1.1. Currently maintained IE versions are 5.5.2 (?) and 6.0.1.
Will I retire or break 10K?
We can't have VM problems until we can actually compile the kernel. Why have a 2.5.x release if it doesn't even compile?
"Linux kernel" is redundant
No. Under USA trademark law, product and brand names are adjectives and should be followed by a generic noun. Thus, "Linux kernel", "Windows operating system", "Mac OS", "Macintosh computer", "Kleenex tissue", "SPAM luncheon meat", "Xerox copier", etc.
Will I retire or break 10K?
While millions of Linux users were apparently happy with the early 2.4 kernels, those of us with heavy CPU large memory needs were appalled when we watched our computers lock up under heavy memory usage. Yes, we thought we had a usable system at 2.4.14, but then came .15, with file system corruption, so .16 was the FIRST usable version for systems with high memory demand. Wouldn't it be great if 2.6.1 was as robust as 2.2, or 2.4.17, at the beginning?
Since we all know better than to deploy a .0 version, 3.0 must be a non-starter.
Actually, the retail Win95 reported its Windows version as 4.00.950 and the DOS Version was 7.00.
You'd get the earlier numbers with some legacy compatibility switches turned on to allow brain dead apps that blew up on winver>3 or dosver>6 to still run.
Linux IV, becuase Free software needs free press, too.
-- @rjamestaylor on Ello
Remember that the Linux kernel is a compilation of hundreds of unique efforts by people with individual talents in each of their respective fields. There's physical and virtual memory, CPU slicing, SMP, filesystems, framebuffering, DMA access, scheduling, not to mention support for a plethora of hardware that exists on today's market - ranging from low-end to mainframe.
Per your assessment, there is potential for hundreds of Linux Kernel gurus. {smile}
BD Phone Home!
Shameless plug. Like you weren't expecting it.
I have to say, Winamp (3.0) and commercial games have convinced me that *.0 releases of almost everything should really be *.0 beta. Zeros scare me, 2.6 sounds comfortingly mature.
I'm the stranger...posting to
Wow, KDE 2 is out?! I'll have to pick that up.
"If he thinks he can hide and run from the United States and our allies, he's sorely mistaken." Bush on bin Laden
Transcipts were released today including those of Gates and Ballmer arguing over what to call the latest version of Windows. Gates suggests WindowsXP where Ballmer is whining like a monkey screaming for WindowsXS. Gates eventually won the argument by giving Ballmer a food pellet.
:))
Really exciting news ladies and gentlemen. (but it's okay... it is Sunday
...And when they came for me, there was no one left to speak out for me." - Martin Niemoeller (1892-1984)
Argh! The first digit in the kernel version number was always meant to indicate the ABI version! They should NOT change it from 2. to 3. unless they intend to make major (backwards-incompatible) changes to the kernel ABI. If they do this then we will lose the second-to-last piece of information in kernel version numbers. (the last piece being the even/odd stable/development thing)
I guess Linus is falling into the same trap as most other free software developers. Already in most software packages, version numbers provide nothing more than an ordered sequence of releases. There is no way to tell just by looking at a version number what ABI/API version is exported, whether it is a stable or development release, etc. Pathetic.
What Software Version Numbers Really Mean (Author Unknown)
...
...
Once you start playing with software you quickly become aware that each software package has a revision code attached to it. It is obvious that this revision code gives the sequence of changes to the product, but in reality there's substantially more information available through the rev-code than that. This article provides a guide for interpreting the meaning of the revision codes and what they actually signify.
1.0: Also known as "one point uh-oh", or "barely out of beta". We had to release because the lab guys had reached a point of exhaustion and the marketing guys were in a cold sweat of terror. We're praying that you'll find it more functional than, say, a computer virus and that its operation has some resemblance to that specified in the marketing copy.
1.1: We fixed all the killer bugs
1.2: Uh, we introduced a few new bugs fixing the killer bugs and so we had to fix them, too.
2.0: We did the product we really wanted to do to begin with. Mind you, it's really not what the customer needs yet, but we're working on it.
2.1: Well, not surprisingly, we broke some things in making major changes so we had to fix them. But we did a really good job of testing this time, so we don't think we introduced any new bugs while we were fixing these bugs.
2.2: Uh, sorry, one slipped through. One lousy typo error and you won't believe how much trouble it caused!
2.3: Some jerk found a deep-seated bug that's been there since 1.0 and wouldn't stop nagging until we fixed it!!
3.0: Hey, we finally think we've got it right! Most of the customers are really happy with this.
3.1: Of course, we did break a few little things.
4.0: More features. It's doubled in size now, by the way, and you'll need to get more memory and a faster processor
4.1: Just one or two bugs this time... Honest!
5.0: We really need to go on to a new product, but we have an installed base out there to protect. We're cutting the staffing after this.
6.0: We had to fix a few things we broke in 5.0. Not very many, but it's been so long since we looked at this thing we might as well call it a major upgrade. Oh, yeah, we added a few flashy cosmetic features so we could justify the major upgrade number.
6.1: Since I'm leaving the company and I'm the last guy left in the lab who works on the product, I wanted to make sure that all the changes I've made are incorporated before I go. I added some cute demos, too, since I was getting pretty bored back here in my dark little corner (I kept complaining about the lighting but they wouldn't do anything). They're talking about obsolescence planning but they'll try to keep selling it for as long as there's a buck or two to be made. I'm leaving the bits in as good a shape as I can in case somebody has to tweak them, but it'll be sheer luck if no one loses them.
______________
The change from 1.x to 2.0 was made at the time that the a.out format was dropped in favor of elf. But wasn't this just a library change? Anyway after 2.8 they could go to 2.10, no reason the second number can't be two digits. Still the changes to vm, and /dev alone might be enough to jump it to 3.0, especially if the changes for SMT with kernel pre-emption are added.
There's something strange about making a bumping a major version number as an afterthought, don't you think?
.
Don't get me wrong... I have all the confidence in the world in Linus, and he knows way more about what he's doing than I do. I'm just surprised that a project that organized wouldn't have a "3.0 List" by now of all the new stuff they plan to do in 3.0 one of these days... and when they start putting all those pieces together in a source tree, they would call that the "3.0 code" from the beginning.
At least that's the way I would imagine it. But don't miscontrue anything I've said as a suggestion that I have any idea what I'm talking about
RP
So make it 3.2.
Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
If the VM improvements are really so cool. just stick them into 2.6, get it out the door, and save your grand schemes for the next release. I know it must be tempting to stick in the next great idea that seems just around the corner, but that just leads to endless delays and demoralizes the hackers that finished their work "on time" as they're waiting out to feature freeze while everyone else is still cleaning their code for release.
Ideal would be, I think, to call a 2.6 feature freeze very soon, and very shortly thereafter, open a 2.7 (2.9?) unstable branch where "anything goes."
I always thought after 2.8 the next stable release was 2.10 with the development branch being 2.9.. why do they act like that is confussing? Nothing new with that.. lots of projects do version numbering just that way. You only bump the major version number for changes that are extreme or break compatibility or change the goal of the project or something large like that. The changes in the 2.5 branch would seem enough to jump to a 3.0 version but I'm confussed why they talked as if after 2.8 you HAD to jump to 3.0 as the next version.
At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
Can someone enlighten me as to what this means? Does it for instance mean that drivers compiled for 2.6.1 will be binary compatible with other 2.6.x-kernels unlike in the 2.4-tree?
I believe the Linux kernel should not be called 3.0 until it is 64-bit through and through.
The difference between 1.x and 2.x was a major architectural change: multiprocessor capability and portability to different platforms. The difference of 3.x should be equally as large: widening of all interfaces and data structures that are currently reaching their limits.
This includes 64-bit memory access, 64-bit file size access, 64-bit block counts on filesystems, and so on. Important external interfaces such as networking and filesystems must also be widened. A fully complete and robust IPv6 stack is a must: something that isn't quite there yet, but is getting close.
Essentially all fields in stat() require widening! Major and minor device numbers desperately need more room. Inode numbers and file size 64-bit, of course. Timestamps need to fix the Y2038 problem: 64-bit, possibly with added precision as well (to guarantee each file can be unambiguously sorted by time even on fast systems with such applications as parallel make). Security needs to be more fine grained (full ACL support). 32-bit UID and GID numbers. And finally, the filename itself needs to have full Unicode support without loss of field width (255 Unicode characters should be accepted). The output of the ls(1) command is a call to action: essentially every field there is in need of widening!
The main difference should be in the defaults: currently, standard stat() file limits and IPv4 are the defaults, and programs must go out of their way to request larger sizes (O_LARGEFILE) and IPv6. The programming model should be changed to provide programs with the widened resources as standard. This will take a long time, and is a gradual evolution, so there is a definite need for 2.6 and possibly 2.8 as transitional steps. The widening of these critical system resources is probably the main thing keeping Linux from large commercial UNIX installations!
Dr. Demento On The 'Net!
Will Kernal 3.0 include support for USB 2.0, Serial ATA, and Hard drives above 137GB?
www.enthea.org
Heck, Netscape even skips MAJOR version numbers (they skipped 5.0)
Microsoft skipped 91 major version numbers from 3.11 to 95...and it *still* wasn't much of an upgrade.
Computer Science is no more about computers than astronomy is about telescopes. --E. W. Dijkstra
Things just don't work like this. It's difficult to say before a release whether it will be extremely robust. The only way to test stability is to get a whole lot of people to pound on the kernel and find stability problems. Unfortunately, this doesn't happen until Linus declares that the kernel is stable. But he's really just saying "As far as I can tell, the kernel is stable."
Anyway, not everyone had results as good as you with the 2.2 kernels. In fact, you may recall that 2.2.0 wasn't stable at all; 2.2.1 was release shortly thereafter to fix a major bug. When I switched from 2.0 to 2.2, I had plenty of stability problems, mostly due to buggy drivers. Things gradually improved through the 2.2 releases, until I finally stopped having problems around 2.2.14. From looking at LKML archives, I suspect this is the norm, rather than the exception.
In fact, I would say that linux kernel development has the following general pattern:
"Any fool can make a rule, and any fool will mind it."
--Henry David Thoreau
It does. STFU.
It's hard to be religious when certain people are never incinerated by bolts of lightning.
No, its:
LiGNUx 95
LiGNUx 98
LiNTGNUx
LiGNUx 2000
LiGNUXP
and....... drum roll please.......
Li.GNUT
... Linux .NET .NET.
And release it before Windows
There have been some excellent and very valid points made in the comments here - bumping it gives a media boost because everyone will devote a few screen inches to it. That therefore needs to be balanced with a collection of new features that people can be sold on. "It runs millions more threads than you will ever see, it does it in the blink of a very small and fast blinking bat" isn't quite the same as "we put in all new disk management and resizing tools, all new enterprise-class filing systems, top notch new security controls..", etc, etc.
Those are all perfectly true and someone needs to work that out, not to mention work out if it really matters.
What I think really does matter is what the 3.0 release comes from, not when. I really wouldn't like to see 2.5 or 2.9 go straight into 3.0. Sure it may be a lovely new kernel, but if it's going to take until 3.0.14 to get stable enough, people are going to be unhappy.
I guess my suggestion therefore would be to turn 2.5 into 2.6, get it stable and into all the major distros, then run two development trees, an experimental 3.1 for way out new core stuff, but also a 2.9 that simply adds non-core things to 2.6 (e.g. Reiser4, EVMS, MACs, etc.) so that it has a stable base to sit on while integration work is done. The wonderous BitKeeper ought to make back/forward porting work done on each tree relatively simple, plus we get to announce a big 3.0 release that not only has tons of sweet new features, but also has many months of proven stability because it's core is really 2.6. Nes pas?
Chris "Ng" Jones
cmsj@tenshu.net
www.tenshu.net
In general, I think Linux version numbers tend to be as screwed up as Windows version numbers. The kernel itself, and stuff like GNOME and KDE are fine, but a lot of the secondary software is not. There are totally stable products that have 1.0 is something the author has some level of faith in.
A deep unwavering belief is a sure sign you're missing something...
You forgot "I run Windows, you insensitive clod!"
SpamNet - a spam blocker that really works
So, maybe we should just go from 2.5 to 3.1 directly? :-)
I remember Commodore caught a bit of flak for their versioning system (it was the same as the Linux kernel's and people couldn't handle double digits in the minors without feeling woozy and have a bit of a lay down) from time to time, but Microsoft's just plain silly. Has anyone seen Exchange 1.0? 2.0? 3.0, even? Or the "Exchange client" in Windows 95 Mk II that didn't have support for the Exchange server?
It's a good thing I'm currently on Windows NT 5.1, an OS named Windows Vomit ( :-XP ) would be too much to bear for my poor Athlon...
Money for nothing, pix for free
The zeroes - they're spreading, they're everywhere!
seriously, though, I'm happy so long as the 2nd digit isn't 0.
I'm the stranger...posting to
Why not avoid the whole 2.4 not being stable for a while issue? Release as 2.6, fix mountains of bugs, when it is properly stable, release 3.0==2.6.14 or whatever.
Free Java games for your phone: Tontie, Sokoban
Now, before you bash NS's marketing for this, remember the progression of IE was 1.0 to 2.0 to 3.0 in less than a year, with 1.0 barely ever getting distributed. Plus rememeber Office apps. Access went 1.0, 2.0, 3.0, skipped 4, 5, and 6 to go to 7.0 in Office 95. At least Netscape has a valid reason for skipping 5.0 :)
jX [ Make everything as simple as possible, but no simpler. - Einstein ]
Ever wonder if Linus cackles to himself a little bit each night before he goes to sleep?
Jake
Dating: while( 1 ){ call_girl(); get_rejected(); drink_40(); } return 0;
> Linux 2004 build 0x353E07-3489287 3.1.14
Hey, the Linux people could adopt the Mozilla method of versioning...
Linux/2.0 (CISC; gcc3.2; IA32 i686; en-US; rv:2.5b) Kernel/20021031
Cut that out, or I will ship you to Norilsk in a box.
The kernel itself has supported 64 bit file ops since 2.4. glibc off_t, stat, fseek etc are 64bit if you choose them to be via standard compiler flags.
IOW: STFU.
If you really want marketing.
May we never see th
Dammit, we have a kickass I/O subsystem, cool. But without disk-access priorities attached to processes, it's kind of hard to fully take advantage of it.
May we never see th
then they better make it stable and freeze just about every API for the whole 3.x series. That is, unless they feel content to let Linux be a toy OS for computer geeks. They can do it, and it is a good thing. I hope they do, but I don't have high hopes.
Now, everyone knows that Microsoft has a history of only getting it right on the third try - so this must explain why Word is such a virus-ridden piece of shit - no third try.
Seriously, they should not bump it up to version 3.0. After all, there ware lots of differences between 2.0 and 2.2, and between 2.2 and 2.4, and nobody wanted a major version number bump.
Besides, if we do this, what are we going to be at in 20 years, version 274.4.98pre4?
Linux has a kernel? of what?
Bhuddha-lite
Whatever.