LINUX.ORG.RU

Новости «Ядро Linux»

Активные теги:

 ,

Для ядра Linux представлен фреймворк, позволяющий управлять всеми процессорами SoC-систем

Группа Ядро Linux

Охад Бэн-Коэн (Ohad Ben-Cohen), разработчик Linux и создатель самообучаемой HIDS Korset, опубликовал в списке рассылки ядра Linux набор патчей, реализующих универсальный механизм управления работой специализированных микропроцессоров, выполняющих вспомогательные роли на современных системах на кристалле (SoC). Обычно такие процессоры управляются с помощью специализированной ОС реального времени и выполняют такую работу как цифровая обработка сигналов, ускорение обработки мультимедиа-данных или управления разными видами сенсоров, требующих немедленной реакции системы, а для их связи с центральным процессором используются специфические механизмы, разработанные производителем чипа и накладывающие ряд ограничений на программистов.

Патч, реализованный Охадом Бэн-Коэном и двумя другими программистами, фактически устраняет эти ограничения благодаря основанному на технологии VirtIO универсальному механизму обмена сообщениями между центральным процессором и остальными процессорами чипа. Протокол, получивший имя rpmsg, позволил реализовать такие возможности как OMX offloading, менеджер ресурсов и дисплейный драйвер для Netra (dm8168), который работает в ядре Linux, посылая управляющие команды микропроцессору M3 (чип TI OMAP4). Также патч включает в себя реализацию механизма remotproc, позволяющего управлять работой выбранного процессора: останавливать, перезапускать или загружать альтернативные прошивки.

В настоящее время полная поддержка технологии (включая открытый firmware) реализована для чипа TI OMAP4, используемого в популярной платформе PandaBoard (также тестировались Davinci da850-evm и hawkboard).

>>> Новость на opennet

 , , , ,

papochka
()

Релиз Native Linux KVM 2

Группа Ядро Linux

Вышла в свет вторая версия инструментария Native Linux KVM. Новый релиз предлагает пользователям поддержку SMP, стандарта Virtio для сетевых коммуникаций на основе интерфейса виртуального сетевого драйвера TAP с реализаций доступа к хосту с помощью Virtio-9p. Добавлена экспериментальная поддержка графического интерфейса с использованием SDL и VNC.

С появлением всех вышеперечисленных нововведений KVM значительно улучшил свой функционал по сравнению с первой версией. Аналогично Qemu-Kvm, Native Linux KVM предназначен для эмуляции такого оборудования или его компонентов, как графические и сетевые карты, поскольку гипервизор KVM не берет на себя эту задачу.

Разработчики официально заявляют, что намерены добавить свой продукт в директорию tools исходных кодов ядра Linux версии 3.1, планируемого к выпуску осенью следующего года. В последние несколько месяцев разработчики ядра добавили довольно много приложений пользовательского уровня, тесно взаимодействующих с ядром, например, утилиту для измерения производительности Perf, а также ряд инструментов для диагностики и тестирования системы. Таким образом, можно ожидать и появления в таком же статусе Native Lnux KVM, хотя он во многих областях еще далек от функционала Qemu-Kvm, однако может похвастаться лучшими результатами на сравнительных тестах по вводу/выводу.

>>> Подробности

 ,

ins3y3d
()
: Вышел патчсет Linux 2.6.39-pf1 (71 комментарий)

Смена нумерации версий ядра Linux состоялась

Группа Ядро Linux

Линус Торвальдс выпустил ядро версии 3.0-rc1. Отменено использование чётных/нечётных номеров для обозначения стабильности ядра, а третье число отдано команде стабилизации. Таким образом, следующий после этого релиз будет иметь номер 3.1, а стабильный — 3.0.1.

Версия 3.0 ядра Linux ничем особо не примечательна, кроме как обновлением драйверов.

>>> Официальный анонс

 ,

post-factum
()

Вышло ядро Linux 2.6.39

Группа Ядро Linux

После двух месяцев разработки вышло новое ядро Linux версии 2.6.39.

