LINUX.ORG.RU

Сообщения AngryElf

 

увеличить размер fifo?

Делаю mkfifo <файл>

Потом начинаю в него писать и читать.

Опытным путем выяснено, что больше чем 64К записать невозможно - в неблокирующем режиме вываливается "Resource temporarily unavailable", в блокирующем - ждет, пока на том конце не прочитают.

Можно ли увеличить этот ограничение?

ulimit говорит unlimited, где еще какие ограничения могут быть?

Размер буфера мне нужно поднять до нескольких мегабайт (8-32), как минимум. Это возможно вообще?

Можно, конечно, мониторить select'ом, пока буфер не освободится, но хочется более простого решения.

AngryElf
()

оптимизация sql-запроса - выборка по дате

Статистика посещаемости сайта. Перпендикулярные таблицы - визиты (хиты), пользователи (унифицируются по id сессии визита), браузеры (по user-agent)

Соответственно запрос (mysql v4.1)

SELECT
  b.browser_id as 'browser_id',
  b.name as 'name',
  COUNT(*) as 'count'
FROM stat_visits AS v
  LEFT JOIN stat_users AS u USING (user_id)
  LEFT JOIN stat_browsers AS b USING (browser_id)
WHERE 1
  AND u.browser_id!=0
  AND b.spider=0
  AND (YEAR(v.date) = 2007) AND (MONTH(v.date) = 8) AND (DAYOFMONTH(v.date) = 6)
GROUP BY b.browser_id
ORDER BY 'count' DESC


explain по нему выдает следущее:

1	SIMPLE	v	ALL	NULL	NULL	NULL	NULL	113972	Using where; Using temporary; Using filesort
1	SIMPLE	u	eq_ref	PRIMARY	PRIMARY	4	hitroe.v.user_id	1	Using where
1	SIMPLE	b	eq_ref	PRIMARY,spider	PRIMARY	4	hitroe.u.browser_id	1	Using where


Т.е. перебирает полностью таблицу визитов (в ней именно 113 тыщ записей). 

Есть ли возможность оптимизировать выборку? Не хочется вводить в таблице дополнительные поля вида "год", "месяц" и "день" вместо одного поля "дата". 
AngryElf
()

Дополнительные кнопки на ноуте HP xe3

Есть 4 офисных кнопки (почта, веб и еще 2 какие-то) над клавой и кнопки управления воспроизведением (плей-пауза-громкость-перемотки).

xev не показывает ничего.

Откуда начать копать?

AngryElf
()

нестабильная документация?

Вот чего я от генты не ожидал, так это что документацию на php придется ставить так -

ACCEPT_KEYWORDS=~x86 emerge php-docs

Потому что версия от 2007-02-02 помечена как нестабильной, а последняя стабильная - от 2005-го года...

AngryElf
()

переменные окружения в sudo

[elf@lapotop (~)]$ locale
LANG=ru_RU.utf8
LC_CTYPE="ru_RU.utf8"
LC_NUMERIC="ru_RU.utf8"
LC_TIME="ru_RU.utf8"
LC_COLLATE="ru_RU.utf8"
LC_MONETARY="ru_RU.utf8"
LC_MESSAGES="ru_RU.utf8"
LC_PAPER="ru_RU.utf8"
LC_NAME="ru_RU.utf8"
LC_ADDRESS="ru_RU.utf8"
LC_TELEPHONE="ru_RU.utf8"
LC_MEASUREMENT="ru_RU.utf8"
LC_IDENTIFICATION="ru_RU.utf8"
LC_ALL=

[elf@lapotop (~)]$ sudo locale
Password:
LANG=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=


Как сделать, чтобы у sudo текущая локаль была? 

На другой машине, что интересно, по дефолту так (и там, и там gentoo, но одна древнее другой на пару лет).
AngryElf
()

Python - развернуть tuple

============= def fun(x,y): return x+y

a=(1,2)

fun(a) ============= TypeError: fun() takes exactly 2 arguments (1 given)

Как правильно? Чё-т не могу найти функцию для разворачивания tuple, хотя вроде было что-то такое...

AngryElf
()

Monkey audio

