The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Релиз ядра Linux 4.2"
Отправлено opennews, 30-Авг-15 23:42 
После двух месяцев разработки Линус Торвальдс анонсировал (https://lkml.org/lkml/2015/8/30/96) релиз ядра Linux 4.2 (http://kernel.org). Среди наиболее заметных улучшений: интеграция драйвера AMDGPU, поддержка стекового подключения LSM-модулей, новый метод формирования энтропии для генератора псевдослучайных чисел, новый классификатор пакетов Flower, проведена оптимизация ассемблерного кода для архитектуры x86, поддержка туннелей GENEVE, средства шифрования в F2FS, драйвер virtio-gpu с реализацией виртуального GPU, новая подсистема libnvdimm.

В новую версию принято около 13 тысяч исправлений от более чем 1569 разработчиков, размер патча - 64 Мб (в два раза больше, чем патч с ядром 4.1, например, новый драйвер AMDGPU занимает более 400 тысяч строк кода). Изменения затронули 10926 файлов, добавлено 1081330 строк кода, удалено 282089 строк). Около 42% всех представленных в 4.2
изменений связаны с драйверами устройств, примерно 20% изменений имеют
отношение к обновлению кода специфичного для аппаратных архитектур, 12% связано с сетевым стеком, 4% - файловыми системами и 4% c внутренними подсистемами ядра.


