The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

/ Обзоры / Анонсы программ
·28.11 Европейский Фонд СПО представил децентрализованную поисковую систему YaCy 1.0 (199 +66)
  Европейский Фонд свободного программного обеспечения (FSFE) представило версию 1.0 проекта YaCy, в рамках которого разработан поисковый движок с открытым исходным кодом, отличающийся децентрализованной архитектурой и использованием технологий P2P (peer-to-peer). Ключевой задачей YaCy является обеспечение защиты персональных данных и гарантирование конфиденциальности запросов. Исходные тексты всех наработок проекта распространяются в рамках лицензии GPLv2.

В рамках проекта YaCy разработан кардинально новый подход к решению проблемы организации независимого поиска, сконцентрированный на идее отказа от использования центрального сервера, вместо которого результаты поиска формируются при участии независимых друг от друга узлов распределённой сети, состоящей на сегодняшний день из более чем 600 узлов. В подобной распределённой сети ни один из элементов не может единолично решить, что именно будет отражено в поисковом выводе (исключается возможность цензуры) и в каком порядке будут показаны результаты. Движок работает непосредственно на компьютерах пользователей, использующих поисковую систему. Иными словами, каждый из пользователей YaCy является частью большой поисковой сети и непосредственно принимает участие в обеспечении её работы. Условия поиска шифруются перед тем, как покинуть компьютер пользователя.

Карстен Герлофф (Karsten Gerloff), президент Европейского отделения фонда Free Software Foundation, заявил: "Мы отходим от концепции централизованного контроля за службами. Мы понимаем важность независимости и необходимость создания инфраструктуры, не зависящей от какого-то одного самого слабого звена... В мире будущего, состоящего из распределённых пиринговых систем, свободные поисковые движки, подобные YaCy, являются жизненно важным составным элементом". Майкл Кристен (Michael Christen), лидер проекта YaCy, подчеркнул мотив создания проекта: "Почти все наши действия в Интернете так или иначе связаны с поиском. Это жизненно важное звено между нами и информацией, которую мы ищем. В таком важном деле мы не должны зависеть от нескольких больших компаний, при этом открывая свои личные данные".

Движок уже используется для локального поиска на таких сайтах, как sciencenet.kit.edu, yacy.geocaching-portal.com и fsfe.org. Попробовать YaCy в деле можно на сайте search.yacy.net. Стать членом сети YaCy можно установив на свой компьютер специальное программное обеспечение, написанное на языке Java и доступное для платформ Linux, Windows и Mac OS X. Сеть уже работает и на текущий момент содержит в индексе более 1.4 млрд документов, обрабатывая примерно 130 тысяч поисковых запросов ежедневно.

По своей структуре YaCy состоит из нескольких базовых компонентов, свойственных стандартным поисковым системам: поисковый робот (crawler) для загрузки страниц; индексатор для парсинга и анализа загруженных документов; БД для хранения поисковых индексов и метаданных (используется собственная NoSQL БД, использующая структуры AVL-Trees); интерфейс пользователя. На каждой машине накапливается собственный локальный поисковый индекс, который является частью общего индекса сети.

Каждый пир в поисковой P2P сети хранит определённный фрагмент общего индекса, обмениваясь данными о своём контенте с другими пирами. Сам глобальный индекс представлен в виде распределённой хэш-таблицы (DHT - Distributed Hash Table). Части индекса многократно дублируются, поэтому постоянное отсоединение и подключение новых пиров не приводит к потере информации.

По желанию пользователя его машина может принимать участие в сборе и анализе данных для формирования индекса, но даже если пользователь просто подключился для отправки поискового запроса, часть индекса копируется на его машину и в дальнейшем может использоваться для обслуживания собственных запросов и запросов других участников. Размер выделяемого под локальный индекс дискового пространства и степень участия в работе P2P-сети выбирается пользователем. Операции индексации страниц могут выполняться локальным краулером или инициироваться для распределённого краулинга с привлечением других участников сети. Обнаружение других участников P2P-сети производится через обращение к 4 предопределённым seed-серверам. Отключив в настройках участие в P2P-сети пользователь может использовать YaCy для организации поиска по собственным ресурсам, в этом случае YaCy выступает в роли локального поискового движка.

  1. Главная ссылка к новости
  2. YaCy FAQ
Обсуждение (199 +66) | Автор: JT | Тип: К сведению | Интересно


·28.11 Начало тестирования видеопроигрывателя ROSA Media Player 1.0 (75 +9)
  Компания РОСА объявила о начале бета-тестирования нового медиа-проигрывателя ROSA Media Player (ROMP), основанного на наработках проектов MPlayer и SMPlayer. В отличие от SMPlayer, новый проект нацелен на обеспечение максимального охвата поддерживаемых форматов в сочетании с разумными настройками по умолчанию и не перегруженным интерфейсом пользователя. Причиной создания форка является другой подход к формированию интерфейса и другая идеология развития проекта, что стало непреодолимым препятствием при попытках продвижения своих улучшений в SMPlayer.

Загрузить пакеты и исходный код тестовой версии ROSA Media Player можно из репозитория main/backports для Mandriva и ROSA Linux (пакеты rosa-media-player и rosa-media-player-plugin).

Среди ключевых изменений, отличающих SMPlayer от ROSA Media Player можно отметить:

  • Без потери функциональности значительно упрощен интерфейс пользователя. По словам разработчика некоторые идеи были реализованы под впечатлением от проигрывателя Totem;
  • Добавлен модуль интеграции с браузерами Firefox и Chromium, позволяющий просматривать потоковое видео;
  • Реализована поддержка выделения и вырезания отдельных фрагментов видео.
  • Возможности, запланированные на ближайшее время:
    • Поддержка записи скринкастов (экранных презентаций));
    • Обрезка видео по краям;
    • Продолжение переработки интерфейса проигрывателя.
  • Долгосрочные планы:
    • Добавление интеграции с онлайн-сервисами (например, YouTube) для поиска и просмотра видео;
    • Создание версии проигрывателя для Windows.

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

