Высокопроизводительная библиотека журналов для встроенных приложений - PullRequest
3 голосов
/ 01 октября 2010

Я ищу высокопроизводительную библиотеку журналов, которую я буду использовать на встроенном устройстве.

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

[Под эффективностью я подразумевал, что у нее есть решение для передачи только __LINE__ и __FILE__ при отправке данных через низкоскоростной интерфейс (например, SERIAL) - конечно, __LINE____FILE__ Сопоставление ранее было выполнено путем сканирования кода].

Знаете ли вы такие решения или хотя бы похожие?

Заранее спасибо за любые указатели / похожие решения,

Юлиан

Ответы [ 2 ]

2 голосов
/ 19 октября 2010

Решение заключается в том, чтобы реализовать это, поскольку открытых альтернатив нет.

0 голосов
/ 13 октября 2010

Лучше всего использовать ту же библиотеку журналов, о которой вы упомянули, но с кодами, специфичными для ОС (например, номер строки, имя файла, последовательная связь), отдельно от логического кода. Специфичный для ОС код должен содержаться в функциях или макросах, а затем вызываться из логического кода.

Пример:

#OS_LINE   _LINE_
#OS_FILE   _FILE_
#OS_SEND(a) Send(a)

int log(void)
{
   char msg[50];
   sprintf(msg, "line %i, %s", OS_LINE, OS_FILE);
   OS_SEND(msg);
   return 0;
}

При этом вы можете повторно использовать библиотеку, просто изменяя макросы, специфичные для ОС, для каждого устройства.

...