All streams
Search
Write a publication
Pull to refresh
39
0
antonwork @antonwork

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

Send message

Все, что нужно знать о домашних 3D-принтерах: сколько стоит, как выбирать, нюансы использования, зачем нужен

Level of difficultyEasy
Reading time13 min
Views31K

Если вы подумываете о покупке своего первого 3D-принтера, но ничего о них не знаете и не понимаете, с чего начать выбор, эта статья для вас.

Привет, Хабр! Я Денис Воденеев, директор отделения автоматизированного тестирования в IBS. Увлекаюсь 3D-печатью уже 5 лет — первый принтер купил в 2019 году.

В этой статье расскажу о том, какие бывают 3D-принтеры, как их выбирать, сколько они стоят, какие нужны расходники, и о многом другом, что надо знать перед покупкой своего первого принтера.

Читать далее

Аппаратное кодирование HEVC в FFmpeg — как быстро вникнуть и начать уже сейчас?

Level of difficultyMedium
Reading time8 min
Views16K

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

Буду рассматривать аппаратные кодеки Nvidia, AMD и Intel.
Читать дальше →

Наше расследование: Блогеры и все все все… Часть 2

Reading time7 min
Views40K

Прошлая наша статья, где мы задали несколько вопросов блогеру IMAXAI (он же Максим Горшенин) почему-то была им оставлена без должного внимания. Мы предположили, что Максима опять все обманули, и его лучшие друзья, которые "все разработали сами", на самом деле не такие уж и "все сами", а всего лишь в шелкографии китайской платы нарисовали свой бренд. Так как Максим почему-то не захотел во имя "импортозамещения" задать наши неудобные вопросы своим друзьям, то у нас появились теперь вопросы к самому Максиму. Является ли целью его деятельности действительное импортозамещение, или же просто из меркантильных целей, на волне хайпа и эпатажа, он продвигает тех кто с ним сотрудничает и топит других, кто отказался от его предложений? И что будет если те кого он так истово возносит на пьедестал импортозамещения окажутся обычными продвинутыми "переклейщиками шильдиков"? Интересно? Ну что же, сегодня мы поближе рассмотрим очередного друга блогера - компанию GS Group, чьей продукцией наш подопечный, кстати, приторговывает на своем сайте.

Читать далее

Дайте мне 15 минут, и я изменю ваш взгляд на GDB

Level of difficultyMedium
Reading time6 min
Views20K

Материал подготовлен на основе выступления с CppCon 2015 "Greg Law: Give me 15 minutes & I'll change your view of GDB" (доступно по ссылке ). Многие моменты я изменял и корректировал, поэтому учтите, что перевод достаточно вольный.

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

В статье будет рассматриваться отладка кода на C в ОС Linux.

Читать далее

Почему MMAP не лучший выход

Level of difficultyMedium
Reading time23 min
Views10K

Доступ к файлам через отображение-в-память (mmap) — это способность некоторых операционных систем отобразить содержимое какого-либо файла в адресное пространство программы. Сама программа получает доступ к содержимому файла через указатели, как если бы сам файл был бы целиком загружен в оперативную память. Операционная система прозрачно загружает части файла в оперативную память, и автоматически выгружает их, когда памяти не хватает.


MMAP захватила умы программистов СУБД на многие десятилетия, как альтернатива буферу данных. И вот здесь следует отметить, что в mmap имеются серьёзные проблемы с корректностью и скоростью работы с данными в современных СУБД. В реальности, некоторые известные СУБД сперва использовали mmap для работы с "больше-чем-вмещается-в-память" базами данных, но вскоре обнаружили эти скрытые ограничения, которые принудили их к самостоятельному управлению файловым вводом/выводом, после заметных трат на инженерные исследования. В этом смысле mmap и СУБД подобны сочетанию кофе и острой пищи: неудачное сочетание, которое не очевидно, пока сам не попробуешь.


Покуда разработчики по прежнему пытаются использовать mmap в новых СУБД, мы написали эту статью, чтобы предупредить остальных, что mmap это не подходящая замена привычному буферу. Далее мы обсудим основные недостатки mmap, а также покажем явные ограничения производительности, которые мы обнаружили в наших экспериментах. На основании этих находок мы поделимся рецептами, когда разработчикам СУБД следует избегать mmap для реализации файлового ввода/вывода.

Читать дальше →

Разглядывая JTAG: самый быстрый программный JTAG на Arduino

Level of difficultyMedium
Reading time26 min
Views13K

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

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