Дополнение: Последний релиз SMPlayer 0.6.9 вышел в феврале 2010 года, после чего развитие проекта остановилось. На днях Ricardo Villalba, основатель проекта, объявил о скором возобновлении процесса разработки.

  1. Главная ссылка к новости
  2. OpenNews: В рамках проекта MPlayer2 создан форк медиаплеера MPlayer
  3. OpenNews: Вышел мультимедиа плеер MPlayerXP 0.7.95
  4. OpenNews: Релиз медиа-проигрывателя MPlayer 1.0rc3
  5. OpenNews: Проекту MPlayer исполнилось 10 лет
Обсуждение (75 +9) | Тип: К сведению |


·28.11 Первый релиз клиента для PGXN, сети распространения дополнений к PostgreSQL (21 +11)
  Представлен PGXN Client 1.0, первый релиз клиентского приложения, предназначенного для автоматизации поиска, загрузки, сборки, установки и удаления дополнений для СУБД PostgreSQL, представленных в архиве PGXN (PostgreSQL Extension Network). Например, для установки определённого дополнения на сервер достаточно выполнить "pgxn install дополнение", а для загрузки дополнения только для одной БД - "pgxn load -d БД дополнение".

В рамках проекта PGXN развивается напоминающий CPAN архив для распространения дополнений к СУБД PostgreSQL, включая реализацию инфраструктуры для загрузки и распространения дополнений, подготовку централизованного индекса и API для доступа к мета-данным, создание системы поиска дополнений и набора утилит для тестирования дополнений. В настоящий момент в архиве представлено 57 дополнений и 105 релизов.

Среди полезных дополнений:

  • pg_log_userqueries/query_recorder (ведение лога SQL-запросов и активности пользователей)
  • pair (тип данных для эффективного хранения данных в формате ключ/значение)
  • omnipit (система управления WAL-файлами)
  • mysqlcompat (набор функций, специфичных для MySQL)
  • plparrot (написание встроенных процедур на Perl 6);
  • citext (текстовый тип без различия строчных и прописных букв);
  • multicorn (биндинг для написания Foreign Data Wrapper на языке Python). Готовые врапперы доступны для MySQL, Oracle, Redis, LDAP, Twitter и CouchDB;
  • pg-json (тип для хранения данных в формате JSON);
  • pgmemcache (API для обращения к memcached);
  • PL/R, PL/Proxy;
  • Системы репликации Golconde и Slony-I.

  1. Главная ссылка к новости
Обсуждение (21 +11) | Тип: Программы |


·25.11 Python OS Project - новая операционная система на языке Python (159 +7)
  Анонсирован проект Python OS Project (POP), созданный с целью разработки операционной системы, компоненты которой написаны полностью на языке Python. POP основан на ядре Linux (в данный момент используется ядро версии 2.6.32) и окружении GNU, которое постепенно перерабатывается на языке Python. Многие составные части пользовательского окружения уже переписаны. Код проекта пока недоступен (дополнение: загрузить iso-образ можно здесь) - ведётся работа по выбору открытой лицензии и созданию публичного репозитория. В качестве причин разработки называется работа ради удовольствия (Just For Fun) и желание сделать интересную и легко изменяемую систему.

В настоящее время на языке Python переписаны такие приложения, как инсталлятор, пакетный менеджер, система инициализации, файловый менеджер, типовые системные утилиты (ls, cp, rm, vat, zcat и т.п.), эмулятор терминала (POPemu на базе termemulator), вспомогательные утилиты (wget, top), интерфейс к mplayer, mpd и moc, PDF-просмотрщик. В состав также входит оконный менеджер Qtile, http-сервер POPweb (основан на Cherrypy), Jabber/ICQ клиент POPim, графический редактор Mirageiv, BitTorrent-клиент Deluge, текстовый редактор Snaked и СУБД Buzhug. В планах разработка web-браузера на языке Python, офисного пакета, X-сервера и в конечном итоге создание ядра системы на языке Python.

Дополнительно можно упомянуть, что создание операционных систем на интерпретируемых языках неоднократно предпринималось в прошлом. Например, наиболее известными из ныне живущих проектов по созданию ОС на Python являются Pycorn OS и Cleese. В отличие от проекта POP, данные операционные системы ориентированы в первую очередь на создании ядра системы на языке Python, включая драйверы, сетевой стек и реализацию файловых систем. В рамках проекта Cleese развивается концепция создания интерпретаора байткода Python, способного работать непосредственно на "голой" системе, выступая в роли микро-ядра для запуска написанных на языке Python компонентов ядра ОС. В рамках проекта Perlix развивается пользовательское окружение на языке Perl, работающее поверх ядра Linux. Обилие проектов по созданию операционных систем базируется языке Java, среди них: JNode, JOS, JX, Sanos, SavaJe и JavaOS

  1. Главная ссылка к новости
  2. OpenNews: Релиз операционной системы JNode 0.2.7, написанной на языке Java
  3. OpenNews: SharpOS - открытая операционная система, целиком написанная на языке C#
Обсуждение (159 +7) | Автор: Антон Байков | Тип: К сведению |


·23.11 Первый выпуск GNOME Boxes, интерфейса для доступа к виртуальным и удалённым системам (88 +9)
  Разработчики GNOME представили первый выпуск проекта Boxes, ориентированного на интеграцию в GNOME возможности работы с приложениями, выполняемыми на удалённых компьютерах или в виртуальных окружениях. Boxes сочетает в рамках единого интерфейса средства для удаленного соединения с рабочими столами с механизмами управления и запуска виртуальных окружений на локальных и внешних компьютерах. Для организации эффективного доступа к графическим приложениям на внешней виртуальной машине поддерживается протокол SPICE. Для запуска локальных виртуальных окружений используется KVM и Qemu.

По мнению основателей проекта, для организации доступа к виртуальным окружениями при помощи таких систем, как virt-manager, требуются навыки системного администратора. GNOME Boxes является попыткой упростить выполнение подобных операций и подготовить инструмент для работы с виртуальными машинами для обычных пользователей. Поддерживается как подключение к виртуальным машинам на внешних хостах, так и конфигурирование и запуск локальных виртуальных окружений. Кроме средств для работы с виртуализацией в GNOME Boxes также интегрирована поддержка протоколов для доступа к удалённым рабочим столам.

