All streams
Search
Write a publication
Pull to refresh
343
64.9
Владимир @Firemoon

Пользователь

Send message

Низкоуровневое обнаружение Wi-Fi устройств в домашней сети

Reading time10 min
Views25K

Чтобы сделать собственное уникальное устройство для «умного дома» сейчас достаточно купить микроконтроллер и электронные компоненты. Конечно, на рынке уже есть множество «умных» устройств, но не все производители предоставляют открытое API, и уж точно единицы разрешают (или по крайней мере не запрещают) создавать собственные прошивки. Иногда наступает тот момент, когда кажется, что разработать и запрограммировать собственное устройство будет лучшим решением.

В этой статье я расскажу про несколько способов «‎научить» микроконтроллер распознавать присутствие людей дома исключительно с помощью Wi-Fi.
Читать дальше →

Возможности интеграции Counter-Strike: Global Offensive

Reading time9 min
Views16K
Image by andytb under license CC BY-SA 2.0
Counter-Strike: Global Offensive — современная версия старой доброй «CS 1.6». За двадцать лет развития серии технологии сильно изменились. Ранее соревнования по CS проходили в конференц-залах, а информация, доступная наблюдателю, была крайне скудна. Сейчас крупные соревнования по Counter-Strike проводятся на огромных стадионах, а количество выводимой на экраны информации зашкаливает.

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

Разбираем редкого зверя от Nvidia — DGX A100

Reading time7 min
Views41K

Крупные IT-компании располагают дорогими «игрушками», которые скрыты от взоров большинства пользователей. Сегодня мы приоткроем завесу тайны и расскажем про систему, которая оптимизирована для работы с искусственным интеллектом.

Задачи ИИ предъявляют высокие требования к вычислительным и сетевым ресурсам, поэтому наш сегодняшний «гость» приятно порадует своей конфигурацией. Встречайте: NVIDIA DGX A100.
Читать дальше →

Et tu, Brute? Что хотят от нас брутфорсеры?

Reading time16 min
Views19K

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

Поверхностный ответ, конечно, прост: наживы на бесплатных вычислительных ресурсах и полученных чувствительных данных. Но этот ответ недостаточно подробный. Давайте разложим виртуальные «приманки» и проследим, что происходит, когда автоматический брутфорс оказывается успешным.
Читать дальше →

Введение в SSD. Часть 5. Контроллерная

Reading time9 min
Views19K

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

Контроллер современного накопителя — маленький компьютер, который принимает стандартизированные команды и выполняет соответствующие действия с подконтрольным ему хранилищем. При этом внутреннее устройство контроллера может быть любым.
Читать дальше →

NVIDIA BlueField 2: Эмуляция NVMe

Reading time8 min
Views14K
Источник изображения: NVIDIA
Крупнейшие облачные провайдеры подключают виртуальные накопители к выделенным физическим серверам. Но если заглянуть в ОС сервера, то там будет физический диск с именем провайдера в поле «производитель». Сегодня мы разберем, как это возможно.
Читать дальше →

Какой предел у предсказателя ветвлений? Проверили на x86 и M1

Reading time13 min
Views36K

Некоторое время назад я смотрел на высоконагруженную часть кода и обратил внимание на это:

if (debug) {
    log("...");
}

И тут я задумался. Это — часть цикла, от которого требуется высокая производительность, но этот фрагмент выглядит как пустая трата времени, ведь мы никогда не устанавливаем флаг отладки. Нормально ли иметь в коде условные операторы, которые никогда не выполняются? Уверен, это влияет на производительность программы…
Читать дальше →

ARMv9: в чем преимущество?

Reading time18 min
Views33K

Что такое масштабируемые векторные расширения (Scalable Vector Extension)? Что они значат для индустрии и пользователей?

Если вы пользуетесь мобильным телефоном, то скорее вы знаете, что такое процессор ARM. Он является сердцем вашего смартфона, а недавно появился в новом поколении Mac. Процессоры ARM также появляются в серверах.

Мы находимся на пороге серьезных изменений в индустрии, которых не происходило уже несколько десятилетий. x86 доминирует в компьютерной индустрии уже продолжительное время, но активное развитие ARM, вероятно, станет серьезной проблемой для x86.

В этом году ARM выпустила архитектуру следующего поколения, которая задаст курс отрасли на следующее десятилетие, — ARMv9. Это важное событие, которое заслуживает пристального внимания.
Читать дальше →

Что общего в работе заводского конвейера и микропроцессора?

Reading time8 min
Views4.5K

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

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

По сути перед нами задача увеличения количества выполненной работы за ограниченный промежуток времени. Существует несколько решений. Я расскажу про различные подходы, чтобы объяснить, как разработчики микропроцессоров пришли к конвейеризации.
Читать дальше →

Как установить Ubuntu на Apple M1 и ничего не сломать

Reading time6 min
Views67K

Команда разработчиков Corellium выпустила порт Ubuntu на Mac Mini с процессором Apple M1. Публикации по теме рассказывают только про успех умельцев, но не раскрывают подробности. Я решил на собственном опыте проверить, как установить и использовать Ubuntu на Mac Mini, и описал все существующие подводные камни.
Читать дальше →

Mac Mini на M1: взгляд изнутри

Reading time4 min
Views52K

Ранее мы говорили про Mac Mini в дата-центрах. В этой статье мы заглянем «под капот» новейшего mac на базе SoC M1 в прямом и переносном смыслах.

Как известно, гостей встречают по одежке. Наш сегодняшний гость, новый Mac Mini, минимально отличается от своего предшественника 2018 года. Первое отличие заключается в предоставляемых интерфейсах ThunderBolt. Старое поколение имеет 4 порта, а новое — всего 2. Второе заметное отличие касается окраса Mac Mini. Устройства с процессорами Intel поставляются в цвете Space Gray, а c M1 — в цвете Silver.
Читать дальше →

Что означает RISC и CISC?

Reading time21 min
Views183K

Многие говорят, что разница между RISC и CISC стала несущественной. Так ли это? И если нет, то в чем разница между современными RISC и CISC процессорами?

Компания Apple выпустила процессор Apple Silicon M1, который произвел фурор. Теперь вы можете задаться вопросом, чем он отличается от процессоров Intel и AMD? Вероятно, вы слышали, что M1 — процессор с архитектурой ARM, а ARM — это RISC, в отличие от Intel и AMD.

Если вы читали про разницу между микропроцессорами RISC и CISC, то вы знаете, что множество людей утверждают об отсутствии практической разницы между ними в современном мире. Но так ли это на самом деле?
Читать дальше →

Mac в дата-центрах

Reading time3 min
Views11K

Недавно компания Apple представила Mac с процессорами Apple Silicon M1, которые произвели настоящий фурор. Мы решили изучить, как «домашний» Mac может поселиться в дата-центрах.

Праздник к нам приходит: проектируем и программируем световое шоу в xLights

Reading time8 min
Views7.2K

Ранее мы рассказывали про историю протоколов управления световым оборудованием. Настало время сделать свое шоу!

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

Ёлочка, гори! История систем управления световым оборудованием от панк-рейвов до наших дней

Reading time7 min
Views5.7K
Источник

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

На сегодняшний день для создания светового шоу не требуются большие помещения и дорогое промышленное оборудование, достаточно иметь микроконтроллеры и светодиодные ленты. Тем не менее, так было не всегда. В этой статье расскажем о краткой истории эволюции систем для создания световых шоу с зарождения и до наших дней.
Читать дальше →

Head-of-Line Blocking в QUIC и HTTP/3: Подробности

Reading time28 min
Views12K

Как вы могли слышать, после четырех лет разработки протоколы HTTP/3 и QUIC приблизились к официальной стандартизации. Предварительные версии уже доступны для тестирования на серверах и браузерах.

HTTP/3 обещает значительный прирост производительности по сравнению с HTTP/2, в основном благодаря смене транспортного протокола с TCP на QUIC over UDP. В этой статье мы подробно рассмотрим только одно улучшение, а именно — устранение проблемы блокировки начала очереди (Head-of-Line blocking, HOL blocking). Это будет полезно, так как я прочитал много заблуждений о том, насколько это решение полезно и как оно помогает на практике. Решение HOL blocking было основным мотивом не только HTTP/3 и QUIC, но и HTTP/2, и это дает фантастическое представление о причинах эволюции протокола.

Я расскажу о проблеме и ее формах на фоне истории протокола HTTP. Рассмотрим, как эта проблема влияет на системы приоритизации и контроля перегрузки сети. Цель данной статьи — помочь людям сделать правильные выводы об улучшении производительности в HTTP/3, которые (спойлер!) не всегда так хороши, как пишут в маркетинговых материалах.
Читать дальше →

Краткое руководство по управлению питанием процессора

Reading time14 min
Views87K

Как центральный процессор может сокращать собственное энергопотребление? Основы этого процесса — в статье.

Центральный процессор (CPU) спроектирован на бесконечно долгую работу при определенной нагрузке. Практически никто не проводит вычисления круглые сутки, поэтому большую часть времени он не работает на расчетном максимуме. Тогда какой смысл держать его включенным на полную мощность? Здесь стоит задуматься об управлении питанием процессора. Эта тема включает в себя оперативную память, графические ускорители и так далее, но я собираюсь рассказать только про CPU.

Если вы знаете про C-состояния (C-states), P-состояния (P-states) и то, как процессор переходит между ними, то, возможно, в этой статье вы не увидите ничего нового. Если это не так, продолжайте читать.
Читать дальше →

RAID-массивы на NVMe

Reading time7 min
Views79K

В данной статье мы расскажем про разные способы организации RAID-массивов, а также покажем один из первых аппаратных RAID-контроллеров с поддержкой NVMe.

Все разнообразие применений технологии RAID встречается в серверном сегменте. В клиентском сегменте чаще всего используется исключительно программный RAID0 или RAID1 на два диска.

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

VMware ESXi на Raspberry Pi

Reading time7 min
Views16K

Ранее мы рассказывали, что VMware ESXi стала доступна для Raspberry Pi. В данной статье мы рассмотрим установку гипервизора и запуск гостевой ОС на Raspberry PI 4 Model B.
Читать дальше →

Почему мой NVMe медленнее SSD?

Reading time5 min
Views26K

В данной статье мы рассмотрим некоторые нюансы подсистемы ввода-вывода и их влияние на производительность.

Пару недель назад я столкнулся с вопросом, почему NVMe на одном сервере медленнее, чем SATA на другом. Посмотрел в характеристики серверов и понял, что это был вопрос с подвохом: NVMe был из пользовательского сегмента, а SSD — из серверного.

Очевидно, что сравнивать продукты из разных сегментов в разном окружении некорректно, но это не является исчерпывающим техническим ответом. Изучим основы, проведем эксперименты и дадим ответ на поставленный вопрос.
Читать дальше →

Information

Rating
108-th
Location
Челябинск, Челябинская обл., Россия
Works in
Date of birth
Registered
Activity

Specialization

Backend Developer
Middle
Python
Flask
SQLalchemy
Bash
C