LINUX.ORG.RU

Релиз ядра Linux 3.11

 ,


0

1

Вышел релиз ядра Linux 3.11, релиз доступен на www.kernel.org. Новый релиз вышел после 2 месяцев разработки, ему присвоено кодовое имя «Linux for Workgroups», по аналогии с Windows 3.11 for Workgroups. Наиболее заметные улучшения в этом релизе: технология сжатого кэширования раздела подкачки Zswap; флаг O_TMPFILE для создания «невидимых» временных файлов; возможность упаковки ядра с использованием сжатия LZ4; экспериментальная поддержка кластерной файловой системы Lustre; спящий режим IRST; динамическое управление питанием GPU Radeon; NFS 4.2; применение SELinux для NFS; порт KVM и Xen для архитектуры ARM64.

Для включения в новую версию ядра принято 10.7 тысяч исправлений от 1239 разработчиков. Интересно распределение по числу изменений: 9.1% изменений внесено сотрудниками компании Intel, 8.5% - Red Hat, 8.3% - Linaro, 4.5% - Samsung, 3.9% - IBM, 3.0% - Texas Instruments, 2.9% - SUSE, 2.6% - AMD, 2.1% - Google, 1.3% - Oracle, 1.3% - ARM, 1.1% - Cisco. Около 43% всех представленных изменений связаны с драйверами устройств, примерно 23% изменений имеют отношение к обновлению кода специфичного для аппаратных архитектур, 11% связано с сетевым стеком, 5% - файловыми системами и 5% c внутренними подсистемами ядра.

