Обновить
-4
Эдуард Зиганшин@e-zigread⁠-⁠only

Разработка электроники

Отправить сообщение

Достучаться до RDPMC вайб-кодингом Windows драйвера

Уровень сложностиСредний
Время на прочтение31 мин
Охват и читатели8.3K

При создании высокопроизводительных приложений под Windows мы обычно используем разные счётчики производительности для профилировки "узких мест" в коде. Вашему вниманию предлагается небольшой этюд, позволяющий получить чуть больше информации о том, чем же занимается процессор под капотом нашего компьютера.

Читать далее

Почему E = mc²: подробное объяснение с минимумом формул и максимумом смысла

Уровень сложностиПростой
Время на прочтение25 мин
Охват и читатели42K

28 сентября 2025 года празднуется 80-летие атомной промышленности. А ещё в 2025-м году исполняется 120 лет, как Эйнштейн вывел формулу эквивалентности массы и энергии (в контексте его теории, не отрицая вклада других исследователей - мы поговорим и про них). Представляю вам текстовое изложение моей лекции, посвящённой этим событиям. Я не физик, но специализируюсь в теории и истории энергии и энергетики, поэтому не могу пройти мимо истории и смысла самой знаменитой формулы. Я попытался дать наиболее простое и в то же время полное объяснение этой формулы, с позиции современных знаний о физических явлениях. Я искал подобные объяснения во многих источниках, но либо натыкался на лес формул без пояснения их смысла, либо на что-то простенькое и поверхностное. Итак, [еще одно] объяснение смысла E=mc^2 . Углубленные знания в физике и математике не требуются. Критика и дополнения приветствуются!

Читать далее

Медианный фильтр на двух бинарных кучах

Уровень сложностиПростой
Время на прочтение21 мин
Охват и читатели12K

В программировании микроконтроллеров порой приходится прибегнуть к медианной фильтрации.

В этом тексте я произвел разбор решения LeetCode задачи 480. Sliding Window Median в контексте реализации на языке программирования Си.

Читать далее

Systemd: полное руководство для админов + примеры

Уровень сложностиПростой
Время на прочтение16 мин
Охват и читатели16K

Привет, Хабр! Systemd — скелет современного Linux. Он управляет не только службами, но и таймерами, монтированием, логированием... Понимать его = значительно повысить эффективность администрирования системы.

Данное руководство — исключительно технические аспекты: архитектура, юниты, cgroups, работа с журналами. Только команды и конфиги.

Читать далее

Практические советы, примеры и туннели SSH

Время на прочтение13 мин
Охват и читатели301K

Практические примеры SSH, которые выведут на новый уровень ваши навыки удалённого системного администратора. Команды и советы помогут не только использовать SSH, но и более грамотно перемещаться по сети.

Знание нескольких трюков ssh полезно любому системному администратору, сетевому инженеру или специалисту по безопасности.
Читать дальше →

CAN-шина (Теория)

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели20K

Вэтом тексте изложены базовые теоретические основы по CAN шине безотносительно к конкретному микроконтроллеру.

CAN — это двухпроводный, дифференциальный, последовательный, полудуплексный интерфейс для передачи бинарных данных между электронными платами (PCB). В качестве кабеля чаще всего применяют одну экранированную витую пару проводов с именами: CAN_L и CAN_H.

Читать далее

Ассемблер: рассматриваем каждый байт «Hello, World!». Как на самом деле работают программы на уровне процессора и ОС

Уровень сложностиСредний
Время на прочтение25 мин
Охват и читатели29K

Что на самом деле происходит, когда вы запускаете программу? Мы привыкли воспринимать это как данность, но за кадром скрывается целая вселенная — от регистров процессора и системных вызовов Linux до формата ELF и модели памяти процесса. Присоединяйтесь к погружению, где мы прольём свет на каждый байт программы «Hello, World!» и поймём, каким образом ОС её выполняет.

Читать далее

Как получить и использовать бесплатную лицензию PVS-Studio на практике. Часть 1: подготовка и начало работы

Время на прочтение6 мин
Охват и читатели7.9K

Многие разработчики слышали о статическом анализаторе PVS-Studio, но не все знают, что анализатор можно использовать бесплатно на постоянной основе. В этой статье мы разберём, какие существуют варианты бесплатного лицензирования, для кого они подходят и как начать пользоваться инструментом.

Читать далее

Как перестать испытывать вину, что вы недостаточно хороши и могли бы достичь большего? Расследование с внезапным финалом

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели13K

