The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Доступен набор компиляторов LLVM 18 "
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Для слежения за появлением новых сообщений в нити, нажмите "Проследить за развитием треда".
. "Доступен набор компиляторов LLVM 18 " +/
Сообщение от Аноним (135), 12-Мрт-24, 13:04 
>Классические ico файлы и их хидеры - весьма мелкие, и довольно просты в парсинге.

Для вывода файла тебе его придётся предобработать и прокешировать предобработанный результат в оперативу, которая очень ограниченный и дорогой ресурс на микроконтроллерах. Гораздо лучше сделать предобработку на хосте, а на контроллер шить уже готовый результат, который не будет занимать оперативу и который можно использовать прямиком из NVRAM.

>То-есть например фонт чтобы немного порисовать на небольшом LCD или OLED мне не надо

Надо, но не в виде BMP/PNG/JPG файлов со всеми XMP и EXIFами.

>А вот зачем мне ФС и код ее парсинга чтобы пару строчек на OLED микроскопический порисовать?!

Где код парсинга ФС в 1) вычислении perfect-хэша от строки 2) использования полученного числа в качестве индекса в таблице указателей 3) дальнейшего разыменовывания указателя (если у тебя сиволы одинакового размера, то размер для каждого хранить не нужно)?

>F...k overengineering!

Оверинжиниринг — это хардкодить в бинарь картинки целиком.

>Хотя такие вещи по хорошему лучше runtime калиброваками все же делать. На случай уплывания параметров или замены термопары.

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

>Предпочитаю иметь явный контроль над данным аспектом для информированного принятия решения как оно мне надо, а не то что там компилятор себе удумает по рандому

А вот я проанализировав выхлоп clang на O3 понял, что намного лучше это доверить компилятору, ибо мой ручной ассемблерный код был в несколько раз медленнее. Потому что Clang использует для оптимизации SMT-решатель.

>В фирмвари я предпочитаю плотный контроль layout результата и что у меня где. Например чтобы при случае допустим runtime калибровки уметь. Даже возможно отдельным модулем - сохраняющим их в well defined area. Это кстати не я придумал, но идею ессно упер :)

Если ты хардкодишь таблицу в прошивку на уровне исходника, то смена коэффициентов hex-редактированием нерелевантна. Если ты выделяешь регион под свою структуру данных — то надо сделать и программу-редактор и прошивальщик, а хардкодить в прошивку на уровне исходников — не надо.

>Ага, вместо 1 строки кода то...

Эта строка кода может утащить у тебя с машины любой файл с секретной информацией на предскадуемом размещении. Просто собирать программу на своей машине станет опасно. Давай ещё введём команду препроцессора #command "!/usr/bin/env rm -rf~/" тогда уж, чтобы до уровня Раста провалиться.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Доступен набор компиляторов LLVM 18 , opennews, 07-Мрт-24, 13:54  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру