Плохая архитектура II

Все, что вы хотели знать о программизме, но боялись спросить.
Ответить
vg
Маньяк
Сообщения: 2803
Зарегистрирован: 29 май 2003, 22:29
Откуда: Магадан - Миссиссага

Плохая архитектура II

Сообщение vg »

Вопрос был задан в телефонном интервью.

Реализовано нечто вроде Terminal Server/Client

Server - сам непосредственно работает с видео драйверами. Периодически делает "снимок" рабочего стола и посылает клиенту.
Транспорт TCP. Это всё, что известно.

Меня хватило только на то, чтобы предложить предварительную компрессию данных. Сказали - да хорошо, но мало. Про UDP, как альтернативу не сказал, но можно не упоминать (там очень много всёравно не выйграть на оверхедах).

Второй вопрос не из разряда архтектурных и достаточно простой, но всё же.

Есть приложенние, писанно C++ в 1000000 строк. Сорц доступен. Местами бывает меморилик, так и переполнение буферов. Используются в коде только malloc и free.
Предлагается заменить их на debug_malloc и debug_free, для того, чтобы найти проблемные адреса и подправить ситуацию. Описать принцип написания debug_malloc/debug_free (телефонное интервью).
Аватара пользователя
ajkj3em
Маньяк
Сообщения: 2063
Зарегистрирован: 12 ноя 2006, 06:53

Re: Плохая архитектура II

Сообщение ajkj3em »

посылать естественно надо разницу между текущим снимком и
предыдущим. можно дополнительно перевести в палитровый
формат перед сжатием и посылкой.
Аватара пользователя
Проф. Преображенский
Графоман
Сообщения: 20276
Зарегистрирован: 08 ноя 2006, 11:10

Сообщение Проф. Преображенский »

Масса информации в инете по ключу detecting memory leak. Обычно делается трасса распределения и освобождения памяти. В дебаг моде проекта это как-то делается.
Это как в дайвинге - должно совпадать количество (быть четным).
vg
Маньяк
Сообщения: 2803
Зарегистрирован: 29 май 2003, 22:29
Откуда: Магадан - Миссиссага

Сообщение vg »

runner писал(а):Масса информации в инете по ключу detecting memory leak. Обычно делается трасса распределения и освобождения памяти. В дебаг моде проекта это как-то делается.
Это как в дайвинге - должно совпадать количество (быть четным).
Тузлы не применять.
Ты уже близко, сказав о чётности. Остался всего один шаг.
И далее, а как быть с переполнением буфера (надо продолжить рассуждения)? Всё надо уместить в 10-20 строк кода реализации debug_malloc, debug_free.
vg
Маньяк
Сообщения: 2803
Зарегистрирован: 29 май 2003, 22:29
Откуда: Магадан - Миссиссага

Re: Плохая архитектура II

Сообщение vg »

ajkj2em писал(а):посылать естественно надо разницу между текущим снимком и
предыдущим. можно дополнительно перевести в палитровый
формат перед сжатием и посылкой.
хорошая идея. согласен. хотя, что хотели гуру до конца не ясно. (я там естественно не прошёл по многим критериям)
Аватара пользователя
Проф. Преображенский
Графоман
Сообщения: 20276
Зарегистрирован: 08 ноя 2006, 11:10

Сообщение Проф. Преображенский »

Тузлы не применять.
У меня стоит Боундзчекер, но это необязательно.
Ты уже близко, сказав о чётности. Остался всего один шаг.
Я уже на месте. Ты шагай. :wink:
И далее, а как быть с переполнением буфера (надо продолжить рассуждения)? Всё надо уместить в 10-20 строк кода реализации debug_malloc, debug_free.
Выдавать больше и метить хвост.
Аватара пользователя
Проф. Преображенский
Графоман
Сообщения: 20276
Зарегистрирован: 08 ноя 2006, 11:10

Re: Плохая архитектура II

Сообщение Проф. Преображенский »

vg писал(а):
ajkj2em писал(а):посылать естественно надо разницу между текущим снимком и
предыдущим. можно дополнительно перевести в палитровый
формат перед сжатием и посылкой.
хорошая идея. согласен. хотя, что хотели гуру до конца не ясно. (я там естественно не прошёл по многим критериям)
сошлись на MPEG4.
vg
Маньяк
Сообщения: 2803
Зарегистрирован: 29 май 2003, 22:29
Откуда: Магадан - Миссиссага

Сообщение vg »

runner писал(а):
Тузлы не применять.
У меня стоит Боундзчекер, но это необязательно.
Ты уже близко, сказав о чётности. Остался всего один шаг.
Я уже на месте. Ты шагай. :wink:
И далее, а как быть с переполнением буфера (надо продолжить рассуждения)? Всё надо уместить в 10-20 строк кода реализации debug_malloc, debug_free.
Выдавать больше и метить хвост.
Молодец. Правильно всё сказал. Только сильно не гордись. :lol: Я ж там пропостил в начале, что вопросы простые. :lol:

ПС. только в единственном месте ты ошибся - я на самом деле пришёл:lol: а вопросы то просто по прошлым интервью. так .... просто прикольно. а может и сгодится кому.
Аватара пользователя
Проф. Преображенский
Графоман
Сообщения: 20276
Зарегистрирован: 08 ноя 2006, 11:10

Сообщение Проф. Преображенский »

ПС. только в единственном месте ты ошибся - я на самом деле пришёл:lol: а вопросы то просто по прошлым интервью. так .... просто прикольно. а может и сгодится кому.
Ну так пости сразу с ответами - чего отрываешь?
Ответить