Интересных новшеств много, наиболее значимые:

  • Дисковая подсистема, ввод/вывод и файловые системы
    • Включение в состав ядра клиента кластерной файловой системы Lustre, используемой в большинстве кластеров, входящих в список самых мощных суперкомпьютеров мира (6 из 10 и 60 из 100 самых мощных кластеров используют Lustre). Клиентская часть Lustre работает вкупе с серверами для хранения данных и обслуживания метаданных, предоставляя средства для обращения клиентов к хранимым в распределённой ФС данным (основанный на ext4 бэкенд ldiskfs для организации работы сервера хранения данных в ядро не включен). Модуль для работы клиента Lustre поставляется в экспериментальном разделе «staging» и не собирается по умолчанию;
    • В F2FS, развиваемую компанией Samsung высокопроизводительную файловую систему для Flash-накопителей, добавлена поддержка меток безопасности, что позволяет использовать данную ФС с LSM-модулями (Linux Security Modules), в частности даёт возможность использовать средства принудительного контроля доступа SELinux и SEAndroid. Кроме того, в F2FS реализована функция перемонтирования раздела (remount);
    • В Btrfs обеспечена техника слияния запросов ввода/вывода, ожидающих помещения в лог обратной записи, что позволило увеличить скорость записи в синхронном режиме до 60% (с 2.9MB/s до 4.6MB/s) на SCSI-дисках с включенной буферизацией. Прекращено использование структуры btrfs_sector_sum, что позволило заметно поднять производительность линейного копирования. Например выполнение теста утилитой dd на SSD-накопителе показало рост пропускной способности на 74% (с 31MB/s до 54MB/s). Добавлена поддержка клонирования данных файла в тот же файл, когда клонируемая и записываемая области не пересекаются (например, запись клона в хвост);
    • Интегрированы дополнительные оптимизации производительности для файловых систем Btrfs, XFS и Ext4. В Ext4 добавлена поддержка предварительного резервирования места под транзакции;
    • Предварительная поддержка находящегося в разработке стандарта NFS 4.2, в котором ведётся работа по увеличению эффективности потребления ресурсов, например копирование на стороне сервера, предварительное резервирование места, оптимизации для SSD-накопителей;
    • В модуль управления пропускной способностью ввода/вывода blk-throttle добавлена поддержка контроля ресурсов ввода-вывода с блочных устройств при помощи иерархических управляющих групп (cgroups). По умолчанию поддержка иерархических cgroups отключена, для включения следует использовать флаг «sane_behavior»;
    • В Device Mapper добавлен новый модуль «dm-switch» для создания устройства, позволяющего организовать произвольный мапинг регионов ввода/вывода привязанных к определённому набору путей, привязку которых к специфичным регионам можно менять динамически. Новый модуль нацелен на обработку усложнённых случаев маппинга (например, для распределённых хранилищ iSCSI), для которых не достаточно модуля «dm-stripe»;
    • В DM RAID добавлена возможность восстановления работы после временного сбоя накопителя. Если при возобновления работы после остановки (resume) диск помечен как сбойный, но суперблок читается, предпринимается попытка возвращения диска в RAID. Указанное изменение позволяет попытаться вернуть вылетевший из RAID диск простым выполнением операций suspend/resume вместо ручного переконфигурирования;
    • Проведения оптимизация производительности системного вызова sync, работа которого ускорена в 7-8 раз для активно используемых ФС;
    • Добавлена поддержка таблиц дисковых разделов AIX;
    • В файловую систему CIFS добавлена поддержка диалекта SMB3.02. Добавлена опция монтирования «nosharesock» для принудительного создания нового отдельного сокета для сервера (можно создать несколько независимых точек монтирования для разных пользователей). Поддержка верификации запросов SMB3 при помощи цифровых подписей AES-CMAC;
  • Виртуализация и безопасность
    • В системные вызовы open() и openat() добавлена поддержка флага O_TMPFILE, позволяющего передать файловой системе информацию о создании временного файла, не видимого в иерархии ФС, что позволяет применить для данного типа файлов отдельные оптимизации. Создаваемые при помощи O_TMPFILE временные файлы не имеют имени, в качестве пути передаётся только директория. Создание невидимого временного файла без имени позволяет разработчикам приложений не задумываться о возможных уязвимостях, таких, как атака через символические ссылки;
    • В коде Xen и KVM появилась поддержка виртуализации для архитектуры ARM64;
    • Реализация меток безопасности в NFS (Labeled NFS), позволяющих обеспечить полноценную поддержку SELinux для NFS. Ранее для точки монтирования привязывалась только метка, как правило nfs_t. Labeled NFS позволяет использовать произвольное число различных меток для каждого раздела NFS. Например, отдельную метку можно привязать к файлу с образом виртуальной машины, размещённом на NFS-разделе, можно экспортировать домашние директории через NFS с разграничением доступа приложений только в определённые области;
  • Сетевая подсистема
    • Режим опроса (polling) Ethernet-устройств с низкой задержкой (low latency). Современные устройства не информируют систему о получении каждого пакета через генерацию прерываний, вместо этого ядро периодически опрашивает драйвер и получает информацию о накопившихся пакетах. Подобный опрос приводит к появлению задержки в обработке пакетов. Новый режим позволяет приложениям запросить для отдельного сокета пониженный интервал опроса для обеспечения высокой отзывчивости (в частности, при создании сокета можно установить специальный флаг, после чего если при вызове функции read() нет данных для отдачи, то внепланово будет инициирован опрос драйвера);
    • В conntrack-модуле трекинга соединений для протокола FTP добавлена поддержка методов идентификации перехода в пассивный режим, отмеченных в RFC 1123;
  • Память и системные сервисы
    • Поддержка технологии сжатого кэширования раздела подкачки - Zswap. При необходимости выгрузки страниц памяти на диск, Zswap производит попытку сжать страницы, размещая их при этом в пуле в оперативной памяти. По мере возможности сжатые страницы не выгружаются на диск, чтобы избежать операций ввода/вывода с медленным носителем. Таким образом, при возникновении необходимости сброса памяти в раздел подкачки, удаётся добиться сокращения ввода-вывода, что повышает скорость работы системы в целом, за счет минимизации обращений к медленному носителю. Тестирование Zswap в процессе компиляции ядра при возникновении своппинга продемонстрировало выигрыш по объему ввода/вывода в 76% и сокращение времени выполнения операции на 53%;
    • Поддержка технологии IRST (Intel Rapid Start Technology), представляющей собой вариант реализации спящего режима, обеспечиваемого силами прошивки. В IRST вводится дополнительный таймаут, по истечении которого дамп памяти заснувшей в режиме Suspend-to-RAM системы принудительно сохраняется прошивкой на SSD-накопителе, после чего схемы обесточиваются. При включении устройства, прошивка копирует сохранённые данные в ОЗУ, после чего операционная система восстанавливает своё состояние как при использовании Suspend-to-RAM;
    • Реализована концепция энергоэффективных рабочих очередей внутри ядра. Помещаемые в данный тип очереди задания не привязываются к конкретному CPU и могут выполняться на любых свободных процессорных ядрах, не вызывая пробуждения «спящих» ядер, а используя ядра уже проснувшиеся для выполнения других заданий;
    • В ядро добавлены патчи, необходимые для реализации поддержки запуска в Wine приложений для Windows RT;
    • Для упаковки образов ядра добавлена возможность использования алгоритма сжатия LZ4, примечательного высокой скоростью упаковки и распаковки данных с сохранением приемлемой степени сжатия, соизмеримой с алгоритмом LZO;
    • Изменёно поведение при загрузке модулей ядра - загрузка модуля теперь не завершается ошибкой при указании неизвестных параметров. Подобные параметры игнорируются с выводом предупреждения в лог. Указанное изменение позволит обеспечить работу конфигураций после удаления поддержки тех или иных параметров модулей или при загрузке старой версии ядра;
    • Добавлен механизм для отслеживания в какие страницы памяти задача осуществляет запись. Указанная возможность востребована для работы системы заморозки процессов (checkpoint-restore), то также может использоваться для профилирования и сбора статистики;
    • Увеличение масштабируемости очередей сообщений SYSV IPC за счёт избавления кода от общей блокировки кода SYSV IPC, приостанавливающей выполнение в том числе таких операций, как проверка безопасности и прав доступа, что негативно сказывалось на производительности. Теперь в реализации очередей сообщений используется смесь блоков без блокировок, ограниченных критических областей, статистики через семафоры и кэшированных присвоений;
  • Аппаратные архитектуры
    • Для 32- и 64-разрядных архитектур ARM подготовлена улучшенная реализация технологий hugetlbfs и Transparent Huge Page, позволяющих увеличить базовый размер адресуемых страниц памяти до 2 Мб, что приводит к сокращению числа используемых TLB-блоков (Translation Lookaside Buffer) и расширению возможностей по задействованию выделенной, но неиспользуемой памяти;
  • Оборудование
    • Включение большой серии патчей, направленных на улучшение поддержки GPU семейства Radeon. В частности, реализованы средства динамического управления питанием и частотами GPU (для включения следует указать параметр radeon.dpm=1), обеспечено отключение тактовых сигналов для неиспользуемых в данный момент блоков GPU («clock gating»), добавлена возможность активного управления состоянием шины PCI-E (ASPM), при котором энергопотребление шины PCI-E может быть заметно снижено в режиме бездействия. Для Radeon серии HD7000 реализована поддержка PCI-E 2.0 и 3.0. Обеспечена поддержка GPU семейства HD8000 для которых реализована возможность установки видеорежимов, поддержка операций с 3D, вычислений на GPU и работы с UVD;
    • В DRM-модуле Nouveau появилась поддержка средств аппаратного декодирования видео в форматах MPEG2 и H.264 с использованием движка VP2 (PureVideo HD), присутствующего в сериях GPU NVIDIA c NV84 (GeForce 8600) по NV96 (GeForce 9400/9600/9700), а также в графических процессорах поддерживаемых NVA0 (GT 200);
    • В DRM-модуле Intel стабилизирована поддержка графической подсистемы на базе платформы Intel Bay Trail, созданной для новых Atom SoC. Улучшена поддержка Intel Haswell, в том числе задействована возможность использования FBC (Frame-Buffer Compression);
    • Добавлен драйвер для симулирования NFC-чипа. Реализована возможность использования SPI (Serial Peripheral Interface) в качестве транспорта для NCI (NFC Controller Interface), что позволяет вызывать модули SPI для чтения/записи данных контроллера NFC;
    • Добавлена поддержка новых процессоров: Freescale i.MX6 SoloLite, Freescale Vybrid VF610, Samsung EXYNOS5420, Rockchip RK2928 и RK3xxx processors, TI Nspire, STMicroelectronics STiH41x и STiH416;

>>> Список улучшений на kernelnewbies.org/Linux_3.11

★★★★★

Проверено: Shaman007 ()
Последнее исправление: ymn (всего исправлений: 4)

В DRM-модуле Nouveau появилась поддержка средств аппаратного декодирования видео

А эти клоуны вообще думают появить нормальное 3D и управление питанием?

it-nativa
()
Ответ на: комментарий от it-nativa

А эти клоуны вообще думают появить нормальное 3D и управление питанием?

нет.

Kompilainenn ★★★★★
()

А твою новость не подтвердят. Копипасты с опеннета не подтверждают. Подтвердят какое-нибудь косноязычное дислектическое гудение, это уже вошло в традицию после ухода пост-фактума.

it-nativa
()
Ответ на: комментарий от it-nativa

Да мне то что? Кому интересно сейчас ознакомятся и обсудят. Частично я отрерайтил конечно, но делать уникальность 100% - на целый день работы.

mbivanyuk ★★★★★
() автор топика

Проведения оптимизация производительности системного вызова sync, работа которого ускорена в 7-8 раз для активно используемых ФС

А вы всё «кде» да «кде»…

AX ★★★★★
()
Ответ на: комментарий от it-nativa

после ухода пост-фактума.

А кроме него это никому и не нужно было. Ддя кого тут эта ппостыня с подробностями? Кто интересуется ядром, тот чейдждлоги читает.

