Pull to refresh
0
0
Alexey @Weron2

АСУТП

Send message

Как разработать микросхему, от идеи до результата. Часть 1. Теория

Reading time19 min
Views26K
Пока наши соседи по цеху спорят о конкурентоспособности Эльбруса, я продолжаю идти к своей заветной цели — склепать свой собственный Отечественный Процессор (TM). Ранее я рассказывал про программу, финансируемую Google, которая позволяет энтузиастам бесплатно получить прототип их разработок в кремнии. Если вы хотите увидеть всю подноготную процесса производства современных чипов, то этот туториал точно для вас!

Читать дальше →
Total votes 79: ↑78 and ↓1+111
Comments62

Обращение к Javascript-сообществу: перестаньте писать квадраты

Reading time7 min
Views67K

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

Read more
Total votes 172: ↑169 and ↓3+210
Comments355

Как я «напрограммировал» себе скилл рисования диаграмм в скетч-стиле

Reading time5 min
Views26K

По работе мне часто приходится рисовать разные схемы, диаграммы процессов и графики, в том числе и те, которые потом используются в качестве иллюстраций для сайта, статей и презентаций. Всё бы ничего, но есть у диаграмм и графиков, сделанных в популярных онлайн-сервисах наподобие draw.io или lucidcharts одна беда — они выглядят как-то слишком уныло и «олдскульно», в духе «90-х». Всю эту инфографику хотелось бы сделать более заметной, привлекательной и душевной (и, желательно, без привлечения дизайнера).

Так у меня возникла идея создания инструмента для отрисовки диаграмм и графиков в стиле «нарисовано от руки». Об истории создания сервиса и «подводных камнях» я расскажу в этой заметке.

Читать далее
Total votes 157: ↑157 and ↓0+157
Comments38

Взламываем ТВ-приставку, чтобы получить плацдарм для хакерских атак

Reading time8 min
Views35K

Под катом вас ждет профессиональный экскурс в безопасность низкоуровневого ПО от одного из наших сотрудников. Вы узнаете, как получить доступ к Nand-памяти без программатора, обмануть загрузчик нулевого уровня и превратить Android-приставку в зомби за десять секунд.

Читать далее
Total votes 49: ↑46 and ↓3+58
Comments18

Новая (бесплатная) схема сертификации по продуктам Oracle

Reading time2 min
Views9.2K

Привет, Хабр! Вчера мне в очередной раз попалась на глаза публикация о нехватке квалифицированных специалистов и проблемах найма персонала. Поэтому сегодня мне захотелось рассказать об изменениях в программе сертификации и обучения по продуктам Oracle. Если у вас закрадывалась мысль в голову бесплатно повысить квалификацию или отправить на этот подвиг своих сотрудников, прошу под кат.

Читать далее
Total votes 22: ↑18 and ↓4+14
Comments9

Создание мини-игры «Шкатулка» с помощью JS + CSS

Reading time10 min
Views6.7K

Привет!

Меня зовут Сергей, я фронтенд-разработчик отдела спецпроектов KTS. Наш отдел занимается разработкой веб-приложений для промокампаний.

Год назад перед нами встала задача: сделать игру-квест с диалогами, 360-панорамой, drag-n-drop, звуками и мини-играми.

В этой статье расскажу про последнюю часть: как сделать мини-игру со звуками с помощью react, styled-components, mobx и howler.

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

Читать далее
Total votes 13: ↑12 and ↓1+13
Comments2

Как анализировать вредоносное ПО с помощью x64dbg

Reading time7 min
Views8.2K

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

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments0

Ventoy. Мультизагрузочная флешка

Reading time3 min
Views168K

Мультизагрузочная флешка, сколько раз она меня выручала, с нее я чистил компы от вирусов, ставил Оси и т.д. В общем объяснять для чего она на хабре не нужно. Я знаю две самых известных утилиты для создания МФ - Easy2Boot и Win Setup From USB. Чем отличается Ventoy от них? Сейчас посмотрим.

Читать далее
Total votes 20: ↑19 and ↓1+21
Comments62

500 миллионов строк кода: как софт съест автоиндустрию

Reading time21 min
Views19K
image