mac-port на sf.net отсутствует, а все линки по инету ведут на него.

Чем .ape играть/конвертить-то?

AngryElf
()

Современные встроенные звуковухи

Сабж - аццкая жесть. Что в винде, что в линухе.

Вот почему встроенная интелевская (hda codec) вешается при переключении наушников из одной дырки в другую? Хорошо - помогла выгрузка-загрузка модулей...

З.Ы. Кто в железе шарит... В винде когда втыкаешь новые наушники/микрофон, дрова кричат, что видят новый девайс и предлагают выбрать его тип. В линухе никто ничего не кричит, разумеется, но два звуковых выхода работают одновременно. Это всё реализуется в самой звуковухе или в дровах? А что делается в линухе?

AngryElf
()

Портирование Linux на КПК

Имеется кпк Qtek G100 (HTC Galaxy). handhelds.org про него не знает ничего.

Имеется желание поставить на него Linux. Насколько это реально?

КПК более-менее стандартный (самсунговский arm-процессор), знания системного софта на уровне "чуть-чуть ассемблер, могу на С программировать железо".

А вот с железом не дружу. Могу разобрать и посмотреть внутрь, но вот перепрошить в случае чего флешку не осилю - нету ни программатора под рукой, ни знаний соответствующих.

Есть смысл браться? Какой риск запороть всё напрочь?

AngryElf
()

Выбор DVB-S PCI-карты

По каким критериям выбирать? В спутниках - профан :)

AngryElf
()

дофига in 1 card reader - грабли бывают?

Хочу себе кардридер купить, sd/mmc читать/писать напрямую. На что-нить надо смотреть при покупке в плане совместимости с линухом?

AngryElf
()

Мониторинг freeradius

Имеется домашняя сеть, до 50 клиентов выводятся в инет через pptp+freeradius+mysql через adsl-модем.

Требуется смотреть загрузку интернет-канала (общая загрузка, нагрузка отдельных учаснегов на канал) за различные промежутки времени (от минуты до дней-месяцев)

Сейчас, как я вижу, в базу, в таблицу radacct кладется информация о сессиях, но цифры там обновляются только по завершению сессии. Где бы брать что-нить более актуальное?

Гугление ни к чему толковому не привело.

AngryElf
()

Приколы в быдлоязычке. Нужна помощь спецов (не лоботомистов)

Имеется пыхпых (тестилось в 5.2 и 4.4), решили сравнить разницу в 
скорости при использовании констант и текстовых строк в качестве индексов массивов. 

Вот код. 

function getmicrotime()
{
   list($usec, $sec) = explode(" ", microtime());
   return ((float)$usec + (float)$sec);
}


define("BLAH", 'qqq');

$arr = array('aaa'=>"1111",'bbb'=>"2222", 'ccc'=>"333", "qqq"=>"444343", 5=>"0987");
$cycles = 100000;

$time_start = getmicrotime();

for ($i = 0; $i < $cycles; $i++) {

    $temp0 = $arr[BLAH];
    $temp1 = $arr[BLAH];
    $temp2 = $arr[BLAH];
    $temp3 = $arr[BLAH];
    $temp4 = $arr[BLAH];

}

$time_end = getmicrotime();
$time1 = $time_end - $time_start;

$time_start = getmicrotime();

for ($i = 0; $i < $cycles; $i++) {
    
    $temp0 = $arr["qqq"];
    $temp1 = $arr["qqq"];
    $temp2 = $arr["qqq"];
    $temp3 = $arr["qqq"];
}

$time_end = getmicrotime();
$time2 = $time_end - $time_start;


echo sprintf("Const: %.6fs   <br />\nString: %.6fs\n <br/> K=%.3f",$time1,$time2,$time1/$time2);



В результате работы, коээфициент K в районе 2.4, т.е. использование 
констант более чем в два раза медленее использования обычных строк. 

Шо за фигня?
AngryElf
()

Захват нескольких каналов одновременно с обычного tv-тюнера?

Принципиально возможен ли сабж?

Логически я понимаю, что тюнеру необходимо настроится на определенную частоту (на то он и tuner), а несколько каналов - несколько разных частот.