anonymous
()
Ответ на: комментарий от anonymous

Мне например интересно. Приятней читать все-таки на русском об основных изменениях в ядре.

leg0las ★★★★★
()

Довольно таки оригинальный и нескушный рялиз.
К самому йадру претензий нет никаких.

Deleted
()

Вышел релиз

масло масляное

релиз ..., релиз доступен

ну точно у автора была двойка по русскому. или жертва егэ? дальше не читал, первой фразы хватило.

anonymous
()

Предварительная поддержка находящегося в разработке стандарта NFS 4.2, в котором ведётся работа по увеличению эффективности потребления ресурсов, например копирование на стороне сервера, предварительное резервирование места, оптимизации для SSD-накопителей;

А каким боком NFS (по сути, сетевой протокол) к SSD? Почему NFS должна вообще знать, на каком носителе сервер хранит файлы? Может, у меня в подвале 200 индийских йогов с феноменальной памятью байты знают наизусть?

shimon ★★★★★
()

В ядро добавлены патчи, необходимые для реализации поддержки запуска в Wine приложений для Windows RT;

Щито?

Stil ★★★★★
()
Ответ на: комментарий от it-nativa

Это не клоуны, а студенты, работающие над драйвером путем реверс-инжиниринга за «спасибо» в свое свободное время. Нужно нормальное управление питанием - купи AMD напиши код и закоммить, или хотя бы донейт отправь.

ArtKun ★★★★★
()

Отлично. Теперь слово за Патриком.

kinik ★★☆
()

Свершилось! Вышел Linux 3.11 для рабочих станций! Ликуйте!

anonymous
()
Ответ на: комментарий от mbivanyuk
<a href="http://www.kernel.org.">http://www.kernel.org.</a>


Chromium и SeaMonkey распознают ёё как

http://www.kernel.org./

SeaMonkey молча перебрасывает на
https://www.kernel.org/
, а Chromium натыкается на
https://www.kernel.org./
и выдаёт сообщение о перенаправлении и несовпадении с адресом в сертификате.

anonymous
()

Проведения оптимизация производительности системного вызова sync, работа которого ускорена в 7-8 раз для активно используемых ФС;

