Новости «Ядро Linux»
Первый твикер для Linux
Польский разработчик NetBit предлагает набор патчей eXt73, улучшающих производительность множества подсистем ядра Linux,, включая графическую. Приведённые в статье графики Phoronix Test Suite 5.4.0 показывают заметное превосходство патченого ядра над стоковым, местами - в 2 раза.
Патчсет распротраяняется в виде бинарного пакета, получить который можно за 50 злотых (это пятнадцать долларов или тысяча рублей). На гитхабе разработчика можно найти бесплатные патчи из патчсета для ознакомления с его эффективностью, существует репозиторий для deb-дистрибутивов:
sudo add-apt-repository ppa:netext/netext73
sudo apt-get update && sudo apt-get install netext73
К патчсету также прилагается твикер на Qt4.
>>> Подробности
()
Релиз ядра Linux 3.18
Линус Торвальдс объявил о выходе ядра Linux 3.18, основные новшества:
- В ядро интегрирована файловая система OverlayFS, разработанная SUSE и позволяющая создать виртуальную многослойную файловую систему, поверх доступной только на чтение основы.
- Для сервера NFS появилась поддержка операции SEEK.
- В файловую систему F2FS добавлена поддержка атомарных операций записи, позволяющих рассматривать успешное или сбойное завершение серии операций как единое целое.
- Для Btrfs улучшен код восстановления повреждённых RAID-массивов и перестроения RAID.
- Появилась сетевая подсистема FOU (Foo-over-UDP) для организации тунеллирования различных IP-протоколов поверх UDP.
- Добавлена поддержка алгоритма контроля перегрузки TCP DCTCP (Data Center TCP).
- Внесён ряд оптимизаций в сетевую подсистему, направленных на увеличение производительности пакетной передачи данных.
- Появилась поддержка протокола Geneve (Generic Network Virtualization Encapsulation), универсального протокола инкапсуляции для виртуализированных сетей.
- Добавлен новый системный вызов bpf(), предоставляющий доступ к возможностям универсальной виртуальной BPF-машины внутри ядра.
- Удалось добиться существенного сокращения времени перехода в спящий режим для систем с большим числом процессоров за счёт избавления от задержки в 100ms для каждого CPU перед его остановкой.
- В системный вызов prctl() добавлена новая операция PR_SET_MM_MAP, позволяющая выставить основные параметры раскладки адресного пространства процесса, в том числе указать где разместить области с кодом и данными, где находится стек, определить точки останова.
- Включена подсистема RCU tasks, позволяющая использовать механизм синхронизации RCU (Read-copy-update) для защиты целостности структур данных.
- Внесён ряд изменений, направленных на обеспечения сборки ядра при помощи компилятора Clang. В частности, осуществлена замена массивов переменной длины в структурах данных (VLAIS, Variable Length Array In Struct) на созданный при помощи макроса SHASH_DESC_ON_STACK() эквивалент, совместимый со спецификацией C99 и поддерживаемый в Clang.
- Включены в ядро некоторые патчи, подготовленные в рамках инициативы по обеспечению сборки как можно более компактного ядра Linux, занимающего минимальный размер. Добавлена возможность исключения из сборки системных вызовов madvise() и fadvise(), а также кода разбора флагов с описанием возможностей процессора.
- Добавлена штатная поддержка установки модулей ядра в сжатом виде.
- Был добавлен драйвер «pvSCSI» (Paravirtualized SCSI), позволяющая организовать работу гостевых систем, работающих под управлением гипервизора Xen, с привязанными к ним SCSI-устройствами.
- В код для архитектуры ARM64 адаптирован новый JIT-компилятор BPF (eBPF).
- Архитектура SPARC64 переведена на четырёхуровневые таблицы страниц памяти, что значительно увеличило размер адресуемой памяти.
- Для DRM-драйвера Nouveau добавлена поддержка вывода звука через порт DisplayPort.
- В DRM-драйвер Radeon для старых карт R600 добавлена поддержка UVD (Unified Video Decoder) для ускорения декодирования видео.
- В DRM-драйвере Intel реализована поддержка кэширования значений EDID и внесена порция накопившихся улучшений.
- Добавлена поддержка:
- Новых SoC: Hisilicon HiP04 Cortex A15, Amlogic Meson6 (8726MX), Renesas R-Car E2 (R8A77940), Broadcom BCM63xx DSL, Atmel SAMA5D4, Cavium Inc. Thunder;
- Звуковых карт Freescale, добавлены кодеки для Everest ES8328, Freescale ES8328 и Cirrus Logic CS35L32;
- Ethernet-контроллеров Qualcomm Atheros QCA7000 и Ethernet-коммутаторов Broadcom Starfighter 2, Intel FM10000 и Marvell 88E6171;
Более полная новость на opennet.ru
Грег Кроа-Хартман ответил на вопросы пользователей Reddit
Один из основных разработчиков ядра Linux Грег Кроа-Хартман (Greg Kroah-Hartman), мейнтейнер стабильной ветки, автор многих драйверов и целых подсистем, в числе которых debugfs, USB, kref, kobject и sysfs, провёл сессию ответов на вопросы (Ask Me Anything) на Reddit.com.
Предлагаем самые интересные факты из ответов Грега.
- Грег хорошо относится к Android и systemd. Он даже сам внёс в ядро ряд патчей для совместимости с systemd.
- У него нет определённого мнения о Wayland, но он уверен, что X11 — это отнюдь не главная проблема Linux на десктопе.
- Грег изучал языки Rust и Go. Go ему нравится больше, он активно на нём пишет. На вопрос о том, поддерживает ли язык C принципы DRY и loose coupling, а также о том, как он относится к C11, он ответил, что не знает, что такое DRY и loose coupling и что нового появилось в C11.
- Самым главным навыком в разработке ядра он считает умение читать огромное количество электронных писем, поступающих в рассылку разработчиков ядра каждый день. Вообще работа мейнтейнера — это как работа редактора в газете, самое главное — общаться с людьми и выбирать хорошие патчи, а писать код самому — это уже второстепенное занятие.
- На вопрос о том, не планируют ли разработчики ядра перейти с общения по e-mail на активное использование Github, Gerrit и Gitorious, Грег ответил, что это невозможно: эти инструменты просто не справятся с нужным объёмом работы. Наиболее популярные проекты на Github уже сталкиваются с проблемами, а ядро Linux, насколько известно Грегу, — самый большой в мире проект по числу людей, работающих совместно (около 3400 в прошлом году), и по количеству патчей в единицу времени (для ядра 3.16 — в среднем 9,5 патчей в час, 24 часа в день). Даже над ядром Windows работает гораздо меньше программистов.
- До того, как Грег начал работать над ядром Linux, его работа была связана со встроенными устройствами. Ему приходилось в том числе писать драйверы под разные операционные системы для работы с железом, прошитым им самим или его коллегами, в том числе и под Windows. Он отмечает, что писать драйверы под Linux настолько проще, чем под Windows, что «даже не смешно».
- На вопрос о том, какие 5 самых главных тем надо рассматривать на курсах об устройстве ОС, он ответил: «драйверы, драйверы, драйверы, драйверы и драйверы».
- Когда Грега спросили, знает ли он, что если погуглить его имя, на первой же картинке он показывает неприличный жест. Грег сказал, что знает: над ним его дети по этому поводу смеются.
- А ещё Грег любит механические клавиатуры и пользуется двумя Cherry Blue.
Релиз ядра Linux 3.17
Состоялся релиз ядра Linux 3.17, среди наиболее важных улучшений и изменений:
- Включена поддержка техники маппинга памяти memfd, суть которого заключается в идентификации области памяти через файловый дескриптор, который может передаваться между процессами. Это позволяет после выделения памяти обращаться к ней по файловому дескриптору, то есть фактически как с файлом.
- Добавлена техника запечатывания файла (file sealing), позволяющая ограничить операции, которые могут выполняться над файлом. Например можно запретить на уровне файлового дескриптора изменение содержимого файла.
- Теперь по умолчанию включена технология Render Nodes, предназначенная для разделения монолитных устройств /dev/dri/card{num} на две категории. Первая категория Rendering Nodes (/dev/dri/renderD{num}) отвечает за аппаратное ускорение рендеринга и обсчет вычислительных заданий GPGPU. Вторая ModeSetting Nodes (/dev/dri/modeset{num}) обеспечивает переключение видеорежимов и управление экраном. Это позволяет более гибко управлять правами доступа и предоставляет возможность выполнения вычислений на GPU или рендеринга без вывода на экран и без привязки к активному дисплею.
- Представлена реализация API DMA-BUF, позволяющего организовать совместное использования буферов драйверами и различными подсистемами, а также синхронизировать работу устройств (cross-device synchronization). Теперь она доступна для всех модулей ядра.
- Для утилиты perf добавлена возможность трассировки обращений к невыделенным страницам памяти (page-fault) и генерации связанной с такими обращениями статистики.
- При использовании файловой системы XFS теперь необходима сборка ядра с 64-разрядным числом секторов.
- Добавлена начальная поддержка Multiqueue SCSI, рассчитанного на организацию многопоточного доступа к данным на многоядерных системах и позволяющего эффективно использовать возможности современных SSD-накопителей.
- Добавлен системный вызов kexec_file_load(), позволяющий выполнить проверку по цифровой подписи для нового ядра, перед его запуском с использованием механизма kexec. Ранее функцию загрузки нового ядра из уже запущенного ядра Linux (kexec) приходилось отключать при использовании UEFI Secure Boot, так как невозможно было гарантировать сохранение цепочки доверия.
- Для криптографической подсистемы добавлена поддержка детерминированного генератора псевдослучайных чисел, соответствующего спецификации NIST SP800-90A.
- В подсистему LSM (linux security module) добавлен новый hook kernel_fw_from_file(), который можно использовать для проверки целостности бинарных прошивок перед их загрузкой ядром.
- Полностью прекращена поддержка архитектур POWER3 и rs64;
- Также прекращена поддержка систем Samsung S5P6440, S5P6450 и S5PC100.
- В код для архитектуры ARM64 добавлена поддержка четырёхуровневых таблиц страниц памяти, что позволило значительно расширить размер адресуемой виртуальной памяти.
- Гипервизор KVM адаптирован для big-endian ARM-систем.
- Для DRM-драйвера Nouveau устранены проблемы с использованием GPU Kepler, добавлена поддержка режима Zero Bandwidth Clear для GPU Fermi, Kepler и Maxwell.
- Поддержка чипов «Hawaii» (Radeon R9 290) добавлена в DRM-драйвер Radeon.
- Проведена подготовка к поддержке DRM-драйвером Intel Atom SoC Cherry Trail, добавлена поддержка Universal plane.
Релиз ядра Linux 3.16
Линус Торвальдс после двухмесячной разработки объявил о выходе ядра Linux 3.16. В этот релиз принято около 11910 исправлений от 1300 разработчиков, размер патча 37 Мб, изменения затронули 9809 файлов, добавлено 514025 строк кода, удалено 267461 строк. Из всех изменений около 42% связаны с драйверами устройств, 24% внесённых изменений имеют отношение к обновлению кода специфичного для аппаратных архитектур, 12% связано с сетевым стеком, 5% — файловыми системами и 5% c внутренними подсистемами ядра.
( Наиболее значительные новшества )
Новость взята с opennet.ru
Версии ядра linux 3.14 присвоен статус ядра с долговременной поддержкой
Greg Kroah-Hartman сообщил о том, что ядро linux версии 3.14 будет им поддерживаться до августа 2016 года, другими словами, ядру 3.14 присвоен статус «longterm kernel» — ядра с длительным сроком поддержки.
На сегодня Greg Kroah-Hartman также поддерживает две других версии ядра linux с длительным сроком поддержки — 3.4 (поддерживается до октября 2014 года) и 3.10 (поддерживается до сентября 2015 года).
>>> Подробности
()
Вышло ядро Linux 3.15
После почти двух с половиной месяцев разработки и восьми кандидатов в релизы вышла новая версия ядра Linux 3.15. С организационной точки зрения этот выпуск примечателен тем, что он состоялся в разгар двухнедельного окна приёма изменений для следующей версии, 3.16. Линус Торвальдс сообщил о проведении такого эксперимента в момент выпуска 3.15-rc8.
Технически же в новой версии произведена масса интересных изменений. Основные новинки ядра по категориям представлены ниже.
( читать дальше... )
Конечно же, в новом ядре есть и множество других изменений, которые, к сожалению, не поддаются перечислению в рамках данной новости. Чтобы получить более детальную информацию о новшествах ядра, рекомендуется обратиться к указанным ниже источникам.
- LWN (первая часть, вторая часть).
- Phoronix.
Обновления файловой системы F2FS в Linux 3.15
Корпорация Samsung готовит массу улучшений своей файловой системы F2FS. Они войдут в состав ядра Linux 3.15, выход которого запланирован на середину 2014 года.
Изменения включают в себя поддержку больших каталогов, улучшение производительности серверов, новые возможности для более тонкой настройки файловой системы через sysfs и множество исправленных ошибок.
В общей сложности, в Linux 3.15 войдет около тысячи новых строк кода, связанных с F2FS. В архиве рассылки можно найти подробное описание отправленного в воскресенье запроса о принятии указанных изменений в состав ядра. Кроме того, в основную ветку ядра уже добавлены изменения, связанные с Btrfs и EXT4, из чего следует, что в скором времени нас ожидают новые тесты производительности файловых систем.
>>> Подробности
Новые драйвера V4L2 для Linux 3.15
Были изменены следующие компоненты V4L2:
- Класс документов RC sysfs.
- Добавлен API по установке сканкода, который позволяет дистанционно включать/будить систему.
- Добавлен API для устройств SDR.
- Улучшения API для получения данных EDID из устройств ввода/вывода.
- Новый драйвер DVB для drx-j (ATSC).
- Удалён драйвер (it913x/it9137) из-за улучшения другого (af9035).
- Добавлен драйвер-пример (v4l2-pci-skeleton) V4L2 PCI в документацию.
- Добавлен драйвер dual flash (lm3646).
- Добавлен новый драйвер IR (img-ir).
- Добавлен IR-декодер для протокола Sharp.
- Улучшения в драйвере usbtv.
- Добавлен новый драйвер SDR (rtl2832u_sdr).
- Добавлен новый драйвер для тюнера (msi001).
- Множественные улучшения в драйвере em28xx для исправления поддержки PM, извлечения устройств и деления частей V4L2 в отдельные под-драйвера.
- Один драйвер был преобразован в videobuf2 (s2255drv).
- Драйвер e4000 tuner теперь следует улучшенной модели привязки.
- Некоторые улучшения в коде V4L2 compat32.
- Множественные исправления и улучшения в коде videobuf2.
- Чистка документации V4L2 API.
- Другие улучшения драйверов и исправления ошибок.
>>> Подробности
Релиз Linux 3.14
Linus Torvalds сообщил о новом релизе ядра Linux.
Linux — ядро операционной системы, соответствующее стандартам POSIX. Разработка была начата финским студентом Линусом Торвальдсом в 1991 году.
В основном, код написан на Си с некоторыми расширениями gcc и на ассемблере (с использованием AT&T-синтаксиса GNU Assembler).
Распространяется как свободное программное обеспечение на условиях GNU General Public License, кроме несвободных элементов, особенно драйверов, которые используют прошивки, распространяемые под различными лицензиями.
«Список изменений от -rc8 до сих пор довольно короткий, и у меня хорошее чувство на счет всего этого. Мы разобрались с проблемами, которые возникли в последний момент из-за последних патчей, они были довольно конкретные, и для меня нет смысла задерживать релиз, если нет ничего в ожидании. Большая часть окончательных изменений были помечены как стабильные.
3.14 уже здесь, таким образом открывается окно для 3.15.
Пожалуйста, потратьте ваше время на тестирование 3.14.»
Linus.
( читать дальше... )
>>> Подробности
Linux 3.15 сократит время, необходимое для приостановки и возобновления работы системы
Ядро Linux версии 3.15 будет включать большое количество изменений для подсистемы управления питанием (power management) и ACPI. Это позволит быстрее уходить на менее энергозатратные уровни производительности и быстрее возвращаться в режим полной производительности, что позволит увеличить отзывчивость и сократить энергопотребление в типичных для пользователя задачах.
Реализовано это будет за счёт увеличения производительности асинхронного ввода/вывода (к примеру смотри коммиты 5af84b82701a и 97df8c12995).
Как говорит Chuansheng Liu в интервью ресурсу Phoronix: «Эти патчи значительно сокращают время приостановки и восстановления, на моём ноутбуке я получил преимущество в 80%».
Новая версия ядра Linux под порядковым номером 3.15 планируется к выпуску в середине 2014 года, а более подробную информацию о ACPI/PM изменениях в ядре версии 3.15 можно посмотреть тут.
>>> Подробности
I/O Планировщик BFQ добавят в основную ветку ядра Linux
Разработчики планировщика ввода/вывода BFQ подготовили патчи для слияния с основной веткой ядра Linux.
BFQ — универсальный планировщик I/O, который в первую очередь предназначен для значительного повышения отзывчивости пользовательского окружения при нагрузках на дисковую подсистему.
Официального заявления пока не было, но в рассылках сообщается, что планировщик подготавливается к добавлению основную ветку ядра. Сейчас проводится чистка кода и разделение на патчи.
>>> Источник
← предыдущие | следующие → |