Из наиболее интересных новшеств (http://kernelnewbies.org/Linux_4.2) можно отметить:


-  
Дисковая подсистема, ввод/вывод и файловые системы

-  В F2FS, развиваемую компанией Samsung высокопроизводительную файловую систему для Flash-накопителей, добавлена возможность шифрования на уровне отдельных файлов и поддержка операций  FALLOC_FL_ZERO_RANGE и FALLOC_FL_COLLAPSE_RANGE для управления резервированием пустых областей через вызов fallocate();
-  В ext4 добавлена поддержка опции FALLOC_FL_INSERT_RANGE (https://lwn.net/Articles/629965/), позволяющей осуществить подстановку обнулённого блока в существующий файл через вызов fallocate();
-  В XFS появилась возможность прямого доступа к устройствам постоянной памяти (persistent-memory), применяя интерфейс DAX;
-  В файловой системе CIFS добавлена экспериментальная поддержка протокола SMB 3.1.1;

-  В модуле dm-cache, предназначенном для ускорения доступа к жестким дискам через применение кэширования на SSD-накопителях, добавлена (http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.g... поддержка SMQ-кэширования (stochastic-multi-queue), решающего  проблемы с большим потреблением памяти при кэшировании с привлечением нескольких очередей (multi-queue);


-  
Память и системные сервисы

-  Код выборки по именам файлов переработан для исключения рекурсии, что позволило сократить нагрузку на стек, повысить надёжность работы сложных систем хранения и убрать лимит на глубину вложенных символических ссылок;
-  В подсистему профилирования perf добавлена (http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.g...поддержка  функциональности PEBSv3 (Precise Event-Based Sampling), присутствующей в новых процессорах Intel. Улучшена поддержка возможностей Intel PT (аппаратный трассировщик CPU) и Intel CQM (мониторинг качества утилизации кэша). Значительно расширены возможности утилиты perf: в 'perf top' реализована возможность динамического включения/выключения событий, в 'perf probe' добавлена поддержка глобальных масок имён функций и возможность сбора данных о всех аргументах функций, проведена подготовка к внедрению многопоточного варианта команды 'perf report';
-  В систему обработки данных от термодатчиков, добавлен новый power-allocator (https://lkml.org/lkml/2014/12/5/434), сочетающий раздельную обработку параметров нагрева отдельных элементов с попыткой поддержания общей температуры системы в заданных границах;
-  Переписан ассемблерный код для архитектуры x86, переработан (http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.g... и реструктуризирован код для взаимодействия с модулями операций с плавающей запятой (FPU);
-  Добавлена новая подсистема ядра "libnvdimm (https://www.kernel.org/doc/Documentation/nvdimm/nvdimm.txt)&... предоставляющая различные методы доступа к массивам энергонезависимой памяти (NVM, non-volatile memory), сочетающей производительность ОЗУ с возможностью постоянного хранения содержимого. Для процессора энергонезависимая память выглядит как обычное ОЗУ (отображается в пространство системной памяти в виде больших регионов физической памяти), но при этом данные не теряются после прекращения подачи энергии. Для записи данных в NVM-память представлены функции memremap_pmem(), memcpy_to_pmem() и wmb_pmem(). Обеспечена возможность представления регионов NVM-памяти  в качестве отдельных виртуальных устройств. Через модуль "BTT" (block translation table) реализован слой для атомарного посекторного доступа к NVM-массивам, представленным в форме блочных устройств;
-  Изменён подход к монтированию псевдо-ФС sysfs и /proc. Поддиректории для точек монтирования (например, /sys/debug) теперь специально помечены и монтирование допускается только в них. Добавлены средства (https://lwn.net/Articles/647757/) для контроля соответствия флагов для уже примонтированных и новых экземпляров псевдо-ФС (для монтирования в контейнерах);


-  
Виртуализация и безопасность

-  Добавлен (https://lwn.net/Articles/642166/) новый код формирования энтропии для генератора псевдослучайных чисел, основанный на учёте отклонения  времени повторного исполнения определённого набора инструкций на CPU (CPU execution time jitter), которое зависит от множества внутренних факторов и непредсказуемо без физического контроля над CPU. Новый код решает проблему с недостаточным числом источников энтропии на встраиваемых устройствах;

-  В гипервизор KVM добавлена поддержка множественных адресных пространств и режима системного управления (SMM (https://ru.wikipedia.org/wiki/System_Management_Mode), System Management Mode). Данные возможности позволяют реализовать поддержку режима верифицированной загрузки (Secure Boot) для гостевых систем;
-  Реализована возможность стековой организации (https://lwn.net/Articles/635771/) модулей LSM (Linux Security Modules), позволяющей выстраивать цепочки обработчиков, задействуя сразу несколько модулей. Например, теперь можно подключить специализированные LSM-модули в качестве надстройки поверх таких систем, как  SELinux, Smack, TOMOYO и AppArmor.
-  Поддержка устройства virtio-gpu (виртуальный GPU), которое пока ограничено возможностью ускорения 2D-графики;


-  
Сетевая подсистема

-  Добавлен новый классификатор пакетов "Flower", который позволяет классифицировать пакеты на основе настраиваемой комбинации ключей и масок пакетов;
-  Интегрирована поддержка туннелей GENEVE (http://tools.ietf.org/html/draft-gross-geneve-02) (Generic Network Virtualization Encapsulation);
-  В подсистему netfilter добавлена поддержка классификации пакетов по времени их поступления (ingress-time);
-  В сокетах Unix-domain обеспечена поддержка системного вызова splice() (https://en.wikipedia.org/wiki/Splice_%28system_call...
-  Добавлен алгоритм контроля перегрузки (congestion-control), учитывающий отклонение величины ожидания (Delay-gradient (https://lwn.net/Articles/645115/));

-  
Оборудование

-  В состав ядра принят код драйвера AMDGPU (https://www.opennet.ru/opennews/art.shtml?num=42078), разработанного для воплощения в жизнь  новой стратегии продвижения драйверов для графических процессоров компании AMD, в рамках которой модуль ядра является полностью открытым, а проприетарный драйвер Catalyst будет включать лишь набор проприетарных библиотек, реализующих фирменные варианты OpenGL, OpenCL и т.п. Добавленный в ядро драйвер отвечает за поддержку GPU на основе GCN, начиная с R9 285 "Tonga" (семейство Volcanic Islands) и более новых;

-  Возвращена поддержка архитектуры Renesas H8/300, которая несколько лет назад была исключена из ядра из-за заброшенного состояния и отсутствия сопровождающего. Новая реализация пер...

URL: https://lkml.org/lkml/2015/8/30/96
Новость: https://www.opennet.ru/opennews/art.shtml?num=42843

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру