LINUX.ORG.RU

Сообщения BreadFan

Собрать стеки со всех нитей процесса

Форум - Development

Привет всем!

Я пытаюсь собрать stack traces для всех нитей процесса при SIGSEGV и прочих неприятностях, но есть 2 проблемы:
1. Функции backtrace получают стек текущей нити, а надо со всех. Есть ли аналогичные функции для этого случая?
2. Пытался взять адреса стеков с помощью pthread_attr_getstack (код здесь) чтобы потом как-нибудь обработать, функция возвращает NULL. Не могу понять почему, все делаю по манам.

Ну и вообще: кто как собирает стеки, не прибегая к коркам?

()

Помогите нарисовать график

Форум - General

Привет!

Есть у меня некоторые данные по некоторым процессам - имя процесса и времена его начала и завершения, например:
proc1 00:40:44,674 00:40:45,688
proc2 00:40:46,140 00:40:46,910
...

хочется нарисовать график по типу такого:
http://img704.imageshack.us/img704/1367/plotv.png

какой инструмент выбрать? чувствую, что gnuplot, но я так и не разобрался как в нем строить линии.

спасибо!

()

DEB с конфигурационными файлами

Форум - Development

Начал разбираться с построением DEB, решив начать с малого - сделать пакет из кастомных конфигов Астериска.

Подправил control и rules, сгенерированные dh_make

Собрал от юзера и рута с помощью:

debuild -i -us -uc

Все собралось, но:

1. файлы в deb лежат относительно текущей директории (./etc вместо /etc)

2. если подменить стандартные пермишены, генерируемые dh_fixperms, lintian начинает жаловаться

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

Пожалуйста, пините меня в направлении правильной доки, в которой было более-менее разжевано как правильно класть файлы и чинить пермишены или в сторону минимальных сборочных deb-файлов, по которым человеку, испорченному rpm легко было сориентироваться :)

()

postfix + gmail: Username and Password not accepted

Форум - General

Нутром чую, что тема такая была, но нагуглить по лору не удалось. Проблема вот в чем: есть postfix, через sasl он авторизуется на gmail. проблема в том, что примерно через сутки gmail перестает аутентифицировать postfix до тех пор, пока я не залогинюсь в его вебе, причем при этом он предлагает мне разгадать капчу.

как это можно вылечить?

P.S. Нагуглил совет поставить в main.cf задержки в пару секунд, но ждать сутки чтобы воспроизвести не охота :)

smtp_destination_rate_delay = 2
relay_destination_rate_delay = 2

()

Relocation в Европу. Нужен совет.

Форум - Job

Давно уже выгнашиваю план релокейшена куда-нибудь за границу, желательно в Европу, возможно в штаты. Есть ли какие-нибудь ресурсы посвященные данному вопросу? Хочется понять куда лучше ехать и как искать работу. Переезжать буду с семьей (жена и ребенок 2 лет).

()

Greasemonkey: concat

Форум - Web-development

Что-то я совсем ничего не понимаю! Javascript-код для Greasemonkey:

...
var topics;

topics = document.getElementsByClassName('TextTopic');
topics = topics.concat(document.getElementsByTagName('h1'));
...

скрипт не выполняется, в Error console - "topics.concat is not a function". пробовал еще вместо var topics сделать var topics = new Array() - то же результат.

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

Короче, help :) На javascript первый раз в жизни пишу!

()

Инфосистемы Джет

Форум - Talks

Если кто-нибудь работает в Инфосистемах Джет или общался с тамошней HR, не могли бы вы скинуть мне на почту/jabber batrakov@gmail.com какой-либо контакт (желательно e-mail) HR-менеджера Натальи. Больше никаких данных нет, на определителе телефона высветился только номер джетовского телефонного свича :(

Интерес сугубо деловой :)

>>>

()

Вышла версия 3.1 библиотеки Apache POI

Новости - Java
Группа Java

Вышла версия 3.1-FINAL популярной библиотеки для чтения и записи документов Microsoft Office, таких как Excel, PowerPoint, Visio и Word.

