es war ja früher so das eine ungerade 2. Zahl eine entwicklerversion markierte.
darum gab es 2.2.x, 2.4.x und 2.6.x (Schema: a.b.c)
2.3.x und 2.5.x gab es ebenfalls, die waren jedoch entwicklerkernel, welche nie offiziell erschienen
bis version 2.6.8 war die versiosnummer dreistellig. dann schlich sich ein schwerer bug ins release ein, und es gab eine gefixte version 2.6.8.1 (Schema: a.b.c.d)
das übernahm man dann als offizielles schema, um die geupdateten kernel einer version unterscheiden zu können
seit 2004 entwickelt man direkt am kernel, die 2. Zahl war seither unnötig, weil es nichts mehr zu unterscheiden gab !
Nun geht der Kernel ins das 3. Jahrzehnt seiner entwicklung, linus entschied sich daher, das der kernel sich die 3 "verdient" habe (bzw. es war ein vorschlag von ihrgendwem auf der mailingliste).
und wenn man grade bei den änderungen ist, dann kann man diese 2. zahl, die man seit 7 jahren grundlos mit rumschleppt, auch rausschleißen

so entsteht nun 3.0.0 (Schema: a.c.d)
Legende:
a: sehr große, grundlegende Änderung, zb ein 3. Jahrzehnt, in das man geht
b: Majorrelease bzw. entwicklerkernel hatte immer ungerade zahl
c: die eigendliche Version, zuletzt 39, nun wohl 0
d: da man ab 2.6.11 (2005) auch für alte kernel regelmässig (sicherheits-)updates herausbrachte konnte man hier die unterschiedlichen kernel einer version unterscheiden.
edit: gute grafik
http://upload.wikimedia.org/wikipedia/de/timeline/c1d632721b176ead0b298902978b91aa.png