LINUX.ORG.RU

Сообщения AEP

 

В Debian Lenny войдет KDE 3.5.9

 ,

Группа KDE

После обсуждения в списке рассылки pkg-kde-talk, разработчики Debian приняли решение о необходимости включения KDE-3.5.9 в следующий стабильный релиз Debian. Кроме того, в релиз войдет минимальный набор пакетов, необходимый для разработки новых программ для KDE-4.1.

>>> Обсуждение (debian.org)

AEP
()

Запуск Xorg без привилегий root

 ,

Группа Hardware and Drivers

X-сервер в Linux обычно работает с правами root, хотя достаточных технических оснований для этого нет и это не всегда так в других Unix-подобных системах. Поэтому Dave Airlie выпустил несколько патчей (всего около 300 строк) для X-сервера, ядра и драйвера Intel. В результате удалось добиться работы X-сервера с аппаратным ускорением с правами пользователя. Осуществлен запуск X-сервера с DRI2, сессии GNOME, Compiz, glxgears. Ядро вскоре после этого делает Oops, но, по мнению Dave Airlie, достигнутый результат показывает, что желаемое очень близко к действительности.

Патчи для X-сервера, ядра и драйвера Intel опубликованы в соответствующих системах управления версиями.

>>> Подробности (livejournal.com)

AEP
()

Ingo Molnar планирует убить Big Kernel Lock

 

Группа Ядро Linux

12 лет назад Linux стал поддерживать многопроцессорные системы. Тогда же для предотвращения "логических гонок" (race conditions) без существенного изменения драйверов и других частей ядра был введен Big Kernel Lock, как временная мера до появления более совершенных механизмов синхронизации. Однако с течением времени для уменьшения задержек (latency) реализация Big Kernel Lock усложнялась: например, было добавлено вытеснение (preemption).

Недавно Linus вернул реализацию Big Kernel Lock к старому варианту (spinlock), и тем самым потерялась возможность вытеснения. По его словам, единственным приемлемым способом избавиться от задержек является уничтожение Big Kernel Lock из всех 1300+ мест, в которых он используется. Однако, по оценкам Ingo Molnar, с текущими темпами этот процесс может занять порядка 10 лет. Причина: Big Kernel Lock слишком прозрачен. Теперь слишком легко, даже не подозревая об этом, добавить код, который захватывает BKL, и для большинства строк кода никто наверняка не знает, захвачен он в данной строке или нет. Кроме того, автоматическая проверка вложенности блокировок (lockdep) не знает о Big Kernel Lock, и поэтому слишком просто создать труднообнаружимый deadlock.

Для ускорения процесса удаления Big Kernel Lock Ingo Molnar создал git-дерево, в котором Big Kernel Lock стал более "видимым" (добавлены отладочные средства и поддержка lockdep), и его использование удалено из основного кода ядра.

>>> Подробности (lkml.org)

AEP
()

Создан список рассылки kernel-testers

 

Группа Ядро Linux

Одна из серьезных проблем при разработке ядра - регрессии: старое ядро работает для конкретного пользователя, а новое ядро - компилируется, но не работает. Другая проблема - дать новичкам полезную задачу и таким образом дать поучаствовать в разработке. Одной из таких полезных задач является тестирование ядра на предмет регрессий.

Для координации этой деятельности создан список рассылки kernel-testers@vger.kernel.org, в котором планируется обсуждать ядра для тестирования, конкретные области с возможными ошибками и найденные ошибки.

>>> Подробности (kernelnewbies.org)

AEP
()

Dolt: готовая замена libtool

 , ,

Группа Open Source

Josh Triplett объявил о выпуске замены для libtool. Новый скрипт (Dolt) работает только в ОС Linux на процессорах семейств x86 и x86_64, но позволяет сократить время сборки больших проектов примерно вдвое. В других системах по-прежнему вызывается libtool.

Увеличение скорости сборки достигается за счет того, что логика переносится из скриптов, вызываемых командой make для компиляции каждого файла, в скрипт configure.

