Релиз Linux-ядра 2.6.38

image

Теги: ядро Linux, Linux, операционная система

Линус Торвальдс анонсировал релиз Linux-ядра 2.6.38, в который вошли наработки по увеличению интерактивности выполнения десктоп-задач, значительно повышена масштабируемость VFS, в Btrfs обеспечена поддержка LZO-сжатия и создания доступных только на чтение снапшотов.

Линус Торвальдс анонсировал релиз Linux-ядра 2.6.38, в который вошли наработки по увеличению интерактивности выполнения десктоп-задач, значительно повышена масштабируемость VFS, в Btrfs обеспечена поддержка LZO-сжатия и создания доступных только на чтение снапшотов, интегрированы HugePage-патчи, добавлена поддержка процессоров AMD Fusion, добавлены новые драйверы и обеспечена поддержка mesh-протокола B.A.T.M.A.N.

В новую версию принято 10413 исправлений от 1349 разработчиков, размер патча - 49 Мб (добавлено 9295 тыс. строк кода, удалено - 9159 тыс. строк). Около 38% всех представленных в 2.6.38 изменений связаны с драйверами устройств, примерно 24% изменений имеют отношение к обновлению кода специфичного для аппаратных архитектур, 12% связано с сетевым стеком, 6% - файловыми системами и 4% c внутренними подсистемами ядра.