Для конечного пользователя Boxes позволяет имея на руках установочный или загрузочный образ системы, с минимальными усилиями подготовить рабочую виртуальную машину, не задумываясь о настройке и используемом гипервизоре (по сути нужно лишь выбрать iso-образ, все остальное будет сконфигурировано автоматически). Находясь дома или в дороге, пользователь также может воспользоваться Boxes для соединения к рабочей машиной, без выполнения сложных настроек на обеих сторонах.

Проект пока находится на ранней стадии развития, поэтому первый выпуск включает в себя только базовый костяк, по которому можно судить о сути разработки. Код Boxes написан на языке Vala с использованием libvirt, libosinfo, libvirt-glib и spice-gtk. При этом библиотеки libosinfo и libvirt-glib развиваются разработчиками проекта специально для Boxes. Библиотека libosinfo предназначена для манипулирования информацией об операционных системах, например, для определения типа ОС по составу установочного носителя. В рамках libvirt-glib развивается высокоуровневый объектно-ориентированный API для организации взаимодействий приложений на базе Glib с библиотекой libvirt и поддерживаемыми ею файлами конфигурации в формате XML.

Проект дизайна GNOME Boxes можно посмотреть на данной странице. Дополнительно, для оценки сути проекта, подготовлен скринкаст. Среди запланированных расширенных возможностей отмечается интерфейс для просмотра и использования виртуальных машин на сменных носителях, организация совместного доступа к соединениям и виртуальным машинам, средства для публикации своих виртуальных машин на внешних сервисах, возможность загрузки типовых iso-образов, поддержка протокола RDP и SSH-туннелей.

  1. Главная ссылка к новости
Обсуждение (88 +9) | Тип: Программы |


·23.11 Релиз утилиты для мониторинга процессов htop 1.0 (24 +25)
  Представлен релиз htop 1.0, работающей в стиле top утилиты для интерактивного мониторинга за работой процессов в системе. Код проекта распространяется под лицензией GPLv3, бинарные сборки доступны для большинства популярных дистрибутивов.

Как и top программа работает в консольном режиме, но обладает рядом особенностей:

  • Свободная вертикальная и горизонтальная прокрутка списка процессов;
  • Для управления можно использовать мышь;
  • Для завершения процесса или изменения приоритета выполнения нет необходимости вводить PID, достаточно подвести к нему курсор;
  • Наглядные средства для оценки эффективности работы SMP и использования каждого процессорного ядра, в том числе и для систем с большим числом процессорных ядер;
  • Наличие древовидного режима просмотра списка процессов;
  • Поддержка визуальных тем и гибкие возможности по кастомизации интерфейса;
  • Поддержка работы на монохромных терминалах;
  • Возможность фильтрации процессов по владельцу и различным параметрам;
  • Возможность настройки CPU affinity.

  1. Главная ссылка к новости
Обсуждение (24 +25) | Тип: Программы |


·23.11 Инструментарий для выявления скрытых уязвимостей, возникающих из-за использования стороннего кода (31 +26)
  Австралийский исследователь Сильвио Кезаре (Silvio Cesare) представил проект Clonewise, в рамках которого подготовлен инструментарий для выявления общих частей в исходных текстах различных программ и автоматического анализа такого кода на предмет наличия известных уязвимостей. Clonewise помогает решить проблему с возникновением скрытых уязвимостей, которые остаются неисправленными на протяжении длительного времени.

Код анализатора написан на языке С++ и распространяется под лицензией GPLv3. Дополнительно подготовлен GUI-интерфейс на языке Java для управления процессом и визуализации идентичных блоков кода в различных пакетах. Поддерживается работа с репозиториями, использующими пакеты в формате RPM и DEB (для загрузки задействованы yumdownloader и apt-get). При анализе и сопоставлении данных активно используется математический аппарат теории графов. При анализе учитывается как пересечение имен файлов, так и их содержимое (для блоков кода рассчитываются хэши, которые затем сравниваются).

Типичной является ситуация, когда разработчики интегрируют в свой код часть функциональности другого открытого продукта или библиотеки. В случае, если в исходном продукте или библиотеке будет найдена уязвимость, как правило она касается и кода, заимствованного другими проектами. Но так как библиотека используется не через динамическое связывание, а путем копирования кода, такие уязвимости остаются незамеченными. Clonewise связывает CVE-идентификатор уязвимости с блоком кода, вызывающим появлением проблемы, и пытается найти данный код в репозиториях с исходными текстами пакетов различных дистрибутивов.

Например, опасная уязвимость в библиотеке libpng была устранена в браузере Firefox, в поставку которого входили файлы из данной библиотеки, только спустя три месяца. После анализа утилитой Clonewise свежих репозиториев Debian и Fedora было выявлено пять пактов, в которых проявляется уязвимость в libpng, исправленная ещё в начале апреля. В начале года отмечена серия уязвимостей в популярных программах просмотра PDF, таких как Evince и Xpdf, что также было связано с заимствованием кода. Подобные случаи не исключаются и для других популярных проектов, в которых регулярно находят уязвимости, таких как bzip2, libzip, libxml2 и FFmpeg.

Около 90% выявленных утилитой проблем являются ложными срабатываниями. Используя GUI-интерфейс ложные срабатывания отсеиваются в считанные секунды, достаточно пробежаться по списку беглым взглядом. Несмотря на высокий процент ложных срабатываний, в процессе разработки Clonewise в стандартном репозитории Fedora Linux было выявлено 30 ранее не замеченных уязвимостей. Что касается степени заимствования кода, то исследовав репозиторий Debian GNU/Linux, как один из самых больших репозиториев открытого ПО, было выявлено 420 приложений, в которых присутствует код, скопированный из других проектов.

  1. Главная ссылка к новости
Обсуждение (31 +26) | Тип: К сведению |


·23.11 Исходные тексты игры Doom 3 открыты под лицензией GPLv3 (103 +37)
  Корпорация Zenimax, которой сейчас принадлежит компания id Software, открыла под лицензией GPL исходные тексты наработок, связанных с игрой Doom 3, включая игровой движок id Tech 4. Кроме игры Doom 3, выпущенной в 2004 году, на базе движка id Tech 4 построены и более современные игры, такие как Quake 4, Prey и Enemy Territory: Quake Wars. Ресурсы игры (карты, текстуры, звуки и т.д.) по-прежнему являются интеллектуальной собственностью компании Zenimax и распространяются по отдельному соглашению EULA.

