Bipolar Junk Transistor
851 subscribers
784 photos
88 videos
3 files
115 links
Путешествие в эмбед и мемы.

Пишу на C и Elixir, занимаюсь электроникой. Все выраженные здесь мнения - мои собственные.

@portasynthinca3 везде (Telegram, GitHub, Instagram, Discord, ...), https://psi3.ru
Download Telegram
Пришло время напомнить, что это так-то не просто канал с мемами, а блог :)

Я хорошенько отдохнула на майских, у меня снова загорелось желание работать над пет-проектами. Например, надо бы починить вот эту функцию (которой десять месяцев уже): https://github.com/portasynthinca3/boss/blob/ce2a4ec43f780dcd95cf0926b04af54c1ecd5091/src/mem_manager/reloc.rs#L188-L351

Можете даже не читать код, просто прочитайте комментарии внутри неё. Это ужасная функция. Просто отвратительная функция. Что она делает? Редактирует исполняемый код работающего ядра ОС, которое её вызывает. Зачем? Потому что в самом начале проекта мне было лень писать отдельный загрузчик для ОС, который бы эти же самые действия производил до передачи управления ядру, а не во время его работы.

Разумеется, при первом же обновлении компилятора эта хрупкая и мерзкая конструкция обрушилась, из-за чего я забросила проект (а ещё меня тогда взяли на работу, что разумеется важнее чем писать всякие там петы).

Поэтому провожу рефакторинг системы сборки и выделяю загрузчик в отдельный подпроект, как делают во всех остальных ОС и как мне следовало бы сделать с самого начала.
Bipolar Junk Transistor
Пришло время напомнить, что это так-то не просто канал с мемами, а блог :) Я хорошенько отдохнула на майских, у меня снова загорелось желание работать над пет-проектами. Например, надо бы починить вот эту функцию (которой десять месяцев уже): https://git…
Вот, теперь оно работает как должно было работать с самого начала:
1. Запускается загрузчик (boss_boot)
2. Настраивает таблицы памяти как надо
3. Распаковывает два архива в памяти (с ядром и начальным диском)
4. Читает распакованный elf-файл с ядром, располагает его в памяти (КАК СЛЕДУЕТ, а не с патчингом самого себя во время работы)
5. Передаёт, собственно, управление ядру (boss_emu)
6. Пока не реализовано - надо избавиться от загрузчика в памяти
Forwarded from ωvgeny
Печатная плата
Forwarded from Dr Zlo
https://deadlockempire.github.io/
игра, в которой мы играем за планировщик, и наша задача - по шагам выполнять потоки таким образом, чтобы они либо упали, либо одновременно выполнили то, чего одновременно выполнять ни в коем случае не должны
Bipolar Junk Transistor
альтернативная версия мема
альтернативная версия мема yet still
я после очередной игры, в которой героини обречены на ужасную душещипательную смерть, после которой не остаётся ничего кроме как рыдать как последняя сука и идти листать арты где с ними всё хорошо
Хот тейк: если ваш проект на расте не реализует доступ к аппаратному оборудованию (например, ядро ОС или пакет поддержки микроконтроллера) и при этом использует unsafe, вы не должны иметь права орать о ⚡️⚡️⚡️мемори сейфти ⚡️⚡️⚡️. Особенно если unsafe у вас в среднем каждые 170 строчек кода, и особенно если вы пытаетесь заменить уже устоявшийся проект на другом языке, за которым следят другие инструменты автоматизированного поиска уязвимостей и тысячи человеческих глаз.
https://codeguessr.vercel.app/

РЕД.: очень хорошая задумка, но отвратительная реализация. уважаемые веб-разработчики, пожалуйста, сделайте играбельную версию 🙏🙏🙏
А в какой момент на википедии появилась вот такая интерактивная красота?
https://en.wikipedia.org/wiki/RC_circuit#RC_discharge_calculator
Собрала контроллер повышающего DC-DC преобразователя на дискретных компонентах. Нууууу, почти дискретных. 4 операционных усилителя и 2 NOR-а. КПД преобразователя примерно 0% 😁
Пипец. Это 370 тысяч электронов в секунду.