Изменения в этом выпуске:

POI-HSSF - Java API для доступа к документам Microsoft Excel

  • значительные улучшения функциональности вычисления формул;
  • поддержка условного форматирования;
  • поддержка гиперссылок Excel;
  • работа с вложенными (OLE2) документами.
POI-HSLF - Java API для доступа к документам Microsoft PowerPoint
  • поддержка извлечения вложенных звуковых и OLE-файлов;
  • поддержка таблиц;
  • улучшено извлечение текста;
  • слайды PowerPoint теперь можно конвертировать в графические форматы;
  • драйвер Java2D Graphics.
POI-HWPF - Java API для доступа к документам Microsoft Word
  • работа с вложенными (OLE2) документами;
  • поддержка извлечения картинок Office (Escher images) из документов word.
Сайт проекта
Полный список изменений

>>> Анонс в рассылке POI

Метки: , ,

()

Замена символов в С-препроцессоре

Форум - Development

Хочется странного, а именно, замены символов средствами препроцессора.
Зачем это нужно:
- есть библиотека log4c, она позволяет логировать в группы логов, формат которых: группа.подгруппа1.подгруппа2...
- есть макрос INIT_LOG_GROUP(group) cat_ ##group = log4c_category_get("myapp." #group)

проблема в том, что если мы передадим туда INIT_LOG_GROUP(g1.g2), то это развернется в cat_g1.g2 = ..., а переменная cat_g1 с членом g2 у нас, разумеется, не определена

можно ли сделать примерно так?:
INIT_LOG_GROUP(group) cat_ ##TR('.', '_', group) = log4c_category_get("myapp." #group)

код будет работать только под Linux и собираться только gcc, поэтому на переносимость пох.

>>>

()

Про русские маны

Форум - Talks

Зацените точность перевода!

RECV(2)

If from is not NULL, and the underlying protocol provides the source address, this source address is filled in.

Если параметр from не равен NULL, а сокет не является ориентированным на соединения, то адресотправителя в сообщении не заполняется.

man-pages-ru-0.7-8
Fedora Core 3

>>>

()

Добавление правил iptables без libiptc

Форум - Development

Понадобилось тут в своем приложении, код которого ни под каким предлогом распространять нельзя, добавлять и удалять однотипные правила iptables. Добавлять/удалять надо около ~50 правил в секунду, в каждый момент в цепочке где-то около 1500 правил.

Вариантов реализации вроде всего ничего: 1. Писать приложение с libiptc и общаться с ним через какой-нить IPC 2. Патчить iptables чтобы он постоянно висел, отдавать ему правила через какой-нить IPC, патчи по требованию кастомера отдавать 3. Ковырять протокол взаимодействия iptables с netfilter чтобы отдавать ему правила 4. Забить на все и дергать бинарь iptables через popen

Попробовал добавить такое правило iptables'ом, 0.005 секунд, для моей задачи вроде нормально. Какой из пунктов кто посоветует, и каких подводных камней мне ждать?

>>>

()

Автомапинг имен eth? с реальными интерфейсами

Форум - Admin

Возникла проблема: написать скрипт для машины с 6 проводными сетевыми интерфейсами, размещенными на двух разных карточках, так чтобы он однозначно мапил интерфейсы к именам eth?

Вопрос: в каком направлении необходимо двигаться и решаема ли эта задача в принципе? я посмотред man iftab - он может привязывать имена к макам или прерываниям. но так как скрипт должен работать на заранее неизвестной конфигурации, маки нам неизвестны, как распределяются IRQ и как их узнать, кроме как используя костыли типа ifconfig eth0 up && udevinfo -a -p /sys/class/net/eth0 - для меня загадка :)

>>>

()

Eclipse и package explorer

Форум - Development

