ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
19 апреля
939437 Топик полностью
Связанные сообщения
Синтетический ПортLogger
[protodb] Protocol Debugger. Отладка и реверс-инжиниринг протоколов.2023-11-12
В плюсах можно сделать шикарнейший логгер. Во-первых не занимающий програмной памяти или памяти данных (оперирует адресами текст...2020-09-12
Начиная с virtual environment смешалось всё. JSON и всё такое прочее -- это детали реализации конкретной системы, а не высокоуро...2020-07-11
Требуется мнение об идее реализации синтетических портов, пока привожу основные тезисы: Синтетической порт(Synth port) представл...2020-07-11
Допустим, я хочу сделать в threadX логгер. Он будет писать в кольцевой буфер в памяти, из которого медленно и печально будет вып...2020-06-18
+1. Проблемы с детектированием наезда, на необработанные данные, обгона указателя чтения, можно решить, если использовать не ука...2020-05-17
Нормальный логгер, к сожалению, делается только на C++... На C сам язык начинает сильно мешать. Что потенциально можно было бы ...2019-12-11
Так рассуждать, труды автора fmtlib тоже не оправданы. Мол есть printf, он всё делает. Но это не так, очень даже оправданы. Там ...2019-11-13
Использование gdb для распечатки значений в контрольных точках. Демонстрация концепции по ссылке.2019-11-08
Железо нужно симулировать не на уровне битов и фронтов сигналов, а на уровне высокоуровневых операций (например, чтение-запись б...2019-11-07
Спасибо, вообще в документе многие пункты достаточно разумны, я особо подчерку для некоторых здешних читателей:2019-10-30
Когда часть ПО, которая на стыке с железом, замещается на симулятор для ПК и вся программа запускается и отлаживается на ПК. В и...2019-10-02
Для этого не нужен именно ваш прибор, для этого может быть вообще не нужно железо (про "синтетический порт" и Evgeny_CD и я уже ...2019-10-02
От проекта зависит. Насколько чётко выделена аппаратно-зависимая часть и насколько абстракции используемые в старом проекте реал...2019-05-24
Собственно можно код запускать в эмуляторе процессора (qemu), которому привязать симуляцию нужной аппаратуры, или заменить HAL н...2019-02-06
Жалкая паделка финских студентов написана на 100% на C, из ассемблера только вектора прерываний, crt и ещё мелочи, в C30 v3.31. ...2014-04-10
Кто о чем, а вшивый о бане я о кодевеломпенте софта-железа. Итак, пусть у нас есть Tcl, который позволяет прикручивать "в...2012-02-24
Кстати, про синтетические системы и реальное время. Все гораздо интереснее, чем кажется!2007-07-28
fk0, легенда (10.08.2019 12:43, просмотров: 716) ответил Make_Pic на Вид зависания невозможно определить. Очень редкий, вот и хотелось добавить какой то свой обработчик в код, чтобы определить вид и причину.
Помимо прочего при нормальном программировании всегда делается какой-то "логгер" ведущий протокол работы программы. Потому, что когда она грохнется не всегда уже можно понять почему. И этот протокол должен выводиться или в какой-либо интерфейс связи (компорт), или накапливаться в памяти (постоянной, или оперативной, но сохраняемой после перезапуска из-за аварийного завершения). Кроме того, нормальные программисты расставляют ассерты и НЕ ВЫКЛЮЧАЮТ их все в продуктовой прошивке (выключаются только наиболее тяжелые). Потому, что гораздо лучше дело иметь со сработавшим ассертом, что с тихими непонятными глюками. А решать баги в уже выпущенной продуктовой прошивке придётся в любом случае -- программ без ошибок не бывает. Кроме того, какой-либо анализатор кода (начиная с PVS-studio и заканчивая address sanitizer или valgrind) может найти ошибку за программиста и гораздо быстрей. Только для использования динамических анализаторов нужно либо иметь на целевой платформе линукс и дофига свободной памяти, либо уметь собирать из исходников "синтетический порт" на ПК, который и будете анализироваться.
[ZX]