LINUX.ORG.RU

Сообщения oxcd8o

 

alarm не алармит

Форум — Development

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

Но проблема действительно есть: Первый вызов alarm() устанавливает таймер, в назначенное время приходит сигнал, обрабатывается, все довольны. Обработчик сигнала устанавливается обратно, снова вызывается alarm()... и все. На этом месте начинается бесконечный цикл, прерываемый только ^C.

Суть проги в кратце: компьютер играет сам с собой в кости. Визуализуется бросок крутящейся в терминале палочкой, длительность броска задается вышеозначенным алармом. Принимает два аргумента - время в секундах для каждого из 2 игроков.

Код:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <signal.h>
#include <setjmp.h>

unsigned int i;
jmp_buf pos;
char *who[] = {"Com1: ", "Com2: "};
char *ind[] = {"|\b", "/\b", "-\b", "\\\b"};
char digit[] = {"1\n"};

void handler()
{
	static int j=0;
	digit[0] = '1' + i%6;
	write(1, digit, 2);
	longjmp(pos, ++j);
}

int main(int argc, char **argv)
{
	int time[2], j=0;

	if (argc<3 || (time[0] = atoi(argv[1]))<1 || (time[1] = atoi(argv[2]))<1) {
		write(1, "Usage: lab6_19 time1 time2\nTimes must be > 0\n", 45);
		exit(-1);
	}
	
	struct sigaction s;
	memset(&s, 0, sizeof(struct sigaction));
	s.sa_handler = handler;

	if ((j = setjmp(pos)) < 2) {
		sigaction(SIGALRM, &s, 0);
		alarm(time[j]);
		write(1, who[j], 6);
	}
	for (i=getpid()%6; j<2; i++) {
		write(1, ind[i%4], 2);
		usleep(250000);
	}

	exit(0);
}

Результат strace, наглядно иллюстрирующий, что сигнал повторно не приходит:

rt_sigaction(SIGALRM, {0x8048584, [], SA_RESETHAND}, NULL, 8) = 0
alarm(1)                                = 0
write(1, "Com1: "..., 6Com1: )                = 6
getpid()                                = 29333
write(1, "/\10"..., 2)                  = 2
nanosleep({0, 250000000}, NULL)         = 0
write(1, "-\10"..., 2)                  = 2
nanosleep({0, 250000000}, NULL)         = 0
write(1, "\\\10"..., 2)                 = 2
nanosleep({0, 250000000}, NULL)         = 0
write(1, "|\10"..., 2)                  = 2
nanosleep({0, 250000000}, 0)            = ? ERESTART_RESTARTBLOCK (To be restarted)
--- SIGALRM (Alarm clock) @ 0 (0) ---
write(1, "3\n"..., 23
)                   = 2
alarm(1)                                = 0
write(1, "Com2: "..., 6Com2: )                = 6
write(1, "/\10"..., 2)                  = 2
nanosleep({0, 250000000}, NULL)         = 0
write(1, "-\10"..., 2)                  = 2
nanosleep({0, 250000000}, NULL)         = 0
write(1, "\\\10"..., 2)                 = 2
nanosleep({0, 250000000}, NULL)         = 0
write(1, "|\10"..., 2)                  = 2
nanosleep({0, 250000000}, NULL)         = 0
write(1, "/\10"..., 2)                  = 2
nanosleep({0, 250000000}, NULL)         = 0
write(1, "-\10"..., 2)                  = 2
nanosleep({0, 250000000}, NULL)         = 0
write(1, "\\\10"..., 2)                 = 2
nanosleep({0, 250000000}, NULL)         = 0
write(1, "|\10"..., 2)                  = 2
... и далее до бесконечности

Куча write вместо printf и иже с ним - условие лаб.

oxcd8o
()

Floating point exception и неверный пароль в копете

Форум — Desktop

Поставил opensuse 11.3. Сначала обрадовался, потому что alsa подхватиза аудио-девайс в видео-карте и стала доступна передача звука по hdmi. А вот потом настала пора огорчений:

1) VirtualBox при запуске валится выдавая только «Floating point exception». Причем, как ose-версия из репов, так и полная с сайта. До этого с виртуалбоксом бед не знал.

2) Амарок пытается грузиться, но в последний момент тоже краш, и тоже с формулировкой «Floating point exception» и в стандартный вывод кидает:

oxcd8o@hall:~> amarok
InnoDB: The first specified data file /home/oxcd8o/.kde4/share/apps/amarok/mysqle/ibdata1 did not exist:
InnoDB: a new database to be created!
101116 14:14:51  InnoDB: Setting file /home/oxcd8o/.kde4/share/apps/amarok/mysqle/ibdata1 size to 10 MB
InnoDB: Database physically writes the file full: wait...
101116 14:14:51  InnoDB: Log file /home/oxcd8o/.kde4/share/apps/amarok/mysqle/ib_logfile0 did not exist: new to be created
InnoDB: Setting log file /home/oxcd8o/.kde4/share/apps/amarok/mysqle/ib_logfile0 size to 5 MB
InnoDB: Database physically writes the file full: wait...
101116 14:14:52  InnoDB: Log file /home/oxcd8o/.kde4/share/apps/amarok/mysqle/ib_logfile1 did not exist: new to be created
InnoDB: Setting log file /home/oxcd8o/.kde4/share/apps/amarok/mysqle/ib_logfile1 size to 5 MB
InnoDB: Database physically writes the file full: wait...
InnoDB: Doublewrite buffer not found: creating new
InnoDB: Doublewrite buffer created
InnoDB: Creating foreign key constraint system tables
InnoDB: Foreign key constraint system tables created
Object::connect: No such signal Podcasts::SqlPodcastProvider::playlistAdded( Playlists::PlaylistPtr )
Object::connect: No such signal Podcasts::SqlPodcastProvider::playlistRemoved( Playlists::PlaylistPtr )
Object::connect: No such signal Playlists::SqlUserPlaylistProvider::playlistAdded( Playlists::PlaylistPtr )
Object::connect: No such signal Playlists::SqlUserPlaylistProvider::playlistRemoved( Playlists::PlaylistPtr )
Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
Calling appendChild() on a null node does nothing.
Object::connect: No such signal QSortFilterProxyModel::renameIndex( QModelIndex )
Object::connect: No such signal QSortFilterProxyModel::renameIndex( QModelIndex )
Object::connect: No such signal QSortFilterProxyModel::renameIndex( QModelIndex )
Object::connect: No such signal QSortFilterProxyModel::renameIndex( QModelIndex )
<unknown program name>(13680)/: Communication problem with  "amarok" , it probably crashed. 
Error message was:  "org.freedesktop.DBus.Error.NoReply" : " "Message did not receive a reply (timeout by message bus)" " 

KCrash: Application 'amarok' crashing...
sock_file=/home/oxcd8o/.kde4/socket-hall/kdeinit4__0

3) Внезапно, вернувшись вечером домой, не смог войти в аську - копете пишет, что пароль неверен. Через пиджин на нетбуке при этом заходит прекрасно, пароль не сохраненный, 20 раз неправильно его вбить я не мог. А главное, что с утра все работало, после чего я не обновлялся, ничего не перенастраивал и вообще комп стоял выключенный.

KDE 4.4.4 Qt 4.7.1 (пробовал откатывать на 4.6.3) VirtualBox-OSE 3.2.6 (сначала пробовал полную версию с сайта - 3.2.10)

Остальную нужную информацию о системе представлю по первому требованию, только объясните, че за нафиг)

oxcd8o
()

Multi-thread FTP scanner v0.2.5 by Inode

Форум — Security

Сабж был обнаружен на свежеарендованом сервере в виде директории fbsm6 и архива fbsm.tar в корне одного из сайтов. Время их создания совпадает с временим залития этого сайта со старого сервера (через scp заливал). На старом сервере в результате некоторых изысканий обнаружились эти же директория и архив в /root (дитируются концом марта).

Вопросы:
1. Чем чреват этот зверь?
2. Каким интересно образом он смог перебраться на новый сервак, если при копировании /root вообще никак не фигурировал?

oxcd8o
()

2host.com

Форум — Talks

Кто что скажет по поводу данного хостера?
Очень симпатичные параметры VPSок по дармовым ценам. Вот нпример:
CL-Class XEN Super Promotion 2010! -
- 4096MB RAM (Guaranteed!)
- 8192MB SWAP (Guaranteed!)
- 200,000MB HDD RAID10 (Guaranteed!)
- 10,000GB Traffic (Guaranteed!)
- 1IP Address
- VPS Management Panel
- 24/7 Instant Setup!
За жалкие 60 у.е. в месяц.

Интересует в первую очередь стабильность и адекватность/скорость техподдержки.

oxcd8o
()

cron + exim4

Форум — Admin

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

Пробовал написать скрипт, который просто отправляет некий файл мне на почту - опять же при запуске вручную письмо есть, при запуске по крону письма нет.

Вот че за нафиг?

oxcd8o
()

проблема со звуком на Intel HDA

Форум — Linux-hardware

Есть 2 разные системы со звуком на 82801G (ICH7 Family) High Definition Audio. Первая система EEE PC 1000 - встроенные динамики работают, при подключении наушников наступает тишина. Вторая система - материнка ASRock AD510PV, так как нет встроенных колонок - звука нет вообще. Все крутится под управлением Арча.

Любую дополнительную информацию предоставлю по первому же требованию, только помогите :)

Вариант нерабочих наушников исключен - проверял.

oxcd8o
()

один ноут валит сеть

Форум — Talks

Один мужичок принес на работу ноут. Воткнул в него сетевой шнур. После этого упала сетка во всем офисе. То есть не просто упала, а полностью пропал линк. До перезагрузки роутера (DLink DIR-100). На ноуте винда семерка. Мне кажется это совершенно ненормальным. А вам?

oxcd8o
()

Какие наушники предпочитаете вы?

Форум — Talks

Если бы вы были оператором колл-центра с 12-часовой сменой, то в какого плана бы наушниках вы предпочли работать?

oxcd8o
()

Вопрос по IP-телефонии

Форум — Admin

Всем привет.

Начальство поставило задачу перевести небольшую диспетчерскую такси на Астериск. Для этих целей на выделенную машину был поставлен Trixbox CE, куплен voip-шлюз D-Link DVG-6008s и начаты шаманства. С нужным функционалом проблем не возникло, а вот с качеством звука - еще как. Оператор слышит свой голос (иногда настолько громко, что мешает говорить); на фоне слышны сильные помехи в виде треска, звона и бог знает чего еще; голос заказчика у оператора в наушниках звучит очень тихо. Если верить гуглу, то проблемы именно с качеством данного воип-шлюза, что особенно неприятно.

В связи с этим несколько вопросов: Может кто что скажет как исправить имеющиеся проблемы? Какой FXO (хотя бы на 8 портов) voip-шлюз имеет не слишком высокую цену и хорошее качество? Может соответствущая pci-плата будет лучше? Ну и на последок, кто что хорошего (и не очень) скажет про trixbox?

Заранее спасибо. Срачь в рамках правил претсвуется, ибо в споре, как известно, рождается истина.

oxcd8o
()

[задача] Лампочки.

Форум — Talks

Две комнаты, в одной 3 лампочки, в другой 3 выключателя для этих лампочек. Необходимо один раз зайти в комнату с выключателями (пощелкать или не трогать их вообще), выйти и зайти в комнату с лампочками и назвать какая лампочка к какому выключателю подходит.

Что думает коллективный разум?

P.S. Казалось бы, при чем тут линукс?..

 

oxcd8o
()

[опрос] Что вы думаете...

Форум — Talks

... по поводу nVidia CUDA?

 

oxcd8o
()

Барби стала программисткой

Форум — Talks

http://www.3dnews.ru/news/barbi_stala_programmistkoi/

для Ъ:

Всемирно известному бренду компании Mattel, кукле Барби, пошёл уже шестой десяток лет. На протяжении десятилетий Барби служила довольно точным «зеркалом» общества, отражая своими нарядами все оттенки моды и интереса к тем или иным профессиям. И вот, наконец, свершилось – новая Барби станет разработчиком программного обеспечения, то есть, по сути, компьютерным специалистом.

Барби-программистка будет одета в футболку с бинарным кодом и рисунком в стиле печатных плат, а также оснащена всеми необходимыми для работы инструментами: телефоном, ноутбуком, беспроводной гарнитурой и даже кусочком офиса – столиком и парой стен. Говорит ли появление Барби-программистки о том, что интерес к этой профессии возрос? Наверное, это покажет уровень продаж новой куклы.

а по ссылке еще и несколько фоток.

и куча девочек ломанется теперь в айти...

oxcd8o
()

и снова нат, и снова странный

Форум — Admin

Разобраться с mtu мне вчера уже помогли, все работает, но только до момента, когда пытаюсь настроить фаервол средствами iptables. Вот настройки:

INT='eth0'
EXT='ppp0'

echo "1" > /proc/sys/net/ipv4/ip_forward

# Flush all rules
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
iptables -F -t nat

# Set default actions
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

# Forward all packets from internal network to the internet
iptables -A FORWARD -i $INT -o $EXT -j ACCEPT

# Forward packets that are part of existing connections
iptables -A FORWARD -i $EXT -o $INT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i $EXT -m state --state ESTABLISHED,RELATED -j ACCEPT

# Allow all inputs from local network
iptables -A INPUT -i $INT -s 0/0 -d 0/0 -j ACCEPT
iptables -A INPUT -i lo -s 0/0 -d 0/0 -j ACCEPT

# Enable NAT and tweak MTU
iptables -t nat -A POSTROUTING -o $EXT -j MASQUERADE
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

# Deny all spoofed source packets
iptables -A INPUT -i $EXT -s 192.168.255.0/24 -j DROP
iptables -A INPUT -i $EXT -s 127.0.0.1/8 -j DROP

Некоторое время все равботает как часы, а потом как отрезает - снова открываются только гугл с яндексом (и еще мочему-то блог на mygorod.ru), при том что пингуется исправно все. Помогает скинуть на минимальные настройки (две строчки после # Enable NAT and tweak MTU), а потом опять применить полные. Нормально проработать может и пару часов, а может и всего пару минут.

Господа, что за хрень?

oxcd8o
()

странный NAT

Форум — Admin

Пытаюсь настроить дома нат. Маршрутизирующая машина подключается к провайдеру через pppoe и получает статический белый айпи. Далее пытаюсь соорудить сам нат, пока без каких либо изысков:

echo "1" > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

В итоге получается, что с компов внутри сети открываются только гугл и яндекс. Остальное вообще не аллё. При этом, пинги идут исправно к любому хосту и доменные имена так же ресолвятся без нареканий.

Тестировал на двух компах с оpensuse 11.1, сервер сам на дебиане.

Как всегда, предоставю любую информацию по первому требованию и буду крайне благодарен за помощь.

oxcd8o
()

[вещества] триггеры

Форум — Talks

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

 

oxcd8o
()

крайне странное поведение домашнего сервера

Форум — Linux-hardware

Вернее, пока еще будущего домашнего сервера. Собрался поставить на него дебиан с netinstall-cd. Установка дошла до создания партиций - и на этом все повисло. Ребут, новая попытка - виснет еще раньше. Еще ребут - виснет в самом начале. В общем, самое дальнее до куда дошел - установка базовой системы. Убил почти 4 часа времени.

А теперь собственно то, что заставило меня написать именно в этот раздел. Попытка поставить систему со своего компа на хард сервера - увенчалась более чем успехом. А вот загрузка с этого харда серверной машины ничем хорошим не закончилась: несколько попыток и каждый раз разные ошибкии. То кернел паник, то виснет после udev'а, то какие-то фэйлы после fsck. Вариант нерабочего харда пожалуй отметается - в моем компе все прекрасно работает и ставится. Оператива тоже временно повзаимствована из рабочей машины и нареканий не вызывает. Оставшиеся кандидаты: мать MSI G31TM-P35 (видео встроенное), проц Celeron E1500, БП Linkworld LW2-350W.

Ну а самой большой странностью мне кажется следуюющее: при замене БП на 470ваттынй термалтейковский из опять же моего основного компа - сервер вообще не запускается. Спикер молчит (то есть совсем-совсем молчит, даже без стандартного пика рпи запуске) и экран ровным счетом ничего не показывает.

Извиняюсь, если получилось путано. Что попросите - поясню. Буду рад любым предложениям в каком направлении искать проблему.

oxcd8o
()

Доктор, я буду жить?

Форум — Talks

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

PS: Ага, ниче лучшего, чем задать этот вопрос в толксах в почти пять утра я не придумал.

oxcd8o
()

Харды и их надежность.

Форум — Talks

Щас услышал теорию, что харды на 320ГБ отличаются пониженной надежностью. Но ни я, ни мои знакомые с ними не имели до сих пор никаких проблем. У меня такой хард вообще торренты раздает 24/7 и ничего... Кто-то что-то слышал про такую ерес^Wточку зрения?

oxcd8o
()

[караул!] Цены

Форум — Talks

Искал карандашик и нечайно наткнулся на старый чек из ОЛДИ. Две гиговые планки памяти по 448р каждая, в сумме то есть 896. А нынче цены на гигабайт оперативы начинаются с 732 рублей. В никсе так вообще с 761. Куда катится мир?

oxcd8o
()

Вопрос по блокам питания

Форум — Talks

Возможно глупый, но вот написано на бп 250 ватт - это значит, что он перманентно жрет из сети 250 ватт или все-таки только в пике, а в штатном режиме ровно столько сколько надо?

oxcd8o
()

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