Из нововведений следует отметить:

  • окончательно и безвозвратно удалён BKL. Соответствующего кода в ядре больше нет. Вообще нет. Весь процесс занял около трёх лет;
  • реализована обработка практически всех прерываний в отдельных потоках;
  • исправлены проблемы, возникшие после применения оптимизационных патчей, между VFS и SELinux;
  • переработана подсистема блочных устройств, что позволило снизить количество блокировок и очистить код;
  • добавлена поддержка паравиртуализированных сетевых устройств Xen;
  • внесены изменения в планировщик процессов, исправляющие проблемы с виртуализацией Windows;
  • добавлена поддержка ipset, что позволяет более эффективно работать со списками IP-адресов и портов;
  • произведено множество улучшений в файловых системах ext4, btrfs и xfs, направленных на увеличение быстродействия и повышение стабильности;
  • улучшена поддержка беспроводных карт Realtek, Intel, Broadcom и Ralink;
  • произведены улучшения в драйвере видеокарт Intel;
  • добавлена поддержка видеокарт семейства Cayman (AMD);
  • добавлена поддержка Z-компресии в драйвере Nouveau;
  • добавлена поддержка хабов USB 3.0;
  • добавлен драйвер мыши для Hyper-V;
  • удалены autofs3 и smbfs;
  • обновлена документация, поставляемая вместе с ядром;
  • добавлено и обновлено множество драйверов устройств;
  • внесено большое количество исправлений в другие подсистемы;
  • исправлено большое число ошибок.

Более детально прочитать о нововведениях можно здесь: часть 1, часть 2, часть 3, часть 4.

Подробный список изменений на Kernel Newbies

Загрузить тарболл исходных кодов

Загрузить патч на ядро 2.6.38

>>> Официальный анонс от Линуса Торвальдса

 ,

post-factum
()

Статус готовности CLang к сборке ядра Linux

Группа Ядро Linux

В прошлом октябре был анонсирован проект по адаптации LLVM компилятора CLang к сборке ядра Linux. С тех пор прошло более полугода, и на днях разработчики опубликовали свой отчет о проделанной работе.

В целом:

  • Удалось получить работающую сборку ядер 2.6.37 и 2.6.38 (для некоторых конфигураций)
  • KVM и Xen использовать нельзя, причем последний пока даже не компилируется
  • Компилируются примерно 90% драйверов ядра, многие работают
  • Некоторые поставляемые сторонними вендорами драйвера (Broadcom, NVIDIA) работают отлично
  • Можно использовать многопроцессорные конфигурации (правда, только на x86), однако в некоторых случаях они требуют дополнительных усилий по доработке компилируемого кода

Что не работает:

  • Ассемблер для генерации кода реального режима (директивы code16gcc), поэтому, невозможно откомпилировать код начальной загрузки (для этой цели используется gas)
  • GCC-расширения языка C (некоторые работают, некоторые нет)
  • Опции генерации и оптимизации кода: -mregparm, -fcall-saved-reg, __arch_hweight*(), -pg, атрибут no_instrument_function, -fno-optimize-sibling-calls

Несмотря на возникающие трудности, разработчики полны энтузиазма. Свой проект они назвали LLL project, что расшифровывается как LLVM Linux project.

>>> Подробности

 , , license bsd, lll, , , ,

ttnl
()

Ускорение ядра Linux с помощью графического процессора GPU

Группа Ядро Linux

Исследования Университета штата Юта, спонсированные частично компанией NVIDIA, направлены на изучение ускорения ядра Linux с использованием ускорения графического процессора GPU. Вместо того чтобы просто позволить приложениям пользователя использовать огромную силу предлагаемых современных графических процессоров, исследователи надеются ускорить части ядра Linux запустив его прямо на GPU.

>>> Подробности

 , , , , ,

Satchitananda
()

Линус Торвальдс намерен изменить название ядра Linux

Группа Ядро Linux

Создатель и главный разработчик ядра Linux Линус Торвальдс заявил о том что хочет изменить название ядра, которое именуется Linux уже многие годы и надежно закрепилось за ним. Линус объясняет это тем, что старое название ядро получило чисто случайно, благодаря имени директории на FTP сервере Анри Ленке где лежали исходные коды первых версий Linux. Когда благодаря этому имя Linux стало более широкоизвестно и получило одобрение все более растущего сообщества разработчиков Линус решил закрепить его официально. Но теперь, когда Linux уже не студенческая разработка, а состоявшаяся система, признанная как надежное решение для многих серьезных задач, он решился на то, о чем задумывался давно. В последующих версиях ядро будет именоваться как Linups.