К сожалению из-за наличия подлежащей лицензированию технологии формирования теней, запатентованной компанией Creative Labs, представленный код не включает в себя реализацию метода "depth fail" для предварительного рендеринга теней. Данная функциональность известна под именем "Carmack's Reverse". По мнению Джона Кармака (John Carmack), одного из основателей компании id Software и ведущего разработчика игр Wolfenstein 3D, Doom и Quake, для обхода патента требуется добавить 4 строки и изменить две строки кода.

В отличие от прошлых игровых движков, по инициативе юристов компании Zenimax, код был открыт не под лицензией GPLv2, а под GPLv3. При этом текст лицензионного соглашения GPLv3 был немного изменён. Изменения были внесены в 15 раздел "Отказ от гарантий" и в 16 раздел "Ограничение ответственности". Было добавлено упоминание о непредоставлении лицензии на использование торговых марок и логотипов, и упоминание что при создании производных проектов на основе представленного кода вся ответственность перекладывается на разработчика производного продукта, который будет в суде отвечать на возможные иски от своего имени и не сможет переложить ответственность на компанию Zenimax.

Открытие Doom 3 продолжило сложившуюся ранее традицию, по которой компания id Software открывает под лицензией GPL код своих устаревших игровых движков, с момента выпуска которых прошло 5 лет. Например, в прошлом году был открыт код игры "Wolfenstein: Enemy Territory and Return To Castle Wolfenstein" и связанного с ней движка id Tech 3 (Quake3). В настоящий момент открытыми являются движки игр Wolfenstein 3D, Doom, Quake, Quake 2 и Quake 3, что дает возможность энтузиастам создавать на их базе новые свободные игры. О планах по открытию движка id Tech 5, на основе которого построены игры Rage и Doom 4, пока ничего не известно.

Дополнение: разработчики открытого проекта ioQuake3, основанного на исходных текстах Quake 3, запустили новый проект ioDoom3, в котором будет использоваться исходный код Doom 3.

  1. Главная ссылка к новости
  2. OpenNews: Исходные тексты игры Doom 3 будут открыты в этом году
  3. OpenNews: Выпущен DOOM III для Linux
  4. OpenNews: Ученые используют открытый код Quake2 для передовых исследований функций мозга
  5. OpenNews: Игру Quake II перевели на технологии HTML5 и Javascript
Обсуждение (103 +37) | Тип: Программы |


·22.11 Релиз jQuery Mobile 1.0 и минималистичного аналога jQuery - jQuip (13 +6)
  Представлен релиз фреймворка jQuery Mobile 1.0, основанного на популярной JavaScript-библиотеке jQuery и предназначенного для создания web-приложений для мобильных устройств с использованием технологий HTML5. jQuery Mobile позволяет создавать интерактивные web-приложения с унифицированным интерфейсом пользователя, работающим в большинстве мобильных браузеров, доступных для платформ Apple iOS, Android, Windows Phone, Blackberry, webOS, Bada, MeeGo и Kindle. Из особенностей библиотеки отмечается адаптация для управления через сенсорные экраны, обеспечение единого внешнего вида для разных типов браузеров и набор специализированных мобильных виджетов для построения интерфейса пользователя.

Фреймворк поддерживает автоматическую адаптацию интерфейса для различных размеров экранов, имеет базовые шаблоны для смартфонов и планшетов. Для упрощения создания индивидуального стиля может использоваться web-конфигуратор тем оформления ThemeRoller for Mobile. Для расширения возможностей jQuery Mobile подготовлена коллекций расширений и плагинов. Примеры готовых web-приложений можно посмотреть на данной странице.

Отдельно можно отметить проект jQuip, реализующий 90% от функциональности jQuery, занимая при этом по размеру кода почти в 8 раз меньше места (4.28 Кб в упакованном виде). Целью проекта является попытка реорганизации структуры кода jQuery и перевода его на модульную основу. Код проекта распространяется в рамках лицензии MIT.

Библиотека jQuip поддерживает синтаксис на базе селектора $(selector), поддерживающего около 40 методов, включая each, attr, bind/unbind, append/prepend, find*, html и т.п. Реализована поддержка около 25 типов событий (blur, focus, load, resize и т.п.) и набор из 22 статических методов ($.each, $.filter $.dir, $.attrs и т.п.). Дополнительные возможности jQuery, такие как documentReady, $.css, $.queryString и $.ajax могут быть подключены в виде плагинов. Сформировать JavaScript-код jQuip, включающий только избранное число дополнительных плагинов, можно через специальный online-генератор.

  1. Главная ссылка к новости
Обсуждение (13 +6) | Тип: Программы |


·19.11 GPG4Browsers - открытая реализация OpenPGP на языке JavaScript (78 –3)
  В рамках проекта GPG4Browsers подготовлена написанная на языке JavaScript реализация стандарта OpenPGP (RFC 4880). Поддерживаются все хэш-функции, асимметричные и симметричные шифры (кроме IDEA), определённые в стандарте и применимые для таких областей использования, как шифрование и расшифровка сообщений, создание и проверка цифровых подписей, импорт и экспорт сертификатов.

В настоящее время GPG4Browsers доступен только в форме дополнения для браузера Chrome и поддерживает интеграцию с Gmail (подписывание, шифрование и расшифрование сообщений). GPG4Browsers полностью совместим с GnuPG со стандартными настройками, за исключением поддержки сжатия (для создания совместимого с GPG4Browsers сообщения следует использовать опцию "--compress-algo none").

Код распространяется под лицензией LGPLv2.1 и при желании может быть портирован для других браузеров. Реализация каждого метода шифрования и хэшей, а также функции манипулирования с ключами и шифрами оформлены в виде отдельных JavaScript-модулей, т.е. могут легко быть интегрированы в сторонние проекты.

Из возможностей, которые пока не реализованы в GPG4Browsers, отмечены:

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