Использование Dolt требует всего двух шагов со стороны разработчика:

  1. Добавить вызов макроса DOLT после LT_INIT, AC_PATH_LIBTOOL или AM_PATH_LIBTOOL в файле configure.ac или configure.in.
  2. Добавить содержимое файла dolt.m4 в acinclude.m4.

>>> Подробности (gnu.org)

AEP
()

Переезд в другой город

Сегодня я понял, что Екатеринбург меня не устраивает (из-за высоких цен на жилье и летней жары), и надо куда-то переезжать (не срочно - сначала надо защитить кандидатскую диссертацию и получить диплом). Конкретного плана нет ни по географии, ни по датам, но хотелось бы сразу после переезда иметь работу, связанную с Linux или FreeBSD (сойдет даже преподавание информатики в школе).

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

>>> (Invalid URL, no host part!)

AEP
()

Вышел wget-1.11.1

 

Группа GNU's Not Unix

Изменения в новой версии утилиты GNU для скачивания файлов:

  • Прерванное скачивание более не приводит к переименованию файла (баг впервые появился в версии 1.11)
  • Индикатор прогресса стал правильно отображаться в неанглийских локалях
  • wget более не пытается скачивать по HTTP и потом стирать файлы, которые не нужны
  • Сделаны многочисленные исправления в документации

>>> Скачать wget (gnu.org)

AEP
()

CELT: новый аудиокодек от xiph.org

 , celt, ,

Группа Open Source

Xiph.org выпустил новый экспериментальный кодек для сжатия звука. Кодек CELT по структуре близок к CELP, но выполняет все операции в частотном, а не временном, представлении. CELT призван заполнить нишу между Vorbis и Speex.

  • CELT позиционируется для кодирования как музыки, так и речи.
  • Очень низкая задержка при кодировании и декодировании, а также устойчивость к потере пакетов позволяет применять кодек для переговоров по сети.
  • Звук, подлежащий кодированию, должен иметь частоту дискретизации 32, 44.1 или 48 кГц и один или два канала.
  • Кодек предназначен для использования в режиме постоянного битового потока (от 32 до 128 kbit/s). Битовый поток является единственным доступным для настройки параметром.
  • Имеется опция скрипта ./configure, позволяющая собрать целочисленную версию кодека.

На данный момент не гарантируется стабильность API библиотеки и формата битового потока. Оптимизация кода не выполнена: при битовом потоке 128 kbps версии celtenc и celtdec, использующие операции с плавающей точкой, работают в 4 раза медленнее oggenc и oggdec.

>>> Подробности (celt-codec.org)

AEP
()

Вышли Findutils-4.4.0

 ,

Группа GNU's Not Unix

Findutils — пакет, содержащий программы find и xargs, которые позволяют искать файлы в иерархии каталогов по различным критериям и передавать полученный список другим программам в командную строку. Также в пакете содержится программа locate, которая перечисляет файлы, подходящие под заданный шаблон, на основании базы данных, построенной ранее программой updatedb из того же пакета.

Новое в версии 4.4.0:

  • Поддержка формата базы данных, совместимого с slocate.
  • Поддержка баз данных locate, созданных на машинах с другим порядком байт в машинном слове.
  • Строятся две реализации команды find: find (использует функцию fts() для оптимизации поиска в больших деревьях каталогов) и oldfind (старая реализация, не использующая fts()).
  • Тесту "-perm /000" теперь удовлетворяют все файлы (раньше не удовлетворял ни один).
  • Тест "-prune" теперь всегда возвращает истину.
  • Поддержка времен создания или модификации файла, известных с точностью лучше, чем до секунды.
  • Появилось много новых тестов.
  • Исправлено множество ошибок (в том числе связанных с безопасностью), улучшено соответствие стандартам.

>>> Скачать (gnu.org)

AEP
()

Вышел PlaneShift 0.4.00

 ,

Группа Игры