Сам Линус поясняет это так:

Тогда еще появился символ сидящего и довольного пингвина и он пришелся мне по душе, но вот название. Мне всегда казалось, что название «Линупс» гораздо лучше отражает суть и смысл моей разработки, но поскольку «Линукс» уже стал известен и понравился многим, включая людей, которые работали над ядром наравне со мной, я решил не поднимать этот вопрос, теперь, похоже, пришло время сделать это.

Ричард Столлман, глава и основатель движения GNU в ответ на это заявил, что одобряет решения Торвальдса. Операционная система сменит свое название на GNU/Linups, а новая версия ядра Linups выйдет уже скоро и будет содержать многочисленные изменения, среди который и новое имя.

>>> Подробности

 , ,

ertgblasd
()

Поддержка B.A.T.M.A.N. в Linux 2.6.38

Группа Ядро Linux

Аббревиатура B.A.T.M.A.N. расшифровывается как «Better Approach To Mobile Adhoc Networking». Сеть Ad hoc — это децентрализованная сеть, не нуждающаяся в предварительно развернутой инфраструктуре (такой, как маршрутизаторы в проводной сети или точки доступа в традиционной беспроводной сети). Каждый узел сети принимает участие в маршрутизации, пытаясь переслать данные, предназначенные другим узлам. При этом определение того, какому узлу пересылать данные, производится динамически на основании связности сети. B.A.T.M.A.N. — это протокол маршрутизации, реализующий такую сеть. Он может быть полезен в чрезвычайных ситуациях, таких как природные бедствия или военные конфликты, а также в случае чрезмерной цензуры в сети интернет.

Поддержка протокола включена в ядро Linux 2.6.38. Подробнее о проекте можно узнать по адресу http://www.open-mesh.org.

>>> Источник

 

Manhunt
()

Linux 2.6.38

Группа Ядро Linux

Сегодня вышло ядро Linux 2.6.38. Самым заметным изменением в нём является «патч на 200 строк», который значительно повысил отзывчивость ядра.

Остальные изменения:

  • автоматическая группировка процессов (тот самый двухсотстрочник);
  • большое количество изменений, позволяющих увеличить скорость VFS на однопроцессорных и многопроцессорных системах;
  • LZO-компрессия для Btrfs, снапшоты, доступные для чтения;
  • B.A.T.M.A.N.;
  • поддержка AMD Fusion APU;
  • добавлен /proc/consoles, позволяющий просмотреть процессы, использующие /dev/console;
  • добавлено XZ-сжатие в SquashFS;
  • userspace-интерфейс для Crypto API;
  • NX-защита данных ядра, RO/NX для модулей ядра;
  • и многое другое.

Анонс

Исходный код

>>> Подробности

 ,

DoctorSinus
()

17 лет со дня релиза Linux 1.0

Группа Ядро Linux

13 марта 1994 года Линус Торвальдс обнародовал исходные коды ядра Linux версии 1.0. 176 250 строк кода были выложены на публичный FTP-сервер.

>>> Подробности

 ,

Loki29
()

Релиз стабильной версии realtime-ядра Linux 2.6.34-rt

Группа Ядро Linux

Состоялся релиз стабильной версии ядра Linux, модифицированного для использования в системах реального времени. Это ядро используется в промышленных дистрибутивах MontaVista, Red Hat и Novell.

На данный момент ядро -rt содержит около пятисот патчей, накладываемых поверх основного ядра. С момента выхода 2.6.33-rt было внесено более десяти тысяч коммитов. Интересен подход к проблеме тестирования, применённый в процессе подготовки 2.6.34-rt: все десять тысяч коммитов были разбиты на 400 групп, в среднем по 25 патчей в каждом. Далее группы поочерёдно применялись к ядру 2.6.33-rt и тестировались на предмет рассогласований с основными пятьюстами патчами.