Субъективно, практическое применение программного JTAG мне по‑прежнему видится не вполне оправданным.
Но, во‑первых, это хороший повод рассмотреть предельные возможности микроконтроллеров.
А во‑вторых, есть формальная причина сказать, что в данной статье предлагается Решение Прикладной Задачи :)

Итак, сегодня мы поговорим про прерывания, поллинг и прочее. А протокол JTAG станет фоном для повествования.

jmp start

Цивилизация Пружин, 1/5

Reading time14 min
Views117K
### Часть 1. Золотое «Ку»

Лет в шесть мне попался в руки дедовский справочник[50] по грузовым автомобилям середины 20-го века. Добротный, напечатанный на гладкой плотной бумаге раритет. Единственное, что вообще осталось на память от деда после распада страны, войн и переездов.



В справочнике содержалось множество интересных ТТХ, так что слово «грузоподъёмность» стало мне знакомо с раннего детства. И когда отец на прогулке упомянул, что любой грузовик весит столько же, сколько увозит сам, я это запомнил. Запомнил и, много позже, заинтересовался.

Отец был прав. Для грузовиков 60-х годов это правило выполняется с довольно удивительной точностью:

Читать дальше →

Ретроспектива развития тягового привода железнодорожных экипажей

Reading time13 min
Views17K

Формальной причиной появления этой статьи стала недавняя замечательная публикация "Электрический путь в век скоростей" в которой автор изложил исторические факты о первых, весьма не робких, шагах в развитии высокоскоростного железнодорожного сообщения, предпринятых в Германии в конце XIX начале XX века. Мне, как человеку некоторым образом связанному с железнодорожным транспортом, упомянутая статья понравилась тем, что она осветила, пусть и в публицистической форме, историю первого применения асинхронного двигателя в качестве тягового двигателя железнодорожного экипажа. Впечатляет и масштаб рекорда скорости, достигнутого электровагоном AEG - ведь, на минуточку, дело было в 1903 году! Такой успех технически во многом обусловлен применением именно бесколлекторного двигателя переменного тока.

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

Читать далее

Взгляд компьютерным зрением на работу коммунальных служб

Level of difficultyMedium
Reading time8 min
Views11K

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

Пошагали

Почему Starlink от Маска — это скам

Reading time15 min
Views204K


В тоннелях Boring Company, построенных, чтобы не было пробок, теперь пробки. Cybertruck не поедет до 2023 года Но все это мелкие проблемы по сравнению с тем, чем обещает стать Starlink. Это главный проект Илона Маска, который должен спонсировать SpaceX, и собрать достаточно денег, чтобы обеспечить полет на Марс. Но он может стать и самой большой ошибкой.


1500 спутников уже запущены и работают, 145 000 пользователей в США и Канаде уже довольны своим интернетом. Тем не менее верить в успех этого проекта, скорее всего, преждевременно. И даже более того: возможно, нам будет лучше, чтобы это будущее никогда не наступило.


Осторожно, в тексте много цифр. И, если вы продолжаете верить в Starlink, он может вас сильно разочаровать.

Читать дальше →

Концепция умного указателя static_ptr<T> в C++

Reading time11 min
Views18K

В C++ есть несколько "умных указателей" - std::unique_ptr, std::shared_ptr, std::weak_ptr. Также есть более нестандартные умные указатели, например в boost: intrusive_ptr, local_shared_ptr.

В этой статье мы рассмотрим новый вид умного указателя, который можно назвать static_ptr. Больше всего он похож на std::unique_ptr без динамической аллокации памяти.

Читать далее

Экстремальная настройка производительности HTTP: 1,2M API RPS на инстансе EC2 с 4 виртуальными процессорами (vCPU)

Reading time54 min
Views19K

Прим. перев.: автор данного исследования — Marc Richards, Solutions Architect и DevOps-инженер — продемонстрировал потрясающую настойчивость и тщательность в тотальной оптимизации производительности веб-приложения. Получившийся материал — кладезь полезных знаний для расширения своего кругозора в области оптимизации, особенностей сетевого стека в Linux и не только, даже вне зависимости от практической заинтересованности в конечном результате автора. Приготовьтесь к по-настоящему длинному техническому путешествию с обилием терминологии, увлекательных графиков и полезных ссылок.

Читать далее

Домашняя масляная майнинг-ферма

Reading time21 min
Views66K

