AlexandrY (22.07.2007 00:31, просмотров: 1) ответил Evgeny_CD на Да нет, синтетика гораздо лучше, чем кажется.
Не будем путать синтетику и моделирование. Апликуха на синтетическом порте не поможет сделать хорошее моделирование.
Вот классическая задача довольно актуальная:
Сейчас скорости Internet-а сильно растут. От дивайсов требуют больших скоростей. Но нормальный стек TCP/IP очень сложно устроен.
Есть куча настроек, в частности количество и структура промежуточных буферов между IP слоем и драйвером.
Оптимально настроить их можно только зная статистику, как быстро IP уровень может принимать и отправлять пакеты и как быстро драйвер может принимать и отправлять пакеты. В рабочем стеке IP никто средства сбора такой статистики не внедряет, остается только метод тыка.
Т.е. ясно синтетика здесь не поможет, она понятия не имеет о реальных временах.
Функциональное моделирование тоже не годится поскольку нет информации не то что о времени выполнения функций, но и вообще что там и как выполняется.
Помогут только средства аппаратного отладчика, т.е. оперативный просмотр переменных, построение графиков динамики загрузки буферов и значений профилирующих счетчиков без останова программы, возможность быстро изменять в диалогах настройку периферии и сценарии выполнения т.е. все то, что есть в отладчике Keil.
Дальше не забывайте о том, что у компиляторов есть свои уникальные баги семантических анализаторов, парсеров, линкеров и т.д. Я уже приводил достаточно примеров для RealView.
Т.е. синтетика даст все красиво, а на платформе пойдут чудеса.
И на фига синтетика тогда?
Плюс синтетика искажает поведение багов типа "местный эффект"
Т.е. таких багов, когда кричат - "из под отладчика у меня все хорошо, а после прошивки виснет". А изменения в поведении багов самая частая причина срыва крыши у девелоперов однако.
А как правильно писать под OC-и, я думаю обсудим в какой-нибудь более профильной ветке ;-)