Линус Торвальдс анонсировал выход тестовой версии Linux-ядра 3.0-rc1, окончательно утвердив план по изменению нумерации версий. Таким образом версию 2.6.39 можно считать последним выпуском ветки 2.6.x, которая развивается уже около 10 лет.
В анонсе отдельно подчеркивается, что версию 3.0 не стоит считать каким-то кардинальным шагом, какой можно было наблюдать при появлении GNOME 3.0 или KDE 4.0. Linux-ядро 3.0 - это просто формальная смена нумерации, приуроченная к двадцатилетию проекта и десятилетию существования ветки 2.6.x, не более. Никаких серьезных нарушений совместимости или специальных новшеств не будет. Новое ядро плавно продолжит развитие текущей кодовой базы и по уровню нововведений будет сравнимо с версией 2.6.40. Процесс разработки также останется прежним.
Следующим после 3.0 выпуском станет версия 3.1, затем 3.2 и так далее, пока не пройдут очередные 10 лет или не возникнет потребность коренных изменений, связанных с глобальной переработкой ключевых подсистем или нарушением совместимости. В процессе накопления патчей корректирующие обновления будут представлены как 3.0.1, 3.0.2, 3.0.3 и т.п.
В представленной версии 3.0-rc1 около 2/3 всех изменений связаны с кодом драйверов устройств. Из других изменений можно отметить:
- Добавление реализации нового типа кэша Cleancache, который может использоваться ядром для хранения восстановимых из других источников данных, которые не страшно потерять, но при наличии ресурсов неплохо держать в памяти. Например, в Cleancache могут храниться ассоциированные с файлами на диске страницы памяти, которые в случае очистки кэша впоследствии могут быть перечитаны с диска. Поддержка CleanCache уже добавлена в Ext3, Ext4, Btrfs, OCFS2 и Xen. Cleancache является первой практической реализацией появившейся в ядре 2.6.39 техники трансцендентного управления памятью ("Transcendent memory"), позволяющей улучшить поведение системы при работе с не представляющими важность данными (например кэш) в условиях дефицита оперативной памяти. По сути Transcendent memory напоминает RAM-диск, имеющий ряд особенностей: размер RAM-диска не известен, запись данных не всегда может быть гарантирована и уже записанные данные могут быть очищены (удалены).
- Поддержка раздельных номеров файловых дескрипторов внутри изолированных пространств Namespace. Namespace является своеобразной легковесной техникой виртуализации, при которой некоторые процессы могут быть отрезаны от остальной системы, работая в отдельном пространстве имен и влияя на другие части системы.
- Продолжение реорганизации кода, связанного с платформой ARM;
- Проведение оптимизации и чистки кода в подсистеме VFS;
- Добавление разработанного в рамках проекта OpenKinect драйвера для устройств Microsoft Kinect. В настоящее время драйвер способен принимать с устройства видеопоток, взаимодействуя с RGB-сенсором или монохромным сенсором, т.е. позволяет использовать Microsoft Kinect в роли web-камеры или инфракрасной камеры. Датчики глубины пока не поддерживаются;
- Обновлен код DRM-модулей Intel, Radeon и Nouveau. Проведена оптимизация производительности для гибридных процессоров Intel Sandy Bridge, обеспечена начальная поддержка Intel Ivy Bridge и AMD Fusion Llano APU;