Магия

Любые обсуждения, не нарушающие правил форума.

Модератор: Модераторы

Магия

Сообщение Brainenjii » 10.10.2008 08:46:25

Есть приложение, получает запросы от клиентов, проверяет - можно ли им получать ответы и если да - забирает инфу из БД и отправляет её клиентам. Всё работало замечательно, но на определённом этапе началось волшебство -
top писал(а):top - 08:48:25 up 4:36, 1 user, load average: 0.00, 0.00, 0.00
Tasks: 57 total, 1 running, 56 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.3%sy, 0.0%ni, 99.0%id, 0.7%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 125328k total, 76716k used, 48612k free, 11364k buffers
Swap: 128480k total, 0k used, 128480k free, 43920k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ SWAP COMMAND
2435 root 20 0 191m 4292 2036 S 0.0 3.4 0:12.95 187m appserv

вот, тут, как я понимаю, пишет, что используюется 76716k + 11364k + 43920k = ~132000k, а в поле SWAP у appserv - 187m... free тоже говорит, что со свободной памятью всё в порядке:
free писал(а):admin@lin02:~> free
total used free shared buffers cached
Mem: 125328 76628 48700 0 11380 43924
-/+ buffers/cache: 21324 104004
Swap: 128480 0 128480

Но при этом -
Изображение
Как такое может быть, и что с этим делать?
Аватара пользователя
Brainenjii
энтузиаст
 
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Re: Магия

Сообщение Sergei I. Gorelkin » 10.10.2008 14:10:31

Легко. Напортачено в вычислении размера выделяемой памяти, результат получается отрицательным, в беззнаковом представлении - около 4 ГБайт, естественно система столько не даст.
Распечатка стека вызовов при исключении должна выводить на проблему прямой наводкой.
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1405
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград


Вернуться в Потрепаться

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 31

Рейтинг@Mail.ru