После двух месяцев разработки вышла очередная версия ядра Linux — 3.5.
Из нововведений выделим следующие:
- в сетевой подсистеме:
- добавлен планировщик пакетов CoDel, реализующий механизм активного управления очередью с контролируемыми задержками, который призван обеспечить качество обслуживания на глобальном уровне сети Интернет, устраняющий переполнение буферов;
- в стек TCP добавлена функция ранней перепередачи, которая ускоряет восстановление соединения при потере пакетов;
- в код NFC добавлена поддержка компонентов NFC с поддержкой HCI;
- удалена поддержка Token Ring и Econet (RIP :( — прим. pf);
- в файловых системах и подсистеме хранения данных:
- в btrfs устранены всплески задержки записи метаданных, а также улучшено обнаружение ошибок данных;
- в ext4 появилась возможность добавлять контрольные суммы CRC32 к метаданным;
- код программного RAID теперь поддерживает использование инструкций AVX;
- улучшена поддержка HFS;
- добавлена базовая поддержка SMB2 в CIFS;
- для FUSE представлена поддержка «punch hole», обеспечиваемая через вызов fallocate;
- внесены обширные изменения в XFS;
- в архитектуре:
- добавлены uprobes, позволяющие произвольно вставлять точки останова (breakpoints) в код программ «на лету»;
- улучшена трассировка;
- произведена дальнейшая реструктуризация и унификация кода поддержки платформы ARM;
- для KVM представлен новый API для внесения (injecting) сообщений MSI в гостевые системы;
- в Xen добавлена поддержка perf;
- улучшен код планировщика процессов для систем NUMA;
- добавлена документация о загрузке ядра через EFI напрямую;
- улучшена подсистема EDAC;
- в драйверах:
- в драйвер E1000e добавлена поддержка i217 PHY;
- улучшена производительность драйверов для видеокарт с чипами от R600 до R900;
- улучшена транспортировка звука поверх HDMI для новых Radeon GPU;
- в драйвер nouveau добавлена поддержка аппаратного ускорения на чипах Kepler;
- информация о поддержке Intel RC6 теперь экспортируется в sysfs;
- добавлена поддержка фреймворка prime для i915, nouveau, Radeon и некоторых других драйверов, что улучшает работу с гибридной графикой;
- добавлена поддержка звуковой карты Asus Xonar DGX;
- удалена устаревшая файловая система устройств USB (/proc/bus/usb);
- в инфраструктуре:
- улучшена изоляция контейнеров, направленная на чёткое разграничение прав пользователей;
- усовершенствована система протоколирования сообщений ядра;
- механизм seccomp расширен для повышения безопасности при исполнении недоверенного кода;
- включена функция Android «extcon»;
- улучшена подсистема гибернации;
- добавлена функция Android «autosleep», которая является альтернативой wakelocks, механизма, обеспечивающего автоматическое засыпание устройств с целью экономии энергии;
- добавлен frontswap;
- добавлен CMA;
- естественно, в рамках маленькой новости невозможно упомянуть все остальные изменения, улучшения и ухудшения, значительные и не очень, а также исправления старых багов и добавление новых, поэтому настойчивому и любопытному читателю предлагается последовать по нижеприведенным ссылкам.
Подробнее об изменениях можно прочитать в этих статьях: ноль, раз, два, три, четыре, пять. Также рекомендуется ознакомиться с такими источниками: Linux Kernel Newbies, Linux Kernel Newbies (страницей о драйверах), обзором Phoronix, а также страницей со ссылками на все новости, которые касаются новой версии ядра. Особо интересующимся настоятельно рекомендуется читать лог коммитов как самый полный источник информации о нововведениях.
>>> Анонс