Также заслуживает внимания факт постоянного уменьшения количества патчей в ядре -rt в силу перетекания их в основное ядро. Интеграция всех патчей проекта PREEMPT_RT, который и занимается выпуском ядер -rt, может завершиться к концу текущего года или в начале следующего. Вышеописанный метод слияния патчей потребовал всего около двух месяцев на переход от 2.6.33 к 2.6.34. Поэтому, при сохранении таких темпов работы, для интеграции патчей реального времени в ядро 2.6.38 потребуется около восьми месяцев.

>>> Подробности

 , , ,

CTAPK
()

Вышел ulatencyd — демон, контролирующий параметры отзывчивости системы

Группа Ядро Linux

Daniel Poelzleithner представил демона, автоматически изменяющего параметры планировщика процессов, а также некоторых других вещей, отвечающих за отзывчивость системы.

Демон пока не готов для повседневного использования, но успешное начало уже положено. Так, например, при выполнении «make -j 40» на двухъядерной машине автор демона смог без проблем смотреть HD-фильм.

Архитектура демона выглядит так.

Обычно, правила, используемые демоном, всего лишь помечают процессы некоторыми флагами, значимыми для планировщика при принятии решений об установке параметров процессов. В отдельных случаях может использоваться принудительное планирование.

Над демоном ещё предстоит хорошо поработать, чтобы он вёл себя корректно при бесконечном своппинге или форк-бомбах, например. Также, хотя и была произведена оптимизация правил, написанных на Lua, нагрузка на демон при большом количестве порождаемых процессов всё ещё высока.

>>> Исходный код

 , , ,

post-factum
()

Вышло ядро Linux 2.6.37

Группа Ядро Linux