В еклипсе никак не могу приручить project explorer так, чтобы он генерировал правильное представление пекеджей. он ориентируется на иерархию директорий, а у меня в директориях
src/java/org/apache/poi
и
src/ooxml/org/apache/poi
лежат классы, принадлежащие одному пакету org.apache.poi. Еклипс же считает, что эти классы принадлежат пакетам src.java.org.apache.poi и src.ooxml.org.apache.poi. В качестве решения eclipse предлагает перенести класс в тот пекедж, который объявлен в java-файле, но это мне не подходит, т.к. он переносит и сами файлы, а у меня включена интеграция с SVN и трогать иерархию директорий я не хочу.

подскажите пожалуйста решение поизящнее, в идеале - чтобы он брал названия пекеджей из сырков.

>>>

()

Java: вопрос по лицензированию

Форум - Development

У меня возникла необходимость добавить функциональности в один из классов пакета javax.Swing. Просто унаследоваться от этого класса и переопределить методы не комильфо: нужно обращаться к private членам, добавлять ощутимые куски кода в разные места функция и проч. Я скачал исходники и тупо поправил нужные места в классе. Т.к. я полный нуб в джаве, мои изменения вряд ли примут в Sun, поэтому я решил не париться, а переименовать этот класс и пользоваться им в своей программе. Свои изменения я готов выложить в любой момент, однако код программы открыть никак не могу.

Вопрос: правомерны мои действия с точки зрения лицензии? Если нет, то что нужно сделать чтобы не открывать код?

>>>

()

Конвертирование между кодировками

Форум - General

Чего-то я туплю. Есть виндовое приложение, которое пишет файлы с русским текстом в некоторой кодировке. Notepad++ говорит, что эта кодировка - ANSI.
Линуксовый file говорит, что это:

$ file file.txt
file.txt: Non-ISO extended-ASCII English text, with LF, NEL line terminators

iconv сконвертить его не может, оция -с дает кучу мусора

$ iconv -f MS-ANSI file.txt
iconv: illegal input sequence at position 1

хочется сконвертить эти файлы в utf-8 для последующей индексации, помогите, пожалуйста!

вот sample файл зааплоадил: http://webfile.ru/1803935

>>>

()

Тру-книги по базам данных

Форум - Development

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

заранее спасибо

>>>

()

Снова флуд в Dev

Форум - Linux-org-ru
()

Снесите чтоли

Форум - Linux-org-ru
()

select и non-blocking fifo

Форум - Development

Вот возникли непонятки с сабжем:
Создаю fifo, открываю его с параметром O_RDONLY | O_NONBLOCK, вызываю на него select, все ок. 
После того, как другой процесс пишет 1 байт в этот fifo, select завершается и я вычитываю этот байт из fifo. 
Однако при следующем вызове select, fifo снова становится готовым на чтение, хотя данные в него никто больше не писал. 
Почему такое может быть? 

Код:
    for (;;)
    {
        FD_ZERO(&fds);

        FD_SET(fifo, &fds);
        fd_max = MAX(fifo, fd_max);
...
/* добавляем еще дескрипторы: 2 пайпа и 1 сокет */
...
        if (select(fd_max + 1, &fds, 0, 0, 0) < 0)
        {
            if (errno != EINTR)
                err(1, "select");
        }
...
/* обрабатываем готовность других дескрипторов на чтение */
...

        if (FD_ISSET(fifo, &fds))
        {
            while (read(fifo, &i, 1) == 1)
            ; /* empty non-blocking fifo */

            some_func();
            continue;
        }
    }
()

Про миранду: 2Shaman007 и сочувствующим

Форум - Talks

Надеюсь, это не сочтут за офтоп:

Помнится, Shaman007 несколько раз говорил, что ICQ-клиент Miranda - образец того как не надо делать софт, но внятного ответа на вопрос "почему" я так и не нашел (может просто плохо искал...). Почему?
Она open source, в инсталляторе-минимальная функциональность, все остальное достигается обвешиванием плагинами. Тому, кому не нравится искать плагины - пожалуйте, есть сборки миранды, сделанные энтузиастами. Мне такая модель разработки напоминает Firefox.

Пожалуйста, те, кто в теме, поругайте миранду, может я чего-то не понимаю :)

()