Поддерживаемые хэши и шифры:

  • Симметричные шифры: TripleDES (DES-EDE), CAST5, Blowfish, AES-128, AES-192, AES-256 и Twofish;
  • Асимметричные шифры: RSA, Elgamal, DSA (Digital Signature Algorithm, только для цифровых подписей);
  • Хэши: MD5, SHA-1, RIPE-MD/160, SHA256, SHA384, SHA512, SHA224.

  1. Главная ссылка к новости
  2. OpenNews: Представлен декодировщик видео H.264, оформленный на языке JavaScript
  3. OpenNews: В написанном на JavaScript эмуляторе ПК появилась поддержка постоянного хранилища
  4. OpenNews: Intel представил River Trail, расширение к JavaScript для параллельного программирования
  5. OpenNews: git.js - реализация Git, написанная целиком на JavaScript
  6. OpenNews: Увидел свет Emscripten 1.4, компилятор байткода LLVM в JavaScript-представление
Обсуждение (78 –3) | Тип: К сведению |


·18.11 Разработчики systemd представили Journal, замену системе syslog (385 +21)
  Леннарт Поттеринг (Lennart Poettering) представил в своём блоге Journal, дополнение к системному менеджеру systemd, призванное заменить собой службу syslog и другие сопутствующие сервисы журналирования событий. Разработка пока находится на начальной стадии, прототип с реализацией базовой функциональности можно найти в Git-репозитории systemd. Первую экспериментальную реализацию Journal планируется интегрировать в дистрибутив Fedora 17.

Ключевой особенностью Journal является использование криптографических средств для гарантирования неизменности и целостности накопленных логов. Как правило, первым делом после взлома злоумышленники пытаются замести следы и вычистить из системных логов записи, выдающие их активность. Используемые в настоящее время реализации службы syslog беспомощны перед такими действиями. В Journal для решения данной задачи планируется задействовать средства обеспечения целостности, похожие на те, что используются в Git. Каждой записи в журнале будет сопоставлен хэш, который по цепочке будет охватывать хэши предыдущих записей. Используя отдельно сохранённый эталонный начальный хэш, который недоступен атакующему (без этого хэша нет возможности воссоздать всю цепочку подтверждений), можно легко проверить неизменность всего лога.

Journal будет частью systemd и не сможет использоваться обособленно. Все логи будут проиндексированы и храниться в бинарных файлах, к которым к сожалению будут неприменимы стандартные утилиты обработки текстовых данных, например, grep. Тем не менее, Journal не исключает параллельное использование традиционных syslog-служб, таких как rsyslog и syslog-ng. Каждая запись в БД Journal содержит набор параметров в формате "переменная=значение". С целью обеспечения структурирования информации, переменные могут создаваться произвольно. Кроме текстовых данных допускается прикрепление бинарных дополнений, которые могут содержать такие данные, как core-дампы, данные мониторинга SMART и диагностические дампы SCSI.

По своему формату БД Journal является комбинацией классических линейных логов и идей, используемых в репозитории Git. Как в случае с обычными логами, данные добавляются в конец БД с небольшим изменением служебных заголовков в начале файла. Данные хранятся в сжатом виде. Каждое поле в блоке данных сохраняется как независимый объект, что позволяет минимизировать потребление дискового пространства при наличии типовых значений (например, при сохранеии поля с именем хоста, если такое имя уже было в логе, вместо дублирования информации будет помещена ссылка). Сообщения от непривилегированных пользователей размещаются в отдельных файлах БД, привязанных к логину пользователя. Подобный подход позволяет ограничить доступ к логам только для их владельцев (для доступа к системным логам пользователь должен входить в специальную группу).

Для отправки подлежащих журналированию сообщений может быть использован стандартный API syslog(3), поэтому совместимость с приложениями будет сохранена. В будущем планируется реализовать ряд расширений, которые позволят из специализированных программ отправлять в лог не только строковые сообщения, но привязанные к ним метаданные и бинарные приложения. Каждая запись в логе имеет свой уникальный 128-разрядный идентификатор.

Для управления журналами будет подготовлен набор инструментов, которые позволят выполнять такие операции, как ротация, копирование, объединение и создание произвольных выборок. Ротация БД с журналом будет производиться автоматически, после превышения заданного лимита. С целью предотвращения утери логов дополнительно будет учитываться наличие свободного пространства на диске. Для защиты от атак, направленных на переполнение диска из-за разрастания лога, будут задействованы средства контроля за интенсивностью отправки сообщений (rate limit), при этом лимит будет автоматически корректироваться в зависимости от размера доступного места на диске. Выборку данных можно будет производить как по дате, так и по отдельным полям. Утилита для выборки данных автоматически будет охватывать и подвергнутые ротации файлы, т.е. весь архив логов будет виден как единое целое.

Кроме выполнения функций syslog, новая система сможет взять на себя ведение и других типов логов, таких как журнал входа в систему (wtmp), журнал начальной загрузки и логи системы аудита. Источником поступления сообщений может быть как стандартный интерфейс syslog(3), так и вызов printk() из ядра, а также различные специализированные API. В будущем рассматривается возможность перехвата сообщений от прошивок (логи UEFI) и задействование расширенных механизмов журналирования в ядре Linux. Начальная реализация Journal будет включать в себя только минимальную поддержку передачи логов по сети, которая будет ограничена простым копированием файлов БД на центральный хост при помощи scp, rsync или NFS. В будущем появятся более серьёзные средства для непрерывного приёма и отправки новых записей по сети.