Основные изменения:

  • Добавлена базовая поддержка Xen Dom0
  • Начата реализация драйвера для Intel GMA500
  • Добавлена поддержка следующих аудиочипов: 88pm860x codec, ep93xx AC97 audio, Restore MAX98088 CODEC, TI WL1273 FM Radio Codec и т.д.
  • Добавлена поддержка следующих DVB-S карт: IX2505V (marked B0017) DVB-S silicon tuner и LME2510(C) DM04/QQBOX USB DVB-S BOXES
  • Интегрирован проект Accel-pptp
  • Множество улучшений, связанных с CPU архитектурами MIPS, POWERPC, X86, S390 и SH
  • Добавлена поддержка I²C в Nouveau
  • Добавлена поддержка DisplayPort audio для видеочипов от Intel
  • Начата поддержка VX900
  • Добавлена поддержка Brocade 10Gb Ethernet
  • Множество улучшений и исправлений, связанных с драйверами сетевых карт
  • Добавлена поддержка нескольких новых видеокамер (SR030PC30 VGA camera, SCSI-контроллеров (8130/8131 AENs), HID (Media Tablet 14.1, Logitech Speed Force Wireless gaming wheel) и т.д.
  • Удалён старый IEEE1394 стэк

>>> Подробности

 

Root-msk
()

Выявлена дыра, позволяющая «уронить» компьютер с Linux под любым пользователем

Группа Ядро Linux

В списке рассылки разработчиков ядра Linux (LKML) был обнародован код, позволяющий через вызов функции ядра socketpair() создать процесс, съедающий 100% процессорного времени и все файловые дескрипторы. Процесс, будучи запущенным от имени любого пользователя, может привести систему к состоянию полной неработоспособности.

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

>>> Подробности

 ,

DoctorSinus
()

Релиз драйвера ФС ZFS, работающего на уровне ядра Linux — ZFS 0.5.2

Группа Ядро Linux

Основные изменения:

Данный проект разрабатывает Брайан Белендорф по заказу LLNL. К сожалению, в текущий момент не поддерживается ZFS Posix Layer (ZPL). Из-за отсутствия поддержки ZPL сейчас невозможно работать с файлами на томах с ZFS.

Загрузить spl-0.5.2.tar.gz

Загрузить zfs-0.5.2.tar.gz

>>> Подробности

 , ,

Root-msk
()

Для ядра Linux написан патч, многократно улучшающий отзывчивость системы

Группа Ядро Linux

Майк Галбрейт (Mike Galbraith) написал патч, многократно улучшающий отзывчивость системы при использовании многопоточных фоновых приложений, таких как, например, компиляции. Линус Торвальдс проверил и высоко оценил данную работу. К примеру, он запустил сборку — 'make -j64' — и при этом система оставалась отзывчивой, а прокрутка в веб-браузере — плавной. Торвальдс прокомментировал патч так: «that's a killer feature».

>>> Подробности

 

Root-msk
()

Код российского проекта Accel-pptp войдет в состав Linux-ядра 2.6.37

Группа Ядро Linux

Accel-pptp — это сервер PPTP/L2TP/PPPoE, а также клиент PPTP. Данный проект разработан российским программистом Дмитрием Козловым. Авторизация пользователей с помощью PPTP VPN популярна у ISP на постсоветском пространстве, особенно у «домовых» сетей. Данный сервер позволит небольшим ISP использовать бюджетные серверы, вместо дорогих решений от крупных производителей сетевого оборудования. Это связано с тем, что прирост производительности у accel-pptp, по отношению к pptpd, оценивается от 2 до 10 раз. Клиент PPTP будет полезен производителям дешёвых клиентских маршрутизаторов и позволит поднять скорость соединения в несколько раз.

Новость взята с opennet.ru.

>>> Подробности

 ,

Root-msk
()

Компилятор Clang теперь пригоден для сборки Linux-ядра

Группа Ядро Linux

В блоге разработчиков Clang появилась информация о том, что с помощью Clang удалось собрать работоспособное ядро Linux версии 2.6.36 с поддержкой многопроцессорных систем (SMP). Несмотря на то, что некоторые компоненты ядра пока не поддаются компиляции, это событие приближает тот момент, когда Clang превратится в полноценный аналог GCC.

Немного технической информации:

  • В качестве основного стенда использовался Macbook 5.1 на базе Intel Core 2 Duo (не стоит забывать, что разработку Clang поддерживает в первую очередь компания Apple). На этой конфигурации удалось запустить ядро с работоспособным X-сервером, а также ядро в среде Qemu
  • В качестве второго стенда использовалась microATX-платформа на базе Intel Atom. В этом случае ядро также функционировало, однако разработчики не пытались запускать X-сервер
  • В системе на базе собранного ядра компилятор успешно собирает сам себя, а также новое ядро. Разработчики докладывают об успешной работе кода, полученного в ходе четвертого цикла самосборки.

Работоспособны следующие компоненты ядра:

  • Базовый код ядра, файловые системы, поддержка шин, в том числе и PCI, ACPI
  • SMP, SMT, SysV, pThreads и POSIX IPC
  • NUMA, управление памятью и SWAP
  • Сетевой стек IPv4, за исключением IPSec
  • Некоторые драйверы и прошивки

Пока не удалось добиться работы следующих подсистем:

  • CryptoAPI, а следовательно, и SELinux, Posix ACLs, IPSec, eCrypt
  • Стека IPv6 и код Netfilter/Router из-за зависимости от CryptoAPI
  • Виртуализации (поддержки гипервизора Xen)
  • Поддержки загружаемых модулей

Разработчики намерены и дальше улучшать совместимость между Clang и GCC и добиваться сборки с помощью Clang полностью работоспособного ядра.

>>> Подробности

 , ,

frankincent
()

Выпущено ядро Linux 2.6.36

Группа Ядро Linux

Состоялся выпуск новой версии ядра Linux версии 2.6.36. Её разработка длилась 80 дней, за это время в ядре произошли следующие изменения:

  • добавлена подсистема безопасности AppArmor;
  • переработана подсистема VFS в плане распараллеливания работы;
  • переписан механизм OOM, позволяющий ядру вести себя более корректно при нехватке памяти;
  • добавлена поддержка Intel Intelligent Power Sharing support (касается управления питанием на платформах Intel Core i3/5 с интегрированной графикой);
  • отладчик KGDB интегрирован с подсистемой KMS. Дебажить теперь стало ещё проще;
  • добавлена поддержка процессоров Tilera;

Как результат некоторой пачки изменений, планируется, что улучшится отзывчивость системы в целом.

Также, в ядре было сделано множество других улучшений, обновлены драйверы и т. д., и т. п. Наиболее подробный список изменений описан на странице Kernel Newbies. Касательно драйверов можно почитать здесь.

Полный архив исходного кода новой версии можно скачать здесь, патч для версии 2.6.35 доступен по этой ссылке.

>>> Официальный анонс

 ,

post-factum
()