Поддержка технологии IRST (Intel Rapid Start Technology), представляющей собой вариант реализации спящего режима, обеспечиваемого силами прошивки. В IRST вводится дополнительный таймаут, по истечении которого дамп памяти заснувшей в режиме Suspend-to-RAM системы принудительно сохраняется прошивкой на SSD-накопителе, после чего схемы обесточиваются. При включении устройства, прошивка копирует сохранённые данные в ОЗУ, после чего операционная система восстанавливает своё состояние как при использовании Suspend-to-RAM;

Самые полезные фичи.

mephistopheles ★★
()

Вышел релиз

Релиз сотоялся. Не знаешь значения английских слов - не используй

smolnij
()

9.1% изменений внесено сотрудниками компании Intel, 8.5% - Red Hat, 8.3% - Linaro, 4.5%

А остальные 51,4% изменений внесли прыщавые студенты и школьники

smolnij
()
Ответ на: комментарий от shimon

Вероятно, есть какие-то хелперы в ядре для всего этого дела.

carasin ★★★★★
()

Интересно распределение по числу изменений: 9.1% изменений внесено сотрудниками компании Intel, 8.5% - Red Hat, 8.3% - Linaro, 4.5% - Samsung, 3.9% - IBM, 3.0% - Texas Instruments, 2.9% - SUSE, 2.6% - AMD, 2.1% - Google, 1.3% - Oracle, 1.3% - ARM, 1.1% - Cisco.

<cryocamera_mode>Ожидал увидеть Canonical, почему её нет в списке?</cryocamera_mode>

sT331h0rs3 ★★★★★
()
Ответ на: комментарий от smolnij

Это так важно?
В любом случае имеется нечто работающее, с разными обвязками.
У Вендроида на для юзера интересная,
а вот у ${Дистрибутив} она таки отвратная последнее время.

Deleted
()
Ответ на: комментарий от it-nativa

управление питанием

Не нужно, а то будет как на блобе тормозить 2d.

3D

Нужно только дошколятам для крузисов, а элитным первокурсникам — нет.

anonymous
()
Ответ на: комментарий от anonymous

Генту-канпеляторы не могут в английский и пр.

anonymous
()
Ответ на: комментарий от sT331h0rs3

А потому что не царское это дело — код писать да в ядро коммитить.

carasin ★★★★★
()
Последнее исправление: carasin (всего исправлений: 1)

флаг O_TMPFILE для создания «невидимых» временных файлов

и зачем оно? Объяснение невнятное.

ядро периодически опрашивает драйвер и получает информацию о накопившихся пакетах

Привет шестидесятым.

cvs-255 ★★★★★
()
Ответ на: комментарий от Stil

Готов для десктопа, планшета и энгрибёрдс.

anonymous
()
Ответ на: комментарий от anonymous

Не нужно, а то будет как на блобе тормозить 2d.

Ничего не тормозит, зато температура порядком ниже.

Нужно только дошколятам для крузисов, а элитным первокурсникам — нет.

Хм... Т.е. купить приличного сорта карточку за свои же деньги и использовать её для раскладывания пасьянсов? К тому же, кроме игр есть ещё всякие 3D-редакторы и прочие CAD'ы.

carasin ★★★★★
()
Ответ на: комментарий от anonymous

элитным первокурсникам — нет.

верно. Студентам нужен OpenCL

cvs-255 ★★★★★
()
Ответ на: комментарий от shimon

Потому что в реальном мире нет идеальных блочных устройств, в частности флеш-память неидеальна тем, что перезапись требует стирания, которое производится блочно и медленно, а поэтому делается контроллером флешки заранее, если он знает, какие блоки свободны. Все оптимизации под SSD — это попытки сказать ему, какие блоки свободны, как можно раньше. Поэтому требуется изменить стратегии кэширования операций удаления и записи во всём критичном к производительности накопителей программном обеспечении.

anonymous
()
Ответ на: комментарий от anonymous

Не нужно

Любишь рёв вентилятора? Ок.

на блобе тормозить 2d

О, мифические тормоза блоба, нюню.

Нужно только дошколятам для крузисов, а элитным первокурсникам — нет.

Ну ты чего такой тупой, анонимус? )

it-nativa
()

radeon ещё более торт! юзаю ядро с первого rc, всё замечательно.

Chaser_Andrey ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.