Особенности Journal:

  • Упрощение: небольшой размер кода с минимальным числом зависимостей;
  • Автоматизация работы без необходимости ручного обслуживания: ведение журнала критически важная функциональность для отладки и мониторинга систем, поэтому работа должна вестись с оглядкой на возникновение внештатных ситуаций. Например, следует контролировать расходование свободного места в разделе /var и применять соответствующие методики ротации логов и ограничения интенсивности записи в лог;
  • Устойчивость: файлы с логами должны быть непосредственно доступны для администраторов и пригодны для простого копирования по сети с использованием штатных средств, таких как scp, без нарушения целостности, даже если лог скопирован не полностью. Возможность анализа лога должна быть доступна без необходимости запуска демона журналирования, обслуживающего БД с логами;
  • Переносимость: файлы с логами не должны зависеть от типа системы и CPU. Например, БД с логом, созданная на встраиваемом устройстве на базе архитектуры ARM, должна быть просмотрена и на компьютере с другим порядком следования байт;
  • Производительность: все операции по добавлению данных в лог и просмотру лога должны выполняться с максимальной скоростью;
  • Интеграция: Новая система ведения логов должна плотно интегрироваться с другими системными компонентами;
  • Минимальное потребление ресурсов: файлы с журналами должны занимать минимальное место на диске, даже с учетом того, что объем генерируемых данных может быть существенно больше, чем при использовании классических журналов;
  • Хранилище информации о событиях общего назначения: должно поддерживаться помещение в журнал разных типов записей, независимо от их формата и размера;
  • Унификация: различные виды технологий журналирования должны быть унифицированы, все события должны храниться в едином типе хранилища и должны быть доступны для связанного анализа. Например, часто запись от прошивки следует за записью от ядра Linux и связана с какими-то действиями на уровне пользователя - важно, чтобы связь между этими тремя событиями можно было отследить;
  • Поддержка высокоуровневых инструментов: должен присутствовать удобный API, который можно использовать в программах мониторинга, восстановления после сбоев, генераторах отчетов о причинах краха и различных утилитах для просмотра логов;
  • Масштабируемость: система должна одинаково хорошо работать на обычных компьютерах, на больших кластерах и на встраиваемых системах с ограниченными ресурсами, справляясь с любыми размерами журналов и интенсивностью потока событий;
  • Универсальность: возможность расширения для поддержки специфичных требований отдельных приложений (формат должен быть расширяем);
  • Поддержка кластеризации и сетевых функций: обеспечение единой службы журналирования для больших инфраструктур, состоящих из множества хостов;
  • Безопасность: файлы с логами должны быть аутентифицированными для гарантии отсутствия изменения уже сохранённых данных.

Среди основных проблем syslog, которые попытались решить разработчики Journal, отмечаются:

  • Данные сообщений не аутентифицированы. Например, любой локальный процесс может указать что он Apache с PID 4321, а syslog поверит этому и сохранит сведения в лог;
  • Данные помещаются в лог в свободной и неструктурированной форме, что требует написания специальных парсеров для автоматизированного разбора логов, учитывающих множество возможных форм представления данных;
  • Время записи сохраняется без учета часового пояса;
  • На одной машине разными службами одновременно ведётся несколько разных журналов, таких как utmp/wtmp, lastlog, audit, логи ядра, логи прошивок, логи отдельных приложений. Подобная организация существенно затрудняет выявление связей между элементами разных логов;
  • Чтение лога является очень простым, но в то же время крайне неэффективным процессом. Так как отсутствует индексация, всегда требуется полный перебор лога;
  • Сетевой протокол syslog очень ограничен, например, не гарантирует доставку и не учитывает потерю пакетов;
  • Атакующие могут легко отредактировать лог для сокрытия своих действий;
  • Отсутствуют гибкие средства контроля доступа к логам;
  • Ограничены возможности по сохранению в логе дополнительных метаданных;
  • При ротации логов не учитывается свободное место и нет эффективной защиты от проведения DoS-атак через наводнение логов;
  • Сжатие логов производится только после ротации, активный лог находится в несжатом виде, а архивный сжат целиком, а не на уровне отдельных записей;
  • Классический Syslog непригоден для журналирования событий на раннем этапе загрузки системы;
  • В лог не могут помещаться бинарные данные.

  1. Главная ссылка к новости
  2. OpenNews: systemd - новая система инициализации от разработчиков Red Hat и Novell
  3. OpenNews: Вышла первая версия системы инициализации systemd
Обсуждение (385 +21) | Тип: К сведению | Интересно


·18.11 Релиз MagLev 1.0, альтернативной реализации Ruby VM со встроенным NoSQL-хранилищем (7 +4)
  Представлен релиз проекта MagLev 1.0, в рамках которого подготовлена альтернативная реализация окружения для выполнения программ на языке Ruby, построенного на основе использования 64-разрядной виртуальной машины VMware GemStone/S, изначальной созданной для языка Smalltalk. Код проекта распространяется под лицензией MIT, но используемая виртуальная машина GemStone/S является проприетарным продуктом. Бесплатная версия GemStone/S лимитирована возможностью использования кэша размером не более 2 Гб (на общий размер хранимых данных нет ограничений, ограничен только размер кэша).

Окружение MagLev полностью совместимо с веткой Ruby 1.8.7 и включает в себя встроенную поддержку специализированного объектно-ориентированного распределённого NoSQL-хранилища, обеспечивающего выполнение ACID-транзакций и поддерживающего оптимизацию за счет кэширования в оперативной памяти. Благодаря данному хранилищу программное окружение на базе MagLev может обеспечить прозрачную обработку значительного объема (терабайт) данных и кода, даже если они не вмещаются в оперативную память. При этом не делается отличий, какие именно типы объектов, классов, блоков данных и нитей могут быть сохранены и выполнены.

По мнению автора проекта, MagLev скорее стоит рассматривать даже не как Ruby VM с интегрированной БД, а как NoSQL БД, использующую язык Ruby для манипулирования хранимыми данными. Отличительной чертой MagLev является высокая производительность, которая достигается благодаря задействованию высокопроизводительного JIT-компилятора GemStone/S VM, на лету преобразующего псевдокод в машинные инструкции, что позволяет добиться производительности близкой к выполнению нативного кода.

Некоторые особенности MagLev:

  • Единое пространство имён для хранения объектов. Сохранение и извлечение данных производится без привязки к отдельным БД, код выполняется в контексте единой базы данных. При этом нет необходимости следить какие данные следует сохранить - все изменения объектов и их сохранение обслуживается автоматически;
  • В хранилище могут быть сохранены объекты Ruby, процессы, лямбда-функции, состояние нитей и продолжения (continuations). Например, можно остановить, скопировать, записать и перезапустить определенную нить кода, а затем выполнить копию на другой VM;
  • Метод обеспечения постоянного хранения в MagLev оперирует сохранением на диске состояния объектов в том же в формате, в каком они находятся в кэше. Т.е. не требуется прибегать к дополнительным преобразованиям и сериализации;
  • Транзакции при работе с хранилищем удовлетворяют условиям ACID (Атомарность, Согласованность, Изолированность и Долговечность), что позволяет запустить несколько виртуальных машин поверх одного хранилища. VM могут запускаться на разных компьютерах, при этом будет обеспечена целостность и актуальность состояния совместно используемых объектов и кода;
  • При запуске новой копии MagLev VM, код ранее выполняемый в других экземплярах MagLev VM с большой долей вероятности будет находится в кэше, что значительно ускоряет доступ к этому коду.

  1. Главная ссылка к новости