Наиболее интересные новшества ядра 2.6.38:

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

  • В состав ядра интегрирован патч с реализацией идеи автоматической группировки задач для повышения интерактивности на десктопе. Патч специальным образом разбивает выполняемые задачи на группы в привязке к идентификатору сессии, в дальнейшем планировщик задач оперирует данными группами как единым целым. Номер сессии изменяется при выполнении системной функции setsid(), которая, например, вызывается для каждого нового сеанса командной оболочки (тем не менее при запуска десктоп приложений идентификатор сессии не меняется, т.е. если запустить в терминале "make -j 20", влияние на десктоп-приложения будет минимально, но если выполнять какую-то ресурсоёмкую операцию в gimp, интерактивность понизится). Посмотреть распределение сессий можно командой "ps -eo session,pid,cmd". Для активации режима автоматической группировки задач в /proc/sys/kernel/sched_autogroup_enabled необходимо записать 1;
  • В ядро интегрирован патч "Transparent Huge Рages", который реализует технику увеличения базового размера адресуемых страниц памяти (без патча размер страницы составляет всегда 4096 байт, с патчем до 2 или 4 Мб), что приводит к сокращению числа используемых TLB-блоков (Translation Lookaside Buffer) и расширению возможностей по задействованию выделенной, но неиспользуемой памяти, для кэширования системных данных (например, под дисковый кэш). Теоретически реализуемый патчем подход должен привести к увеличению производительности самого ядра и активно использующих память приложений (например, патч эффективен при использовании систем виртуализации и СУБД). Тем не менее, не исключены ситуации, когда патч оказывает негативное влияние. Например, приложение может выделить через функцию mmap большой блок памяти, но записать в него всего 1 байт данных. В этом случае, с патчем будет выделена страница памяти размером 2 Мб, а не 4 Кб как в ситуации без патча. Включение режима производится через файл /sys/kernel/mm/transparent_hugepage/enabled;
  • Добавлена возможность назначать отдельные лимиты на число "грязных" страниц памяти (dirty page) для каждого контроллера памяти cgroup. Интерфейс управления напоминает ранее доступные параметры /proc/sys/vm/dirty_*: memory.dirty_ratio, memory.dirty_limit_in_bytes, memory.dirty_background_ratio, memory.dirty_background_limit_in_bytes; o В декомпрессор ядра, initramfs и initrd добавлена поддержка метода сжатия XZ;

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

  • Проведена большая работа по увеличению масштабируемости VFS (Virtual File System). Переписан код организации кэшировния элементов директорий (dcache) и механизмов для обеспечения определения файлового пути (path lookup). Новая реализация в полной мере использует ресурсы многоядерных CPU, а также заметно повышает производительность и на одноядерных системах, за счет удаления атомарных операций и использования механизма синхронизации RCU (Read-copy-update), позволяющего организовать одновременный доступ к данным без использования блокировок. В частности, новое ядро ускоряет выполнение "find . -size" в домашней директории Линуса примерно на 35%, однопоточный "git diff" для прокэшированного дерева ядра выполняется на 20% быстрее (при запуске 26 параллельных "git diff" пропускная способность увеличивается в 26 раз), значительно ускоряется выполнение операций, использующих вызов stat();
  • В файловой системе Btrfs реализована поддержка прозрачного сжатия данных на диске методом LZO. По сравнению с ранее поддерживаемым методом zlib скорость операций копирования при использовании LZO возросла в два раза, а скорость разархивирования tar-архива возросла на 25%. Примечательно, что за счет уменьшения операций с диском LZO-режим также обгоняет по скорости выполнение операций режим без использования сжатия. Другим новшеством Btrfs является поддержка создания снапшотов, доступных только для чтения, что может быть использовано для монтирования ФС после сбоя или в ситуации возможного наступления сбоя;
  • В состав ядра интегрирован iSCSI Target фреймворк LIO, отличающийся высокой производительностью, работой в неблокирующем режиме, многопоточной архитектурой, поддержкой SIMD, сответствием стандарту IETF (RFC 3720) и реализацией поддержки SPC-4 PRs и ALUA. Фреймворк не зависит от типа носителя, может обслуживать разделы до 750 Тб, в которые могут входить такие типы накопителей, как SATA, SAS, SCSI, BluRay, DVD, FLASH, USB, ramdisk и т.п. В скором времени LIO вытеснит собой ранее добавленный в ядро фреймворк STGT (сравнение);
  • В dm-crypt обеспечена поддержка масштабирования на системах с многоядерными CPU;
  • В RAID1 (DM mirror), ext3 и XFS добавлена поддержка выполнения операции "discard" для SSD-накопителей. В XFS для работы с кэшем inode задействован механизм синхронизации RCU вместо блокировок;
  • В реализации сетевой файловой системы CIFS добавлена поддержка опции монтирования "strictcache", включающей режим принудительного чтения данных из кэша. Кроме того, добавлена опция монтирования "cruid=" для определения uid владельца credential-кэша;
  • В файловых системах Ext2 и Ext3 ускорено выполнение операций по созданию файлов;
  • В файловой системе Squashfs реализована поддержка сжатия методом XZ, обеспечивающим более высокую степень сжатия по сравнению с ранее используемым zlib, но требующим для работы больше памяти и ресурсов CPU;

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

  • Реализована поддержка протокола маршрутизации B.A.T.M.A.N. ("Better Approach To Mobile Adhoc Networking), разработанного для mesh-сетей в рамках проекта Open Mesh и позволяющего создавать децентрализованные сети, не требующие наличия маршрутизаторов или точек доступа. Каждый узел в такой сети связан через соседние узлы, т.е. каждый узел участвует в процессе маршрутизации и динамически перенаправляет данные к другим узлам в зависимости от текущих условий связности между элементами сети. В качестве областей применения B.A.T.M.A.N. называется возможность развертывания сетей в случае природных катаклизмов, военных конфликтов или усиления цензуры;
  • Увеличен до 10 mss, используемый по умолчанию, размер входящего TCP-окна;
  • Реализован учитывающий ECN код дефрагментации IPv4 пакетов (RFC3168);
* Виртуализация и безопасность
  • В код обеспечения работы Xen (Dom0) добавлена поддержка XenBus API и серия бэкенд-драйверов, которые к сожалению добавлены не все, продолжение интеграции бэкенд-драйверов ожидается в версии 2.6.39. Кроме того, в ядро добавлен драйвер gntdev, позволяющий выполнить маппинг областей памяти из другого Xen-домена, что обычно используется в работе бэкенд-драйверов, работающих на уровне пользователя;
  • В lguest добавлена поддержка опций "--username" и "--chroot" для сброса привилегий и выполнения перехода в chroot;
  • Расширение возможностей системы мандатного контроля доступа SMACK (включена в ядро начиная с 2.6.25 и базируется на привязке меток к задачам и блокам данных (файлы, IPC, сетевые пакеты и т.д.) на уровне ядра): решены проблемы с UNIX domain socket, добавлена поддержка атрибутов SMACK64TRANSMUTE и SMACK64EXEC, добавлена поддержка двух новых типов ключей: доверительных и шифрованных, отличающихся методом их создания;
  • Представлен программный интерфейс для доступа к Crypto API ядра с уровня пользователя;

* Оборудование и аппаратные архитектуры

  • Добавлена поддержка процессорной архитектуры AMD Fusion, отличающейся интеграцией на одном кристалле CPU и GPU;
  • Интегрированы новые версии DRM-модулей для для видеокарт Intel (2.14.0: улучшена поддержка Intel Sandy Bridge, заметно увеличена производительность), NVIDIA (Nouveau: поддержка переключения видеорежимов на уровне ядра для карт "Fermi") и AMD/ATI (Radeon 6.14.0: поддержка 2D-акселерации EXA и акселерации проигрывания видео Xv (X-Video) для карт семейства AMD Ontario Fusion и Northern Islands/Radeon HD 6000. Для всех карт ATI Radeon через KMS-модуль обеспечена поддержка метода Page Flipping);
  • Добавлен экспериментальный драйвер rtl8192ce для поддержки 802.11n чипов Realtek RTL8188CE и RTL8192CE. В драйвере ath9k добавлена поддержка чипа AR9485. Расширена поддержка Broadcom 802.11n чипов в драйвере b43. Добавлена поддержка Ralink RT3370 (USB) и RT3390 (PCI/PCIe).

или введите имя

CAPTCHA
16-03-2011 03:54:48
Поздравляю от всей души! Неплохо для системы, находящейся на исходе своего развития.
0 |
edrgdfg
16-03-2011 07:11:48
Совсем дебил ? Это масдай "на исходе своего развития" - у них от весии к версии только новые обои появляются. Приведи аналогичный список изменения между Vista и 7-кой.
0 |
16-03-2011 07:49:16
Скорее ты сам такой. Сорцы Windows недоступны в публичном доступе, Microsoft Changelog не выкладывает. Так что фиг знает какие конкретно там были изменения.
0 |
а вот вам
16-03-2011 10:18:20
Так что фиг знает какие конкретно там были изменения. все очень просто. серьезных изменений со времен XP не было, лол
0 |
Graf
16-03-2011 15:59:01
здОрово сказал! Сорцы Windows недоступны в публичном доступе, Microsoft Changelog не выкладывает. Так что фиг знает какие конкретно там были измененияодним словом - МАСТДАЙ! плейстейшин для кухарок - самое то!
0 |
Гость
25-05-2011 17:38:05
да, может быть куча изменений и существует, но про них никто кроме индусских программеров не знает, пользователей они не касаются ) Зато баги переносятся из версии в версию, некоторые еще со времен XP тянутся:) сразу чувствуется толковый рефакторинг )
0 |
Хотя бы ч
16-03-2011 08:16:10
Но по крайней мере популярность доказывает обратное.
0 |
Humanoid
16-03-2011 08:31:20
Популярность не говорит о качестве. Популярность зависит от хорошего маркетинга.
0 |
Хотя бы ч
16-03-2011 08:47:29
Это должно быть сказано про XP?7
0 |
17-03-2011 15:48:13
Пгостите, вы помните, что пейсали сдесь месяц назад? Про Линукс и его закат? И кто это заявлял?
0 |
Сергей
16-03-2011 07:12:36
Файл изменений http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.38 занимает в этот раз 6.3 Мб. Неплохо для системы, "находящейся на исходе своего развития".
0 |
16-03-2011 07:58:10
А по твоему если изменений много - то значит что развитие идет ? Может они дыры латают и баги фиксят и вставляют массовые костыли
0 |
16-03-2011 08:17:01
Как уже было сказано, даже костылевставляние не сравнить с обычным занятием микрософта - разработкой новых тем и обоев, у них вообще в любом анонсе первым делом идет "улучшенный интерфейс". Также на фоне объема разработок в Linux не могу не упомянуть обилие и новизну файловых систем от MS, аж целых две: NTFS, которой за десяток лет перевалило, да говномамонтовая FAT. У вас же, черт побери, есть выбор, что ставить на серв )
0 |
Прохожий
16-03-2011 08:46:31
Можно подумать что большинство пользоватетей MS заинтересуют что-то кроме интерфеса, виджетов и прочих блестяшек Основная масса народа до сих пор меряется гигабайтами, гигагерцами и мегапикселями - для них MS и делает анонсы где пишет то, что те способны понять, на что могут купиться. При среднем уровне компьютерной грамотности пользователей Windows - им больше и не требуется. Для остальных есть TECHNET и MSDN. Что до "новых обоев", то это к БолгенОС
0 |
Хотя бы ч
16-03-2011 09:02:49
Что до "новых обоев", то это к БолгенОС Слизано у M$. / да будет тебе известно.
0 |
69855
16-03-2011 08:29:51
В новую версию принято 10413 исправлений от 1349 разработчиков, размер патча - 49 Мб "Идеальная система" стала ещё более идеальной?
0 |
Хотя бы ч
16-03-2011 09:06:52
Идеал понятие субъективное. Меняется постоянно. Всё выше и выше и вы-ы-ше... (с)
0 |
Tux
16-03-2011 21:19:59
Идеал недостижим, к нему необходимо стремиться. Нет в мире ничего идеального.
0 |
ffrt
17-03-2011 18:17:11
число пи идеально
0 |
17-03-2011 15:45:24
По поводу системы, находящейся на исходе своего развития. Это был сарказм. Глава российского филиала M$ как-то это сказал (о чём здесь и писали) и ему это припоминается.
0 |
17-03-2011 19:29:05
Одним словом, Прянишников облажался по крупному!
0 |