LXF158:Ядро Linux 3.3 18
|
|
|
Ядро Linux 3.3
Игорь Штомпель благоговейно вступает в святилище операционной системы. Какие вести прибудут к нам оттуда?
Вкратце
- Метамодернизм в позднем творчестве В.Г. Сорокина
- ЛитРПГ - последняя отрыжка постмодерна
- "Ричард III и семиотика"
- 3D-визуализация обложки Ridero создаем обложку книги при работе над самиздатом.
- Архитектура метамодерна - говоря о современном искусстве, невозможно не поговорить об архитектуре. В данной статье будет отмечено несколько интересных принципов, характерных для построек "новой волны", столь притягательных и скандальных.
- Литература
- Метамодерн
- Рокер-Прометей против изначального зла в «Песне про советскую милицию» Вени Дркина, Автор: Нина Ищенко, к.ф.н, член Союза Писателей ЛНР - перепубликация из журнала "Топос".
- Как избавиться от комаров? Лучшие типы ловушек.
- Что делать если роблокс вылетает на windows
- Что делать, если ребенок смотрит порно?
- Почему собака прыгает на людей при встрече?
- Какое масло лить в Задний дифференциал (мост) Visco diff 38434AA050
- О чем может рассказать хвост вашей кошки?
- Верветки
- Отчетность бюджетных учреждений при закупках по Закону № 223-ФЗ
- Срок исковой давности как правильно рассчитать
- Дмитрий Патрушев минсельхоз будет ли преемником Путина
- Кто такой Владислав Поздняков? Что такое "Мужское Государство" и почему его признали экстремистским в России?
- Как правильно выбрать машинное масло в Димитровграде?
- Как стать богатым и знаменитым в России?
- Почему фильм "Пипец" (Kick-Ass) стал популярен по всему миру?
- Как стать мудрецом?
- Как правильно установить FreeBSD
- Как стать таким как Путин?
- Где лучше жить - в Димитровграде или в Ульяновске?
- Почему город Димитровград так называется?
- Что такое метамодерн?
- ВАЖНО! Временное ограничение движения автотранспортных средств в Димитровграде
- Тарифы на электроэнергию для майнеров предложено повысить
Ядро – это основная часть операционной системы, которая по сути определяет ее возможности. Его новые выпуски для ОС Linux всегда приносят большое количество изменений. Вот, например, как версия 3.3...
Выпуск ядра версии 3.3 стал знаменательным событием – его исходный код превысил 15 млн строк. Но одним количеством строк исходного кода достоинства этого ядра не ограничиваются. Давайте рассмотрим подробнее то, что в нем еще нового.
Основные изменения
Переход дистрибутивов на новое ядро только начался. Так, проект openSUSE на ядре ветки 3.3 строит свою новую версию дистрибутива. На момент написания обзора была доступна версия openSUSE для разработчиков – 12.2 build 0318 (Milestone 3). Текущая версия Arch основана на ядре 3.3.4. Следующая за Fedora 16 разрабатываемая версия проекта основана на ядре 3.4.0. На этой же версии ядра основан и будущий релиз Ubuntu – 12.10.
Разработчики ядра 3.3 осуществили интеграцию наработок, реализованных в рамках проекта Android. Как известно, создатели последнего подготовили ряд улучшений для ядра Linux, которые они использовали в своем проекте. Данные наработки долгое время не были интегрированы в ядро Linux из-за разногласий разработчиков ядра Linux и проекта Android. В частности, речь идет о таких технологиях, как ashmem (разделяемая память, которая дает возможность маркировать незакрепленные страницы памяти – если возникает ситуация нехватки свободной памяти, данные страницы можно освободить), драйвер для ведения системного журнала и других.
Еще одним важным новшеством стала реализация поддержки архитектуры C6X процессоров компании Texas Instruments. На базе данной архитектуры выпускаются одноядерные и многоядерные процессоры семейства DSP. Кстати, ранее поддержку этой архитектуры обеспечил проект linux-c6x.org.
Улучшена реализация операций балансировки (“balance”) и поддержки RAID в файловой системе Btrfs. Балансировка в Btrfs представляет собой перезапись данных и метаданных файловой системы. Для чего это необходимо? Вот, например, добавляется новый жесткий диск, а операция балансировки позволит перераспределить данные файловой системы на него. С другой стороны, такая операция может занять много времени. Новшеством стало то, что процесс балансировки теперь возможно приостанавливать и возобновлять. А сам процесс балансировки стал основываться на базе профилей, что позволяет выполнить балансировку только для пустых групп блоков.
Что касается улучшения поддержки RAID, то реализована возможность перехода с одного RAID-уровня на другой, путем перестроения [restripe] данных. Для выполнения указанных операций можно задействовать инструментарий btrfs-progs из ветки parser.
Значительные улучшения произошли в сетевой подсистеме ядра. Разработчики ядра интегрировали Open vSwitch – программную реализацию многоуровнего (с поддержкой большого количества протоколов) сетевого коммутатора. Надо отметить, что в ядре уже имеется реализация виртуальных сетевых мостов, но Open vSwitch ориентирован на решение более комплексных задач: например, в качестве виртуального коммутатора в окружении сервера виртуализации. Среди поддерживаемых Open vSwitch интерфейсов управления – sFlow, Netflow, RSPAN, CLI. Кроме того, Open vSwitch позволяет подключать программные расширения, а также использовать протоколы Openflow и OVSDB для управления.
Также реализовано новое сетевое устройство teaming, которое призвано стать быстрой, масштабируемой, прозрачной и управляемой из пространства пользователя заменой технологии bonding. Новая технология teaming позволяет создавать виртуальные интерфейсы, объединяющие различные Ethernet-устройства. Это, в частности, позволит повысить пропускную способность, обеспечить отказоустойчивость.
В рамках борьбы с эффектом Bufferbloat – влиянием буферизации ряда на задержки и пропускную способность – установлено ограничение на размер пакета данных, который можно поставить в очередь передачи данных для сетевого устройства. Это позволяет обеспечить приемлемую транзитную задержку для пакетов с высоким приоритетом, причем не понадобится очистка соответствующих аппаратных очередей при появлении данных для отправки.
Для системных администраторов реализованы управления сетевыми приоритетами. Теперь администратор может управлять приоритетом сетевого трафика, который генерируется приложениями (cgroup). С помощью cgroup можно назначить процесс группе, которая определяет приоритет для трафика на необходимом сетевом интерфейсе.
Появилась возможность установки ограничения на размер TCP-буфера, что обеспечивает контроль нехватки памяти для протокола TCP. Речь идет о памяти на уровне ядра, а конкретно – той, что предназначается для поддержки соединений на базе протокола TCP.
Важные изменения произошли в реализации поддержки файловой системы ext4. Механизм изменения ее размера теперь полностью реализован в ядре Linux, что значительно ускорило операцию изменения размера. Было проведено тестирование (https://lwn.net/Articles/466299/), в ходе которого размер файловой системы ext4 был изменен с 20 ГБ до 230 ГБ за 3,3 секунды, тогда как с помощью утилиты resize2fs на это понадобилось более 5 минут.
Разработчики также реализовали поддержку загрузки с использованием EFI (Extensible Firmware Interface) – специального интерфейса между ОС и микропрограммами [firmware], которые призваны управлять оборудованием с помощью функций низкого уровня. Другими словами, EFI поможет произвести инициализацию оборудования, а затем передаст управление загрузчику ОС.
Прочие улучшения
Изменения в ядре весьма многочисленны, и вместить их все в рамки краткого обзора невозможно. Ведь они охватывают поддержку архитектур, драйверов, системных сервисов, управления памятью, файловых систем, сети, виртуализации, криптографии, трассировки и профилирования... Более подробно с новшествами можно ознакомиться в официальном анонсе – https://lkml.org/lkml/2012/3/18/132, или на странице портала kernelnewbies.org: http://kernelnewbies.org/Linux_3.3. Мы здесь лишь затронули «верхушку айсберга».
Поговорим о более мелких новшествах, которые показались нам особенно интересными.
Для файловой системы Btrfs стала доступна новая утилита, получившая название integrity check – она ориентирована на разработчиков и позволяет осуществлять расширенное тестирование целостности данных. Например, при записи данных на диск утилита следит за тем, чтобы не была записана лишняя информация (поддельные ссылки и т. д.), способная привести файловую систему в нестабильное состояние и обусловить потерю данных.
Несколько слов о поддержке аппаратной части. Реализована поддержка LPAE (Large Physical Address Extension) для процессоров ARMv7, что дает возможность адресовать память более 4 ГБ. Появилась поддержка устройств OpenBlockS 600 на базе процессоров Power PC. Для архитектуры S390 добавлена поддержка физической памяти более 4 ТБ. Для платформы x86 реализована поддержка NumaChip.
- Метамодернизм в позднем творчестве В.Г. Сорокина
- ЛитРПГ - последняя отрыжка постмодерна
- "Ричард III и семиотика"
- 3D-визуализация обложки Ridero создаем обложку книги при работе над самиздатом.
- Архитектура метамодерна - говоря о современном искусстве, невозможно не поговорить об архитектуре. В данной статье будет отмечено несколько интересных принципов, характерных для построек "новой волны", столь притягательных и скандальных.
- Литература
- Метамодерн
- Рокер-Прометей против изначального зла в «Песне про советскую милицию» Вени Дркина, Автор: Нина Ищенко, к.ф.н, член Союза Писателей ЛНР - перепубликация из журнала "Топос".
- Как избавиться от комаров? Лучшие типы ловушек.
- Что делать если роблокс вылетает на windows
- Что делать, если ребенок смотрит порно?
- Почему собака прыгает на людей при встрече?
- Какое масло лить в Задний дифференциал (мост) Visco diff 38434AA050
- О чем может рассказать хвост вашей кошки?
- Верветки
- Отчетность бюджетных учреждений при закупках по Закону № 223-ФЗ
- Срок исковой давности как правильно рассчитать
- Дмитрий Патрушев минсельхоз будет ли преемником Путина
- Кто такой Владислав Поздняков? Что такое "Мужское Государство" и почему его признали экстремистским в России?
- Как правильно выбрать машинное масло в Димитровграде?
- Как стать богатым и знаменитым в России?
- Почему фильм "Пипец" (Kick-Ass) стал популярен по всему миру?
- Как стать мудрецом?
- Как правильно установить FreeBSD
- Как стать таким как Путин?
- Где лучше жить - в Димитровграде или в Ульяновске?
- Почему город Димитровград так называется?
- Что такое метамодерн?
- ВАЖНО! Временное ограничение движения автотранспортных средств в Димитровграде
- Тарифы на электроэнергию для майнеров предложено повысить
Разработчики драйверов также предложили интересные решения, ставшие составной частью ядра Linux версии 3.3. Так, из ветки ядра staging (отдельная ветка ядра для предварительного тестирования кода) в основной код ядра перешел драйвер для интегрированных видеокарт от Intel – GMA500. Реализована начальная поддержка видеокарт NVD9 от NVIDIA. Для устройств Exynos (системы на кристалле, SoC, на базе процессоров ARM от компании Samsung) добавлена поддержка HDMI. Также включены новые USB-драйверы: Samsung Exynos OHCI, Marvell Host Controller, Marvell usb OTG, iPhone 4S (драйвер ipheth). Обеспечена поддержка звуковой карты Cirrus Logic 4213, а также оборудования, которое поддерживает ускорение обработки сжатого звука.
Среди других устройств, драйвера для которых были добавлены в ядро 3.3 – Realtek ALC5632, Lowland, 1277-EV1 Littlemill.
Но указанным поддержка устройств не ограничивается – введена также поддержка различного уровня для устройств: хранения данных, сетевых, ввода, web-камер и др. Как видно, перечень аппаратуры серьезно расширен.
Заключение
Выход ядра Linux версии 3.3 принес изменения, которые ожидались давно. В частности, осуществлена интеграция с наработками проекта Android. Значительно улучшена реализация сетевой подсистемы (например, интеграция в ядро Open vSwitch). Реализация Btrfs стала более гибкой (достаточно вспомнить возможность перехода с одного RAID-уровня на другой). Наиболее заметным в области поддержки аппаратной части стала реализация разработчиками поддержки архитектуры C6X процессоров от компании Texas Instruments. Что касается, файловой системы ext4, то она получила возможность быстрого изменения размера, далеко опередив ранее доступные механизмы для этой цели. Расширить возможности процесса загрузки теперь можно с помощью технологии EFI.
Большое количество мелких изменений и усовершенствований сделали ядро Linux лучшим и более гибким. |