Обсуждение (7 +4) | Тип: К сведению |


·17.11 Опубликован исходный код системы для формирования слепков отпечатков пальцев FingerJetFX (23 +6)
  Компания DigitalPersona, разработчик систем аутентификации и защиты информации, объявила об открытии исходных текстов системы FingerJetFX, предназначенной для формирования слепков отпечатков пальцев из графических изображений. По заявлениям представителей компании, FingerJetFX должна стать последним компонентом, который требуется для создания качественной открытой системы идентификации личности по отпечатку пальцев.

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

Библиотека написана на языке C++, требует всего 256 Кб оперативной памяти (128 Кб для кода и 128 Кб для данных) и, по заявлениям авторов, обладает чрезвычайно высокой скоростью работы. Код оптимизирован для 32-битных и 64-битных процессоров, отмечается поддержка 32-битных микроконтроллеров. В числе поддерживаемых операционных систем: Linux, Android, Windows, Windows CE, различные ОС реального времени и встраиваемое оборудование без операционной системы. В качестве входных данных может быть использовано любое изображение, снятое с помощью любого сенсора отпечатков.

Свободная версия FingerJetFX является частью более комплексного коммерческого решения с тем же названием, которое сегодня используется многими компаниями. Исходный код распространяется на условиях лицензии LGPL и размещён на GitHub.

  1. Главная ссылка к новости
Обсуждение (23 +6) | Автор: Evgeny Zobnin | Тип: К сведению |


·16.11 Релиз системы извлечения контента Apache Tika 1.0 (3 +4)
  Представлен релиз Apache Tika 1.0, набора библиотек на языке Java для выявления, анализа, парсинга и выделения мета-данных и структурированного контента из разнообразных форматов файлов. Всего поддерживается более 1200 форматов, включая HTML, XML, DOC, OLE2, OOXML, RTF, ePub, OpenDocument, PDF, различные форматы изображений, мультимедиа, архивов и пакетов программ.

Изначально Apache Tika был разработан как часть поискового движка Apache Lucene, но позднее перерос в самостоятельный проект. Кроме библиотек, подготовлены консольная утилита и GUI-приложение для удобного извлечения контента из разных наборов данных. Помимо языка Java, в рамках проекта подготовлены биндинги для языков Python, .NET и C++.

  1. Главная ссылка к новости
Обсуждение (3 +4) | Тип: Программы |


·15.11 yaffas 1.0 - фреймворк и web-интерфейс для администрирования серверов (14)
  Доступен релиз Yaffas 1.0, распространяемого под лицензией AGPLv3 фреймворка для упрощения администрирования Linux-серверов. В рамках проекта подготовлен web-интерфейс, через который можно управлять аккаунтами пользователей, контролировать запуск сервисов, настраивать параметры сети и различных служб. В настоящее время Yaffas в основном ориентирован на предоставление средств для быстрой установки, настройки и обслуживания почтового сервера на базе Postfix (включая ведение базы виртуальных пользователей), антивирусного пакета ClamAV и системы фильтрации спама SpamAssassin. Кроме того, поддерживается авторизация через LDAP/Active Directory и настройка таких систем, как MySQL, LDAP и SNMP.

На базе фреймворка Yaffas построен интерфейс Zarafa Z-Admin, задействованный для управления серверами, обеспечивающими работу платформы Zarafa Collaboration Platform. Готовые установочные пакеты доступны для Ubuntu и RHEL/CentOS 5.

  1. Главная ссылка к новости
  2. OpenNews: Релиз Zarafa Collaboration Platform 7.0
  3. OpenNews: Релиз Zimbra Collaboration Server 7.0
Обсуждение (14) | Тип: Программы |


·14.11 В рамках проекта ColorHug создан открытый колориметр для калибровки мониторов (55 +16)
  Ричард Хьюз (Richard Hughes), один из разработчиков GNOME и создатель PackageKit, представил проект ColorHug, в рамках которого создан колориметр для цветовой калибровки LCD и LED мониторов. Прибор позволяет сформировать оптимальную палитру на основании измерения параметров экрана.

Все наработки проекта, включая схемы в формате gEDA, код драйверов и прошивки, распространяются под лицензией GPL. Все существующие до этого аналоги устройства были сугубо проприетарными разработками. Кроме полной открытости, ColorHug также отличается более высоким быстродействием и существенно меньшей себестоимостью. В настоящее время Ричард намерен выпустить первую партию из 50 устройств, которые можно заказать по цене 55 евро (самый дешёвый аналог стоит более 100 евро).

  1. Главная ссылка к новости
Обсуждение (55 +16) | Тип: К сведению |


·11.11 Релиз музыкального плеера Tomahawk 0.3 (37 +1)
  Представлен релиз нового интенсивно развиваемого музыкального плеера Tomahawk 0.3, ориентированного на проигрывание, поиск и организацию совместного доступа к музыке. Плеер поддерживает работу с локальной музыкальной библиотекой, с различными online-сервисами, такими как Last.fm и iTunes, а также с музыкальными архивами, размещёнными на других компьютерах и в социальных сетях. Код написан на языке С++ с использованием библиотеки Qt. Для хранения метаданных задействован SQLite. Исходные тексты распространяются в рамках лицензии GPLv3, готовые сборки доступны для Mac OS X, Windows и различных дистрибутивов Linux.