TL;DR


  • У некоторых автопроизводителей есть сотни тысяч потенциальных комбинаций сборки отдельной модели автомобиля.
  • Ford F-150, содержат 150 миллионов строк кода.
  • В автомобилях Volvo 2020 года около 120 ЭБУ и 100 миллионов строк исходного кода. 10 миллионов условных операторов, 3 миллиона функций, которые вызываются в 30 миллионах мест в исходном коде.
  • В 2017 году 40% стоимости нового автомобиля можно отнести на полупроводниковые электронные системы, что вдвое больше, чем в 2007 году. К 2030 году эта сумма приблизится к 50%.
  • Сегодня в каждый новый автомобиль упакован полупроводниками на сумму около 600 долларов, состоящих почти из 3000 микросхем всех типов.
  • Автомобильный сетевой жгут, к которому могут быть прикреплены тысячи компонентов, может содержать более 1500 проводов общей длиной 5000 метров и весом более 68 кг.
  • 40% бюджета на производство автомобиля с момента его разработки до начала производства можно отнести на счет системной интеграции, тестирования, проверки и валидации.
  • По оценкам VW, только 10% программного обеспечения в его автомобилях разрабатывается собственными силами. Остальные 90% вносят десятки поставщиков, а у некоторых OEM-производителей это число, как сообщается, достигает более 50.
  • Почти 60% затрат на рабочую силу при ремонте столкновения с транспортным средством с расширенными функциями безопасности связано с электроникой транспортного средства.
  • 2019 год стал рекордным: 15 миллионов автомобилей были отозваны из-за дефектов электронных компонентов. Половина отзывов связана с дефектами программного обеспечения.
  • В GM 90 инженеров на постоянной основе работают над разработкой средств кибербезопасности.
  • 25 гигабайт данных в час — трафик внутри автомобиля

Читать дальше →
Total votes 21: ↑15 and ↓6+17
Comments127

Понять кубик Рубика

Reading time7 min
Views39K

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

То же самое со сборкой этой головоломки: миллионы людей умеют делать это по формулам, но сколько из них понимают, что они делают? А ведь начать чувствовать кубик Рубика не так сложно!

Но сперва давайте договоримся, зачем нам такая головоломка нужна и чем полезна. Вы же уже слышали шутки про то, что кубик Эрно Рубика – штука многогранная? А видите параллели между кубиком Рубика, шахматами и, например, пианино или гитарой?

Читать далее
Total votes 21: ↑20 and ↓1+30
Comments44

Бесплатный персональный OpenVPN-сервер на базе Oracle Cloud

Reading time6 min
Views98K

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

Oracle, придя на рынок облачных сервисов, активно привлекает новых клиентов. И одним из инструментов такого привлечения являются Always Free сервисы - зарегистрировавшийся клиент может пользоваться каким-то достаточно ограниченным набором ресурсов, как это следует из названия, бесплатно и неограниченно во времени. В список этих ресурсов входит два compute инстанса (каждый 2 ядра, 1GB RAM, 45GB HDD), которые можно использовать подо что угодно, но в нашем случае мы можем построить на них полностью бесплатный OpenVPN-сервер, буквально не умея практически ничего, кроме тыкания в кнопку Next. Чем мы и займемся.

Читать далее
Total votes 30: ↑28 and ↓2+35
Comments123

Клиент-серверный обмен данными между двумя PLC серии S7-1500 по протоколу OPC UA

Reading time8 min
Views19K