Однако достаточно компетентный человек утверждает, что можно.

Вопрос такой встал ввиду планов установки в сети вещания, радио и/или тв, с кабельной антенны. Сколько тюнеров понадобится - 1 или столько, сколько каналов захочется смотреть/слушать?

З.Ы. Речь идет о обычных аналоговых тв-тюнерах, в слот pci, для обычной аналоговой антенны. Не спутник и т.п.

З.З.Ы. Тюнера под рукой нету, чтоб попробовать самому.

AngryElf
()

Тюнинг COM-порта и IRDA

Имеется: Palm IIIxe (palmos 4.1), донгл tekram ir210b (для com-порта).

Коннект между девайсами поднял, но скорость совсем никакая - около 3-4кбайт/с. Отсюда вопросы:

1. Какой максимальной скорости можно добится на irda (имеется в виду sir, fir не поддерживается наладонником)?

2. С какой стороны нужно тюнить параметры. К примеру, если на компе я выставляю скорость порта - 115200, а на наладоннике - 57600, то какая скорость (и прочие параметры) будут применятся?

3. Какие параметры вообще крутить для достижения лучших результатов?

4. Влияют ли другие параметры - температура/влажность воздуха/отклонение от прямой между портами на передачу, если принять расстояние между портами донгла и наладонника условно за 10 см?

AngryElf
()

Железо для слабенького VPN-сервера

Предполагается пускать в инет, допустим, 30 человек. Канал, к примеру, 512/128кбит/с (да, килобит, это в Беларуси такие цены на инет просто). Соответственно, какое железо надо, что б хватало всё это дело роутить-vpn-нить.

Если без шифрования данных, я так понимаю, железо нужно совсем никакое, а если с шифрованием? Например, второго пня мегагерц на 400 хватит? (есть тут вариант купить такую железку белой сборки и не возится с другим барахлом).

Дистр, само собой, linux. Какой-нить шапко-дебьянистый.

AngryElf
()

Шо за зависимости в KDE?

Gentoo.

Пытаюсь поставить k3b. Из библиотек стоят только qt. kdelibs нету.

$ emerge -pv k3b
[ebuild N ] kde-base/kdelibs-3.5.5-r5
[ebuild N ] app-cdr/k3b-0.12.17

Если включить kde для k3b (что это изменить-то должно, если kdelibs в любом случае предлагают ставить?), то ситуация забавнее


$ USE=kde emerge -pv k3b
[ebuild N ] kde-base/kdelibs-3.5.5-r5
[ebuild N ] kde-base/kdesu-3.5.5 23,298 kB
[ebuild N ] app-cdr/k3b-0.12.17


$ esearch kdesu
[ Results for search key : kdesu ]
[ Applications found : 1 ]

* kde-base/kdesu
Description: KDE: gui for su(1)


гуй для su весит 23 метра?? Больше всего kdelibs? Или я чего-то не понимаю?

AngryElf
()

xosd/popup

Имеется желание написать сервис попапов.

Почему попапы - многие проги их используют для информирования юзера и прочих задач (psi - клик на popup-уведомлении о мессаге открывает окно сообщений).

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

Вопрос - не велосипедист ли я? :)

Задача возникла, когда стало нехватать возможностей xosd, а написание своего функционала постепенно выливается в нечто глобальное :)

AngryElf
()

python: общение между форками

Имеются форки, которым необходимо обмениваться информацией. Сокеты-пайпы не очень подходят, так как часто информация, созданная одним процессом требуется 2-3 другими процессами.

Нормальный system v-шный ipc в питоне отсутствует (хотя когда-то был).

Есть какой-нить человеческий вариант?

AngryElf
()

потерял в питоне ipc

Сабж. Который shm, который /dev/shm, который по ipcs(8) можно смотреть. Раньше вроде был, а сейчас (python 2.4.3) не вижу.

Гугль выдает полную хрень.

Конкретно мне этот ipc нужен для обмена данными и общих локов между форками одной проги.

Треды тут (http://www.linux.org.ru/jump-message.jsp?msgid=1651901) всё тормозят, решил форками сделать, бо очень уж загадочные глюки...

AngryElf
()

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