Среди основных новшеств Tomahawk 0.3:

  • Resolver Gallery - новый интерфейс для организации поиска музыки в сети;
  • Страницы с альбомами и информацией о музыканте;
  • Чарты популярных исполнителей на основе данных из iTunes, Billboard, Hype Machine, We Are Hunted, Spotify и RDIO;
  • Упрощение доступа к дополнительной контекстно связанной информации для любой композиции;
  • Глобальный поиск по всем доступным источникам;
  • Drag&drop интерфейс для быстрого перемещения ссылок из Spotify, Rdio и iTunes в очереди воспроизведения и плейлисты;
  • "Ленивые списки", позволяют добавить целый альбом или имеющиеся композиции музыканта просто перетащив одну песню;
  • Пользовательский список интернет-радиостанций с возможностью организации совместного доступа через сервис EchoNest;
  • Обновляемые на лету XSPF-плейлисты (если после импорта плейлиста содержимое оригинала изменится, то импортированный список также будет изменён);
  • Упрощение инструментов для написания дополнений для организации поиска музыки. Добавлены готовые дополнения для YouTube, Grooveshark, Dilandau и Ex.fm;
  • Расширено число поддерживаемых музыкальных сайтов: Turntable.fm, Shazam, Pandora, Grooveshark, Pitchfork, Rhapsody (и Napster), Deezer, 8tracks.

  1. Главная ссылка к новости
Обсуждение (37 +1) | Тип: Программы |


·06.11 Разработчики Mozilla представили мультимедийный JavaScript-фреймворк Popcorn 1.0 (56 +7)
  В рамках проекта Mozilla создан новый JavaScript-фреймворк Popcorn, базирующийся на технологиях HTML5 и предназначенный для создания интерактивных web-страниц, на которых web-контент тесно сплетён с видео и аудиоинформацией. В частности, используя Popcorn, web-кинематографисты могут добавлять элементы интерактивности к своим фильмам. Начиная с версии 1.0, библиотека объявлена стабильной, а её API заморожен от внесения нарушающих совместимость изменений, что открывает двери для широкого внедрения Popcorn в реальных web-проектах.

Popcorn использует JavaScript для организации связи в режиме реального времени социальных медиа, новостных лент и другого контента с online-видео. В результате формируется новая форма кинематографа, который тесно переплетается с Web, сочетая интерактивность и элементы социальных сетей с меняющимся в процессе просмотра контекстом.

Кроме JavaScript-библиотеки Popcorn.js в рамках проекта развивается набор сопутствующих инструментов, среди которых средства сборки, позволяющие сформировать индивидуальный вариант библиотеки, содержащий только необходимые для текущего проекта компоненты. На стадии альфа-тестирования находится Popcorn Maker, среда для создания интерактивного видео, которая позволяет создавать базирующиеся на Popcorn страницы в визуальном режиме, не требуя навыков программирования.

В качестве примера созданных при помощи Popcorn сайтов, приводится на днях запущенный web-проект "One Millionth Tower", в рамках которого подготовлен интерактивный документальный фильм, позволяющий зрителю в трёхмерном пространстве непосредственно выбирать интересующие объекты, поворачивая камеру в любом направлении. После выбора объекта демонстрируется связанный с ним сюжет; при этом можно запросить дополнительную информацию, такую как справку из Wikipedia, картинки из Flickr или спутниковый снимок из Google Maps.

  1. Главная ссылка к новости
Обсуждение (56 +7) | Тип: К сведению |


·04.11 Компания Google открыла код библиотеки для работы со шрифтами - sfntly (2 +14)
  Компания Google анонсировала открытие под лицензией Apache кода библиотеки sfntly, предназначенной для разбора, редактирования и создания шрифтов на базе контейнера SFNT (OpenType, TrueType и т.п.). Библиотека доступна в двух вариантах: для языков C++ и Java. Код библиотеки отмечен как стабильный. В настоящее время Java-версия библиотеки используется для динамической фильтрации (выделения подмножеств, удаления лишних символов) шрифтов в проекте Google Web Fonts, а С++ вариант при печати PDF-документов в браузере Chrome.

Основное назначение библиотеки - создание высокопроизводительных приложений и сервисов, поддерживающих манипуляции со шрифтами. По словам Рафа Левьена (Raph Levien), инженера, занимающегося вопросами использования шрифтов в Web, sfntly действительно очень быстрая библиотека, способная выделять подмножество символов из больших шрифтов за миллисекунды, что быстрее работы по сжатию результата с использованием gzip.

Кроме высокой производительности библиотека предоставляет простой и понятный API, позволяющий выполнять как высокоуровневые действия над шрифтами, так и организовывать низкоуровневый доступ к данным внутри шрифта. Шрифтовые объекты, которыми манипулирует библиотека, поддерживают работу в многопоточных приложениях, в том числе при выполнении операций редактирования. Поддерживается разбор и редактирование большинства базовых sfnt-таблиц для форматов TrueType и OpenType, в том числе добавление новых таблиц. Даже если в библиотеке нет непосредственной высокоуровневой поддержки каких-то sfnt-таблиц, такие таблицы всё равно можно обрабатывать без риска повреждения структур файла. Например, можно манипулировать не только TrueType и OpenType, но и любыми другими форматами на базе контейнера SFNT, включая AAT/GX и Graphite.

Из планов по развитию библиотеки отмечено улучшение поддержки расширенных элементов спецификации OpenType, поддержка дополнительных форматов sfnt-контейнеров, возможность выполнения различных форм сериализации, улучшение уровня абстракции для манипулирования шрифтами.

  1. Главная ссылка к новости
  2. OpenNews: Вышел шрифтовой движок FreeType 2.4.0
  3. OpenNews: Google представил каталог открытых шрифтов и версию Android для телевизоров и планшетов
Обсуждение (2 +14) | Тип: Программы |


·03.11 DRAKON Editor - редактор для графического языка ДРАКОН (25 +6)
  Представлен DRAKON Editor 1.4, свободный кросс-платформенный редактор диаграмм для визуального языка ДРАКОН, разработанного в рамках космической программы «Буран» и оперирующего созданием наглядных блок-схем. ДРАКОН позволяет переложить работу по созданию технологичных программ на плечи инженеров, которые не обладая должными навыками программирования, досконально владеют материалом и прекрасно разбираются в сущности процессов в прикладной области для которой создаётся программа. Код DRAKON Editor распространяется как общественное достояние (Public Domain), поддерживается работа в Linux, Mac OS X и Windows.

  1. Главная ссылка к новости
Обсуждение (25 +6) | Автор: stipan | Тип: Программы |


<< Предыдущая страница (позже)
Следующая страница (раньше) >>



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру