К сожалению, в наше время многие старые, но весьма неплохие по характеристикам гаджеты отправляются напрямую в помойку, и их владельцы не подозревают, что им можно найти применение. Сервер, мультимедийная-станция, да даже просто как TV-приставка — люди в упор не замечают сфер, где старенький планшет мог бы быть полезен. Но как быть, если посвящаешь жизнь портативным гаджетам, кодингу и копанию в железе? Правильно: сделать довольно мощную игровую консоль из старого планшета самому! Сегодня вам расскажу, как я сделал свою портативную приставку из планшета с нерабочим тачскрином, Raspberry Pi Pico и 8 кнопок! За рабочим результатом прячется несколько дней работы: поиск UART на плате, разработка контроллера геймпада на базе RPi Pico, написание приложения-сервиса, которое слушает события и отправляет их в подсистему ввода Linux в обход Android. Интересно? Тогда жду вас под катом!Читать полностью »
Рубрика «C» - 6
Mojo: Python-совместимый язык с производительностью Си — от Криса Лэттнера
2023-05-10 в 20:06, admin, рубрики: C, python, python3, новый язык программирования, язык программирования2 мая 2023 года Modular (одна из компаний-лидеров в сфере AI-инфраструктуры) анонсировала язык программирования Mojo, обещающий полную совместимость с Python в сочетании со сверх-высокой производительностью.
В компании утверждают, что автоматическое низкоуровневое распараллеливание, возможности строгой типизации и статической компиляции уже на самых ранних этапах развития языка позволяют достичь скорости, превосходящей Python в 35 000 раз!
Так что это за чудо-язык такой, правда ли он заменит Python — да и где его пощупать можно?
Давайте разбираться!
Читать полностью »
Язык Umka 1.0 и игровой фреймворк Tophat
2023-05-01 в 13:49, admin, рубрики: 2D-движок, C, игровой движок, интерпретатор, компилятор, Компиляторы, разработка игр
После трёх лет неторопливой разработки вышла версия 1.0 моего скриптового языка UmkaЧитать полностью »
Загоняем Альпаку на Эльбрус (Часть 2. Оптимизации)
2023-04-30 в 10:31, admin, рубрики: alpaca, C, gpt, llama, искусственный интеллект, Эльбрус, эльбрус-16с, эльбрус-8свЧто нового
В прошлой статье я писал о запуске Alpaca на Эльбрусе. На момент написания той статьи оптимизации под Эльбрус не проводились. Однако теперь, благодаря стараниям @troosh можем протестировать Эльбрус уже с оптимизациями. ВНИМАНИЕ! Проект llama.cpp обновляется очень часто, и многое меняется. На данный момент это самая актуальная версия llama.cpp под Эльбрус.
И сразу тесты
В прошлой статье я уже описал что делал. Поэтому тут я сразу начну с тестов.
Очередной драйвер SPI флэшек… Но уже с кэшем и «нормальным» api
2023-04-23 в 10:18, admin, рубрики: C, Алгоритмы, Драйвер, кэширование данных, ни кто не читает тэги, оптимизации, программирование микроконтроллеров, Электроника для начинающихПрочитал на хабре кучу простых, и даже очень, статеек на тему программирования микроконтроллеров, тоже решил добавить что-то простое, понятное, но чуть более полезное.
Да простят меня бывалые разработчики за сей труд, да и хейтеры пусть прощают тоже
О чём пойдет речь
Будем размышлять и пытаться писать быстрый драйвер флешки и при этом попробуем сэкономить её ресурс при перезаписях.
Предыстория и проблемы возможных реализаций
Понадобилась SPI флэшка для хранения данных, которыми оперирует встраиваемое ПО микроконтроллера. Типовая задача, если не хватает места внутри основного чипа.
Загоняем Альпаку на Эльбрус
2023-04-17 в 6:16, admin, рубрики: alpaca, C, llama, искусственный интеллект, Эльбрус, эльбрус-16с, эльбрус-8свДумаю уже все слышали об Alpaca - аналоге chatGPT, которую можно запустить локально на процессоре. И раз есть такая возможность почему бы не сделать это на Эльбрусе?!
На чем тестировалось
Я решил сравнить три процессора: Эльбрус 8СВ на сервере sumeriko(Доступ можно получить по ссылке), Эльбрус-16С(Спасибо Михаилу Шигорину, у него как раз имеется инженерный образец данного процессора) и Ryzen 7 5800H.
Что было сделано
Я не стал придумывать велосипед и скачал llama.cpp Читать полностью »
Компактный make для STM32 с USB
2023-03-26 в 9:03, admin, рубрики: C, usb геймпад, программирование микроконтроллеров, Разработка под LinuxОбзор
Как закалялась сталь современной симметричной криптографии. Глава 1. Классическая криптография
2023-03-19 в 13:33, admin, рубрики: C, информационная безопасность, история, классическая криптография, криптография, Программирование, шифры, язык сиВведение
Программная реализация шифровальной машины «Энигма» на языке Си
2023-03-12 в 8:26, admin, рубрики: C, информационная безопасность, криптография, Программирование, шифровальная машина, шифрование, Энигма, язык сиВведение
KVM: Что такое Kernel-based Virtual Machine?
2023-03-10 в 16:20, admin, рубрики: C, kvm, qemu-kvm, vt-x, аппаратная виртуализация, виртуализация, виртуальные машины, Программирование, Разработка под Linux, системное программирование
Начнем с простого вопроса:
Что означает QEMU/KVM или QEMU-KVM?
Можно ответить - это QEMU + KVM или qemu-system, запущенный с kvm в качестве ускорителя. Но в какой-то степени это еще и анахронизм, так как с появлением KVM его разработчики для интеграции с QEMU поддерживали отдельный форк qemu-kvm, но начиная с QEMU версии 1.3Читать полностью »