Это история одного моего хобби-проекта - создания встроенной в интерьер майнинг-фермы с видеокартами в масле, которая своим теплом отапливает лоджию.

Читать далее

Нейронная сеть считает лес кругляк и распознает автомобильные номера. Как это сделано?

Level of difficultyMedium
Reading time9 min
Views17K

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

Необходимая подготовка читателя — должно быть общее представление о компьютерном зрении (computer vision) и нейронных сетях. Здесь не будет описаний, что такое сверточная нейронная сеть и т.п., статей по таким основам найдете много на хабре (вот хорошая Глубокое обучение для новичков: распознаем изображения с помощью сверточных сетей). В то же время, совсем новички могут получить представление, какие знания и компетенции нужны для решения подобных задач.

Читать далее

Внутренности SDR чипа AD9361 — когда микроэлектроника выгоднее наркоторговли

Reading time5 min
Views63K
Когда в 2013 году Analog Devices выпустила SDR трансивер AD9361 — случилась настоящая революция в цифровой радиосвязи. SDR были и раньше, но теперь в одном чипе можно было получить все: 2 канала на прием и 2 на передачу (с набортными 12-бит ЦАП и АЦП) с шириной канала до 56МГц, локальные генераторы и радиотракт — для работы в диапазоне от 70 (на передачу от 47) до 6000Мгц. На AD9361 «из коробки» можно реализовать почти любой цифровой приемопередатчик, за исключением наверное только UWB и начинающего набирать популярность диапазона 60ГГц (но там без аппаратной многоэлементной ФАР все равно делать почти нечего). Остается лишь добавить источник/приемник данных (пока это обычно FPGA), внешние фильтры и LNA/PA, если задача того требует.

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

Читать дальше →

Самодельный измеритель крена и дифферента корабля

Reading time4 min
Views9K


Одним из приборов, необходимых на различных судах, является кренометр-дифферентометр. Нужен он для того, чтобы знать, как именно качается судно, и не пора ли что-то предпринять для уменьшения этой качки (ну или сделать вовремя ноги с корабля, уподобившись корабельной крысе). Разработка таких устройств довольно редкая задача, но я с ней всё-таки столкнулся, и решил попробовать сделать свою реализацию прототипа такого кренодифферентометра. Под катом я предложу вам вариант изготовления такого электронного кренометра-дифферентометра, как я сейчас вижу его возможную реализацию.
Читать дальше →

Делаем встраиваемый полифункциональный зарядник

Reading time15 min
Views24K

Попытаемся сделать зарядник 300 Вт с КПД 99% из тех деталей которые еще остались в стоках интернет-продавцов. Продумаем архитектуру. Cоздадим схему. Проведем симуляцию в LTSpice и Microcap. Научимся технологии оптимизации в симуляторе. Найдем применение методу Monte Carlo. Посмотрим на трассировку. Попробуем сравнительно новую фишку Altium Designer - PDN Analyzer.

Читать далее

Препарируем дельфина: что внутри у Flipper Zero

Reading time12 min
Views47K
Для того, чтобы эффективно разрабатывать под Flipper, надо не только понимать, как писать код, но и понимать, что внутри у него.

На «больших» компьютерах есть куча уровней абстракции и аппаратных средств сделать жизнь пользователя и разработчика проще. В итоге, даже если вы пишете на голом С, вас все равно не волнует как конкретно по PCI передается информация, как работает система питания процессора и какая там микросхема используется для хранения BIOS/UEFI.



Тут все не так, слишком уж близко к железу происходит разработка. Статья — это краткий экскурс в то, как устроен Flipper с железной точки зрения. Поехали.
Читать дальше →

Web-приложение на C/C++ с помощью FastCGI — это просто

Reading time20 min
Views119K
Добрый день.
В этой статье я бы хотел рассказать про протокол FastCGI и способы работы с ним. Не смотря на то, что сам протокол и его реализация появились ещё в 1996 году, подробных руководств по этому протоколу просто нет — разработчики так и не написали справки к собственной библиотеке. Зато года два назад, когда я только начал пользоваться этим протоколом, часто встречались фразы типа «я не совсем понимаю, как пользоваться этой библиотекой». Именно этот недостаток я и хочу исправить — написать подробное руководство по использованию данного протокола в многопоточной программе и рекомендации по выбору различных параметров, которым могли бы воспользоваться все желающие.
Читать дальше →

Information

Rating
Does not participate
Location
Trento, Trentino Alto Adige - Trento, Италия
Date of birth
Registered
Activity