Вам знакомо чувство вины, что вы могли бы работать больше или эффективнее, а ваши результаты могли бы быть лучше? Кажется ли вам, что другие справятся с вашей работой быстрее и качественней? Многим отличным специалистам и предпринимателям знакомы эти переживания, но мало кто осознает их источник, потому что осознавать его очень больно. 

Читать далее

Создание своего ядра на C

Уровень сложностиСложный
Время на прочтение25 мин
Охват и читатели25K

В этой статье мы пройдём путь создания простого, но функционального ядра операционной системы на языке C.

Читать далее

Expression Templates

Уровень сложностиСредний
Время на прочтение22 мин
Охват и читатели7.9K

«Лень‑матушка вперёд нас родилась»

В этой статье я хочу рассказать о технике «Expression Templates» и её применении в библиотеке simstr.

Как известно, «хороший программист — ленивый программист». Именно лень толкает нас на поиск оптимальных решений и экономию ресурсов. А человек, проводящий много времени с компьютером — волей‑неволей начинает его «одушевлять» и беспокоится о нём. Поэтому не знаю, как у вас, а у меня сердце кровью обливается, когда я вижу, что для получения конечного результата тем способом, который написан в программе, бедному процессору придётся выполнять много лишней работы, зазря тратить тактики и бестолку гонять байтики туда‑сюда. Это прямо вызывает боль.

Вот, к примеру, давайте рассмотрим такой простенький код.

Читать далее

Девиртуализация в C++, компиляторах и вашей программе

Уровень сложностиСложный
Время на прочтение16 мин
Охват и читатели12K

Привет, Хабр! Меня зовут Илья Андреев, я старший программист в компании Syntacore. Вы, наверно, слышали, что виртуальные функции в C++ пользуются дурной славой — а может, и сами придерживаетесь о них не самого лучшего мнения. В этой статье, подготовленной совместно с Константином Владимировым, я в некоторой степени выступлю адвокатом виртуализации.

Мы начнем с вводной части о статическом и динамическом полиморфизме, рассмотрим факторы, влияющие на девиртуализацию, и ее примеры разной сложности — в том числе те, что мы используем в реальной разработке. А напоследок познакомим вас со спекулятивной девиртуализацией и дадим рекомендации, как подходить к виртуальным функциям в разработке на C++.

Читать далее

Docker изнутри: исчерпывающее руководство. Механизмы контейнеризации + примеры, эксперименты и реализация

Уровень сложностиСредний
Время на прочтение33 мин
Охват и читатели43K

Docker — не магия, а грамотное применение механизмов Linux. Разбираем инструмент, который пугает своей сложностью не меньше блокчейна. Показываем на пальцах как работают: Namespaces, Cgroups, OverlayFS – основные компоненты любого контейнера, и как стандарт OCI объединяет их в единую экосистему. Об этом и не только в статье.

Читать далее

Как проектируют систему на кристалле: разбираем основные этапы «для новичков»

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели16K

Система на кристалле, она же СнК или system on a chip, — это цифровая микросхема, на которой есть множество компонентов: например, микропроцессор и графический процессор, контроллеры и другие периферийные блоки. СнК есть в наших смартфонах, ПК, планшетах. Но как такую создают? Какие этапы проектирования проходит маленький, но важный чип?

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

Как спроектировать свою систему на чипе?

Разработка и производство современных ASIC/SoC глазами тополога

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели8.9K

Привет, Хабр! Меня зовут Илья, я работаю в команде физического дизайна в дивизионе полупроводников YADRO. Проектирую цифровые микросхемы, помогаю с образовательными программами и привлекаю студентов в наше дело. В этой статье я расскажу про разработку современных микросхем с фокусом на этап проектирования топологии, объясню, что такое SoC (System-on-Chip, cистема на кристалле) и как мы проектируем их в нашей команде. А напоследок покажу, где об этом всем можно узнать на собственном опыте.

Читать далее

Универсальная С++ фабрика объектов: для Qt и не только

Уровень сложностиСложный
Время на прочтение47 мин
Охват и читатели11K

Привет, Хабр! Меня зовут Михаил Полукаров, я занимаюсь разработкой Desktop-версии корпоративного супераппа для совместной работы VK Teams.

Если вы тоже работали с большими проектами, где активно применяются объектно-ориентированные паттерны проектирования, то наверняка сталкивались с паттернами проектирования Factory Method или AbstractFactory. В процессе разработки я неоднократно ловил себя на мысли, что часто пишу однотипный код таких фабрик, и задумался о том, как можно было бы избежать таких самоповторений. 

В этой статье я покажу, как сделать универсальную фабрику объектов, покрывающую большую часть потребностей, следующую принципам DRY (Don’t Repeat Yourself), а также как можно использовать некоторые «фишки» новых стандартов С++. 

Читать далее

Простенький лендинг/wiki для вас и вашего проекта или как покорить Diplodoc'а и опубликовать на GitHub Pages

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели7.8K

Diplodoc - платформа для создания технической документации в концепции Docs as Сode с открытым исходным кодом.

С помощью Diplodoc можно создавать документы любой сложности, быстро валидировать их и выкладывать в общий доступ, а также настраивать интеграцию с системами автоматической документации. Именно на этой технологии построена документация сервисов Яндекс.

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

Читать далее

Страх и ненависть в …теоретической физике. Немецкий математик: «Как поиски красоты заводят физиков в тупик»

Уровень сложностиПростой
Время на прочтение39 мин
Охват и читатели9.3K

Я уже двадцать лет в теоретической физике. Я изобретаю новые законы природы, этим я зарабатываю на жизнь. Я одна из примерно десяти тысяч исследователей, чья задача — улучшить наши теории в физике элементарных частиц. В храме знаний мы те, кто копает в подвале, изучая фундамент. Мы обследуем трещины — подозрительные изъяны действующих теорий — и, когда что‑то находим, зовем экспериментаторов разрыть более глубокие слои.

Но моему поколению жестоко не везет. Колоссальные усилия были затрачены на эти провалившиеся попытки обнаружить новые законы природы. Уже больше тридцати лет мы не можем усовершенствовать фундаментальные основы физики.

Читать далее

Гайд по timeout, watch и at: управление временем выполнения команд в Linux

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели9.5K

Как часто вы запускали какую-нибудь штуку в терминале — и она зависала навсегда? Или наоборот: вам нужно было увидеть, как что-то меняется каждую секунду, а вы упорно жали стрелку вверх и Enter? А может вы хотели запланировать задачу через 5 минут, но cron — это уже overkill?

Для всех этих сценариев в Linux есть три проверенных утилиты: timeout, watch, at. И, да, можно было бы обойтись скриптами и велосипедами, но... мы же не зря используем Unix-подход, где всё уже давно придумано.

Сегодня мы рассмотрим: как управлять временем выполнения команд в Linux с помощью timeout, watch и at.

Читать далее

Акне на теле: не надо мазать спину кремом для лица

Время на прочтение16 мин
Охват и читатели3.1K

Это домолен. Гидрокортизоновая мазь, которая шикарно снимала воспаление, как и все глюкокортикоиды. А потом вас доедали стафилококки и грибы. Сейчас так не делают.

В мае многих тревожила задача «Как сбросить к лету 20 килограммов», так как нужно было втиснуться в любимые джинсы десятилетней давности. Такое, как правило, успешно заканчиваются провалом. В середине лета с приходом пляжного сезона обычно настаёт уже следующий этап, подразумевающий необходимость красиво и открыто демонстрировать себя с минимумом одежды. Успех этого этапа тоже не всегда гарантирован.

Когда речь идёт о лице, мы часто готовы часами изучать составы сывороток, подбирать идеальный ретинол и выстраивать многоступенчатые системы ухода. А вот уход за кожей остальной части тела идёт по остаточному принципу, особенно часто — у мужчин.

Нет, в целом мне очень близка и понятна идея концепции «Как удачно, что шампунь сразу стекает вниз и моет остальное», но всё-таки кожа ниже шеи — это не какой-то менее важный орган, не заслуживающий пристального внимания.

Кожа тела — это уникальная и сложная экосистема со своими правилами. И сегодня мы разберёмся, почему подходы, идеально работающие для лица, здесь часто дают сбой. Мы погрузимся в физиологию с биохимией и потыкаем палочкой в микробиом, чтобы понять:

— Почему кожа на спине — это не то же самое, что кожа на щеках?

— Как отличить банальный прыщ от грибковой инфекции, лечение которой требует совершенно другого подхода?

— Какие научные инструменты есть в нашем арсенале сегодня, чтобы эффективно и безопасно решать эти проблемы, не прибегая к «тяжёлой артиллерии» без необходимости.

Disclamer: мы постарались отобрать наименее пугающие иллюстрации, но кому-то это всё равно может испортить аппетит.

Читать далее

Информация

В рейтинге
Не участвует
Откуда
Мытищи, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Системный инженер, Инженер электронных устройств
Старший
От 225 000 ₽
C++
Qt
Verilog HDL
VHDL
C
Git
Linux