Протокол OPC UA (https://ru.wikipedia.org/wiki/OPC_UA) появился впервые в контроллерах Simatic во второй версии прошивки и в Step 7 версии 14. Тогда контроллер можно было настраивать только в качестве OPC UA - сервера, то есть ПЛК мог отвечать на запросы и отдавать данные, но не мог сам инициировать связь и опрашивать других участников сети.

Радикально ситуация меняется в ноябре-декабря 2018 года с выходом прошивки 2.6 и Step 7 версии 15.1. Появляется возможность настроить CPU в качестве OPC UA клиента. А это, в свою очередь дает нам возможность организовать защищенный канал обмена информацией машина-машина (контроллер-контроллер).

Читать далее
Total votes 7: ↑7 and ↓0+7
Comments4

Floppinux — Linux, умещенный на дискету

Reading time7 min
Views17K

Новость по этому поводу уже была, время подавать и сам перевод. В своем руководстве Кристиан подробно излагает каждый шаг процесса создания дистрибутива и его записи на дискету формата 3.5". В конечном итоге работает такой дистрибутив даже на старых ПК с i486DX и вполне может выполнять скомпилированные приложения.
Total votes 52: ↑46 and ↓6+55
Comments40

Бесплатные сервисы для разработчиков — огромный список

Reading time8 min
Views57K

Бесплатное хранилище артефактов PackageCloud

Удивительно, но в интернете сотни сервисов, которыми разработчик может пользоваться совершенно бесплатно. «Бесконечное» время (пока компания не обанкротится или не изменит условия), без рекламы, пробного периода и других подводных камней.

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

Но для некоторых бесплатный тариф — единственный способ завлечь новых клиентов. Это просто замечательно с точки зрения самих пользователей. Ведь перед нами десятки бесплатных хостингов, API, CMS, CDN, сервисов обработки данных, поисковых движков, репозиториев, инструментов проверки кода и других. Бесплатный тариф идеален для опенсорс-разработчиков, любительских и некоммерческих проектов, маленьких стартапов. Ни за что не надо платить.
Читать дальше →
Total votes 65: ↑59 and ↓6+71
Comments15

Консоли больше не нужны (но это не точно)

Reading time5 min
Views9.2K

Доброго времени суток, уважаемые читатели. Я не знаю делал ли кто-то что-то подобное до меня, поэтому я решил поделиться историей написания моего pet-проекта и отнять у вас немного времени. Возможно идея получит продолжение и играть в любимые игры станет проще, доступнее и интереснее.

Читать далее
Total votes 15: ↑13 and ↓2+15
Comments17

KODI: собираем удобный и функциональный медиацентр для дома. Часть 1

Reading time27 min
Views423K

Поговорим о том, как при наличии небольшого количества времени и навыков построить мультимедийный комбайн с дополнительными возможностями домашнего сервера на базе Kubuntu 20.04 и KODI, способного работать 24/7/365.

Читать дальше →
Total votes 55: ↑54 and ↓1+68
Comments189

Мама, я сделал Хабр

Reading time3 min
Views54K


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


Ссылка на web-приложение для самых нетерпеливых — habra.js.org. Всех остальных — прошу под кат.

Total votes 174: ↑170 and ↓4+227
Comments158

«Digital Rain» для Windows в 314 байтах

Reading time3 min
Views27K
В комментариях к недавнему топику возникло обсуждение: до какого размера можно ужать Windows EXE, печатающий в консоли «Hello, World!» Ответ: 268 байт, меньшие файлы Windows просто отказывается загружать.

Раз для «Hello, World!» предел возможного ужатия уже достигнут, то мне стало интересно, до какой степени удастся ужать программу, делающую хоть что-нибудь более интересное.

Сначала похвастаюсь результатом: моя программа всего на 46 байт больше теоретического минимума!



base64
TVprZXJuZWwzMgAAUEUAAEwBAQC4AwABAPdlEIlFEMN4AA8BCwEFDL0UEEAAjXyNAFfraD
gQAAAzyesoDAAAAAAAQAAAEAAAAAIAAAAAAAACAgoCBAAAAAAAAAAAQAAAAAIAALFQ68AD
AAAAEgEAAAAAAABQABkAABAAAFAAGQADAAAAAAAAAAAAAAAoEQAAKAAAAAAAAAAAAAAA/9
Wr4vvrEQAAMAAAABAAADkBAAABAAAAi/df6wMAAAAzybFQV4sHgPwZdygPttyNHJvB4waN
HItQweAYwegei0RFOIhEMwKIpDPC/v///9WIJDNY/sSA/GR8Av/Vq+LFjUVcUFH/dWhWZI
tBMItAEP9wHP9VWOuiV3JpdGVDb25zb2xlT3V0cHV0QQBsEAAAAAAAAAAAAAACAAAAbBA=

(Если найдётся доброволец захостить эти 314 байт, добавлю сюда ссылку.)


Пояснения
Total votes 49: ↑45 and ↓4+41
Comments18

Создаем EXE

Reading time14 min
Views62K
Самоизоляция это отличное время приступить к тому, что требует много времени и сил. Поэтому я решил заняться тем, чем всегда хотел — написать свой компилятор.

Сейчас он способен собрать Hello World, но в этой статье я хочу рассказать не про парсинг и внутреннее устройство компилятора, а про такую важную часть как побайтовая сборка exe файла.
Читать дальше →
Total votes 75: ↑74 and ↓1+94
Comments49

Создание исполняемого файла ELF вручную

Reading time9 min
Views10K

Привет, класс, и добро пожаловать в x86 Masochism 101. Здесь вы узнаете, как использовать коды операций непосредственно для создания исполняемого файла, даже не касаясь компилятора, ассемблера или компоновщика. Мы будем использовать только редактор, способный изменять двоичные файлы (т.е. шестнадцатеричный редактор), и «chmod», чтобы сделать файл исполняемым.

Восход солнца вручную!
Total votes 19: ↑18 and ↓1+24
Comments6

Information

Rating
Does not participate
Registered
Activity