PlaneShift - многопользовательская трехмерная ролевая игра с открытыми (но зависящими от проприетарной библиотеки libCg от nVidia) исходниками движка, в которой игроки исследуют магический виртуальный мир, путешествуют, ведут торговлю и сражаются с монстрами. В связи с обновлением сервера старый клиент перестал работать и предлагается скачать новый.

Изменения:

  • Теперь персонажи не знают имен друг друга, пока не представятся друг другу. В старой версии достаточно было навести на другого игрока курсор мыши.
  • Появились книги, которые может редактировать кто угодно.
  • Появились новые монстры и несколько неисследованных территорий.
  • С карт убрана трава, которая в предыдущей версии приводила к «тормозам» при отрисовке.
  • Повышена реалистичность отображения обстановки за счет использования карт освещения (lightmaps) везде, где только можно.
  • Улучшено масштабирование шрифтов в GUI.
  • Исправлено множество ошибок.

>>> Подробности (planeshift.it)

AEP
()

Вышел кодек Schrödinger 1.0

 , , ,

Группа Open Source

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

Основные новшества в версии 1.0 — стабилизация ABI и 100% соответствие спецификациям битовых потоков Dirac-1.0 и Dirac-2.1.

>>> Подробности (sourceforge.net)

AEP
()

[смех на палочке] Основной баг Xfce

http://bugzilla.xfce.org/show_bug.cgi?id=3864

>>> (Invalid URL, no host part!)

AEP
()

Обсуждается создание git-дерева «linux-next»

 , ,

Группа Ядро Linux

Stephen Rothwell объявил в LKML о своих планах создать git-дерево исходных текстов, которое содержит только изменения в подсистемах, планируемые разработчиками к включению в следующее ядро (точнее, в следующий интервал времени, когда Linus будет принимать патчи, не являющиеся мелкими исправлениями - т.е., на данный момент, в ядро 2.6.26). Это дерево будет склеиваться каждый день из git- и quilt-деревьев отдельных подсистем, таких как сетевой стек, USB и т.п. Деревья, вызывающие конфликты при склейке или проблемы при сборке, будут автоматически отбрасываться.

По замыслу, новое дерево привлечет больше тестеров, поскольку в экспериментальном -mm ядре присутствуют также «сырые» изменения, не предназначенные для скорого включения и часто делающие осмысленное тестирование невозможным.

>>> Дискуссия в LKML (lkml.org)

AEP
()

Вышел LLVM 2.2

 ,

Группа Open Source

LLVM -- это оптимизирующий компилятор из C, C++ и других языков в низкоуровневое представление, имеющее много общего с системой команд RISC-процессоров, а также трансляторы (статические и для преобразования "на лету") из этого промежуточного представления в команды обычных процессоров. LLVM поддерживает эффективную оптимизацию на этапах компиляции, компоновки (в том числе между процедурами) и выполнения, оставаясь "прозрачным" для разработчиков и сохраняя совместимость с существующими скриптами сборки.

Новое в версии 2.2:

  • генерация кода для процессоров Cell
  • экспериментальная поддержка преобразования Ada и FORTRAN через gcc-backend в промежуточное представление
  • поддержка типа long double на x86/x86_84 (80 бит) и Darwin PPC/PPC64 (128 бит)
  • поддержка более чем одного адресного пространства
  • в комплект поставки включены учебные руководства

>>> Подробности (llvm.org)

AEP
()

Нужен хостинг для проекта, с GeoIP

