Линус Торвальдс анонсировал выход тестовой версии 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;
- Добавлен недостающий storage-бэкенд Xen, который ознаменовал завершение добавления всех компонентов Xen, необходимых для работы Dom0 без установки дополнительных патчей;
- В код netfilter интегрирован JIT-компилятор правил,
поддерживающий работу на системах x86-64, что позволит значительно
увеличить производительность обработки пакетов пакетным фильтром.
- Для беспроводных карт Realtek представлен новый драйвер rtl8192se;
- Поддержка
непривилегированных ICMP-сокетов, при помощи которых можно организовать
работу ping и других отладочных утилит без предоставления
дополнительных привилегий через suid-бит или capabilities.
|