На основании официальной спецификации (http://pda.etsi.org/pda/queryform.asp, искать "DTS Coherent Acoustics"), я в настоящее время пишу кодер DTS для Linux. Кодирование стереосигнала в самом примитивном варианте (Non-Perfect Reconstruction, без ADPCM и Huffman) уже работает. В дальнейшем планирую распространять кодек по лицензии GPL или LGPL, но только в страны, где софтовые патенты недействительны (а то меня мгновенно засудят).

Проблема в том, что сейчас (в связи с недавним увольнением из УрГУ) у меня нет своего сервера, с которого я мог бы это дело распространять и где, в случае появления других разработчиков, находился бы SVN.

Sourceforge не предлагать, т.к. не умеет блокировать Америку. Какие еще есть варианты?

>>> (Invalid URL, no host part!)

AEP
()

Межсетевые экраны, ipv6, и сертификация

Прочитал на сайте http://www.iso27000.ru/zakonodatelstvo/normativnye-dokumenty-fstek-rossii/ruk...

> 2.5. Требования ко второму классу защищенности межсетевых экранов (МЭ).
> 2.5.1. Управление доступом.
> Данные требования включают аналогичные требования третьего класса (п. 2.4.1).
> Дополнительно МЭ должен обеспечивать:
> возможность сокрытия субъектов (объектов) и/или прикладных функций защищаемой сети;
> возможность трансляции сетевых адресов.

Т.е. выходит, что межсетевые экраны, поддерживающие ipv6, автоматически (так как NAT запрещен спецификацией ipv6) проваливают Российские требования ко второму классу защищенности. Весело :(

>>> (Invalid URL, no host part!)

AEP
()

ogg vorbis radio

Заметил, что в списке на http://dir.xiph.org/ доля неамериканских радиостанций среди тех, которые вещают в ogg vorbis, больше, чем среди вещающих в остальных форматах. С чем может быть связано такая непопулярность открытого формата в Америке?

>>> (Invalid URL, no host part!)

AEP
()

GCC неправильно оптимизирует вызов abs()

Код (взят с http://lkml.org/lkml/2007/11/19/493):

#include <stdio.h>
#include <stdlib.h>

int main () {
int i=2;
if( -10*abs (i-1) == 10*abs(i-1) ) printf ("OMG,-10==10 in linux!\n");
else printf ("nothing special here\n");
}

GCC заменяет вызов abs() на встроенную версию, после чего применяет неправильную оптимизацию вида -C*ABS<n> -> ABS<-C*n>. В результате программа выше пишет:

OMG,-10==10 in linux!

Ошибка затрагивает все программы, скомпилированные официальными версиями GCC и умножающие на отрицательную константу результат функции abs(), которую GCC догадался заменить на встроенную версию.

Ядро Linux от этой ошибки не страдает, так как там abs() - это макроопределение.

Исправление: пересобрать gcc с патчем по ссылке. Workaround: использовать опцию -fno-builtin при компиляции программ.

>>> Патч для gcc (gnu.org)

AEP
()

Небезопасная установка LD_LIBRARY_PATH в скриптах-обертках

Группа Безопасность

Stefan Fritsch из команды безопасности Debian обнаружил, что многие скрипты-обертки (например, liferea) устанавливают переменную окружения LD_LIBRARY_PATH небезопасным образом:

LD_LIBRARY_PATH=/usr/lib/xulrunner:$LD_ LIBRARY_PATH

Проблема заключается в том, что, если исходное значение LD_LIBRARY_PATH было пустым, то окончательное значение "/usr/lib/xulrunner:" интерпретируется как "/usr/lib/xulrunner, текущая директория, а уже затем /lib и /usr/lib".

Это не новая уязвимость, а CVE-2005-4790 и CVE-2005-4791, которые были первоначально (неправильно) опубликованы как ошибки, касающиеся только SuSE.

Безопасный способ установки LD_LIBRARY_PATH в скриптах:

LD_LIBRARY_PATH=/usr/lib/xulrunner${LD_ LIBRARY_PATH:+:$LD_LIBRARY_PATH}

>>> Подробности (debian.org)

AEP
()

[баг форума] пробелы в конце строк

Если сообщение добавить в режиме "User line break", то в конец каждой строки движок добавляет пробел. Это мешает, если надо в одном сообщении передать и скрипт (или кусок лога), и текстовое пояснение к нему. Пример: http://www.linux.org.ru/view-message.jsp?msgid=2242861

>>> (Invalid URL, no host part!)

AEP
()

RSS подписка на новые темы