Search
Write a publication
Pull to refresh
0
@MacInread⁠-⁠only

User

Send message

Зачем нужна низкоуровневая оптимизация на Эльбрусе или как ускорить распознающую систему в полтора раза

Reading time14 min
Views11K

Встретив 2019 год и немного отдохнув от разработки новых фич для Smart IDReader, мы вспомнили, что давно ничего не писали об отечественных процессорах. Поэтому мы решили срочно исправиться и показать еще одну распознающую систему на Эльбрусе.


В качестве распознающей системы была рассмотрена система распознавания объектов живописи “в неконтролируемых условиях методом с обучением по одному примеру” [1]. Эта система строит описание изображения на основе особых точек и их дескрипторов, по которому выполняет поиск в индексированной базе картин. Мы проанализировали производительность данной системы и выделили наиболее времязатратную низкоуровневую часть алгоритма, который затем оптимизировали с помощью инструментов платформы Эльбрус.

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

Почему Windows XP в 2019 году по-прежнему рулит, или ЧЯДНТ?

Reading time9 min
Views171K
На Хабре в комментариях к статьям о выходе новых версий операционных систем, выпуске новых моделей ноутбуков, накопителей данных, модулей памяти и т.п. регулярно высказывается мнение о том, что только наипоследнейшая версия операционной системы известного вендора даёт возможность современному гику не скатиться в унылое г… очувствовать себя человеком, и только тот, у кого стоитустановлена Windows 8, 10, 11, 9000 (нужное подчеркнуть), будет пользоваться популярностью у девушекработодателей и клиентов. По причинам изложенным ниже я полагаю таковое мнение глубоко ошибочным и даже ущербным, показывающем неспособность владельца компьютера оптимально использовать имеющиеся в его распоряжении аппаратные и программные ресурсы.
Читать дальше →

Ракета 9М729. Несколько слов о “нарушителе” Договора РСМД

Reading time6 min
Views112K
Речь сегодня о крылатой ракете 9М729, но для начала, немного истории — Договор об ограничении ракет средней и малой дальности (РСМД) заключен между СССР и США в 1987 г. По данному договору запрещено создание и развертывание баллистических и крылатых ракет наземного базирования дальностью действия от 500 до 5500 км. То есть и СССР и США сократили по Договору РСМД целые классы ракетных систем — баллистические ракеты малой дальности (ракетные комплексы “Ока” и “Темп-С”), мобильные баллистические ракеты средней дальности (комплексы РСД-10 “Пионер” / SS-20 и Pershing-2) и крылатые ракеты средней дальности (мобильные комплексы Gryphon с ракетами Tomahawk, а также его отечественный аналог — комплекс РК-55 «Рельеф» с ракетами КБ “Новатор”, аналогичными морским ракетам “Гранат”). Договор действовал несколько десятилетий.

Пока 5 марта 2013 года в США не вышла статья относительно известного своими связями в Пентагоне обозревателя Билла Гертца, который выразил обеспокоенность американской стороны испытаниями новейшей российской баллистической ракеты РС-26 “Рубеж”, которая якобы по своим возможностям будучи формально МБР (межконтинентальной баллистической ракетой, ракетой с дальностью более 5500 км) на самом деле является ракетой средней дальности. Тема в общем мутная и пахнет инсинуациями с обеих сторон. Но тут программа создания ракет “Рубеж” / “Рубеж-Авангард” попала под секвестр и комплекс «Рубеж» оставили в покое.

image
Крылатая ракета 9М728 / Р-500 комплекса «Искандер-М» на начальном этапе полета до раскрытия крыла. Учения «Восток-2014». Еврейская АО, 20.09.2014 г.
Читать дальше →

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

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

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



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

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

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

Технологическое отставание России по микропроцессорам на основании технологического процесса в производстве

Reading time4 min
Views38K
На фоне предстоящего серийного производства аж 3 процессоров российского производства — Эльбрус 8C (МЦСТ), Baikal (Т-Платформы) и Мультиклет R1, я решил проанализировать технологическое отставание России по микропроцессорам на основании технологического процесса в производстве процессором в России/СССР и у лидеров в этой области.

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

Сбор данных


С данными по лидерам проблем не было — они есть в самых разных источниках, например, в английской Википедии или на русском языке. Так как корректность этих данных никаких сомнений не вызывает, останавливаться на этом не стоит.

С данными по России/СССР было сложнее. Использовались несколько каталогов, в частности sovietcpu.com. Даты разработки и тех процесс проверялся в разных источниках, в частности, это сайты производителей, а по советским процессорам использовались справочники, например, academic.ru и другие.
Читать дальше →

Трехмерный движок на формулах Excel для чайников

Reading time9 min
Views71K


В этой статье я расскажу, как мне удалось портировать алгоритм рендера трехмерных сцен на формулы Excel (без макросов).

Для тех, кто не знаком с компьютерной графикой, я постарался как можно проще и подробнее описать все шаги. В принципе, для понимания формул должно быть достаточно знания школьного курса математики (+умение умножать трехмерную матрицу на вектор).

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

Осторожно: 19 картинок и 3 анимации под катом.
Читать дальше →

Курс MIT «Безопасность компьютерных систем». Лекция 19: «Анонимные сети», часть 1 (лекция от создателя сети Tor)

Reading time16 min
Views10K

Массачусетский Технологический институт. Курс лекций #6.858. «Безопасность компьютерных систем». Николай Зельдович, Джеймс Микенс. 2014 год


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

Лекция 1: «Вступление: модели угроз» Часть 1 / Часть 2 / Часть 3
Лекция 2: «Контроль хакерских атак» Часть 1 / Часть 2 / Часть 3
Лекция 3: «Переполнение буфера: эксплойты и защита» Часть 1 / Часть 2 / Часть 3
Лекция 4: «Разделение привилегий» Часть 1 / Часть 2 / Часть 3
Лекция 5: «Откуда берутся ошибки систем безопасности» Часть 1 / Часть 2
Лекция 6: «Возможности» Часть 1 / Часть 2 / Часть 3
Лекция 7: «Песочница Native Client» Часть 1 / Часть 2 / Часть 3
Лекция 8: «Модель сетевой безопасности» Часть 1 / Часть 2 / Часть 3
Лекция 9: «Безопасность Web-приложений» Часть 1 / Часть 2 / Часть 3
Лекция 10: «Символьное выполнение» Часть 1 / Часть 2 / Часть 3
Лекция 11: «Язык программирования Ur/Web» Часть 1 / Часть 2 / Часть 3
Лекция 12: «Сетевая безопасность» Часть 1 / Часть 2 / Часть 3
Лекция 13: «Сетевые протоколы» Часть 1 / Часть 2 / Часть 3
Лекция 14: «SSL и HTTPS» Часть 1 / Часть 2 / Часть 3
Лекция 15: «Медицинское программное обеспечение» Часть 1 / Часть 2 / Часть 3
Лекция 16: «Атаки через побочный канал» Часть 1 / Часть 2 / Часть 3
Лекция 17: «Аутентификация пользователя» Часть 1 / Часть 2 / Часть 3
Лекция 18: «Частный просмотр интернета» Часть 1 / Часть 2 / Часть 3
Лекция 19: «Анонимные сети» Часть 1 / Часть 2 / Часть 3

Семантика копирования и управление ресурсами в C++

Reading time28 min
Views57K

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



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

7 советов начинающему ИП, чтобы избежать проблем (что-то вы точно из этого не знаете)

Reading time10 min
Views1.1M


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


А для тех, кто открыл ООО, мы подготовили: 10 вещей, которые обязательно нужно сделать после регистрации ООО
Читать дальше →

Как ИП сэкономить на налогах в 13,3 раз

Reading time7 min
Views65K

Если вы не торопитесь легализовать свою предпринимательскую деятельность только потому, что налоги ИП кажутся вам неподъемным бременем, то вы просто не умеете их готовить. Разобраться в основных нюансах систем налогообложения стоит уже ради экономии собственных денег. А сэкономленные деньги, как известно, ничуть не хуже заработанных. Так что, немного терпения, и вы станете чуть-чуть богаче.
Читать дальше →

Наследник Zeus: чем опасен троян IcedID для клиентов банков

Reading time23 min
Views4.8K
Эксперты Group-IB проанализировали троян, атакующий клиентов банков США, и выложили в публичный доступ результаты глубокого разбора формата динамических конфигурационных данных с Python-скриптами и информацию по CnC-серверам.

image

В ноябре 2017 года команда исследователей из IBM X-Force опубликовала отчет по новому трояну — IcedID, который нацелен преимущественно на клиентов американских банков. Бот обладает многими возможностями печально известного вредоносного ПО Zeus, в том числе: загружает и запускает модули, собирает и передает на сервер аутентификационные данные, информацию о зараженном устройстве, осуществляет атаку man-in-the-browser (MITB). Несмотря на то, что по своим функциональным возможностям новый троян оказался похож на другие популярные банкеры — Trickbot, GOZI, Dridex, активно атакующие клиентов банков, IcedID использует нестандартный бинарный формат хранения конфигурационных данных. Другой отличительной особенностью этого вредоносного ПО является возможность развертывания прокси-сервера прямо на зараженной машине для проведения атаки MITB.
Читать дальше →

286 и сеть

Reading time7 min
Views58K


Я — старьевшик. У меня полный шкаф старого железа. От микросхем булевой логики в DIP-корпусах до Voodoo5. Само собой, никакой практической ценности все это не представляет, но некоторым людям доставляет удовольствие возиться со старыми железками. Если Вы — один из них, приглашаю Вас под кат, где я расскажу, как «дружил» компьютер на базе процессора AMD 286 с современной сетью, и что из этого вышло.
Читать дальше →

Как это сделано: пишем «Сапера» за 4 минуты

Reading time4 min
Views49K
image

От переводчика: этот пост — перевод оригинальной статьи Маки Чиза, опытного кодера, который не только пишет классные программы, но и демонстрирует возможности различных языков своим коллегам, как новичкам, так и профессионалам.

«Сапер» — веселая игра, многие из нас в нее играют. Может быть, вы хотите сделать «Сапера» сами?
Читать дальше →

Интерпретаторы байт-кодов своими руками

Reading time14 min
Views42K


Виртуальные машины языков программирования в последние десятилетия получили весьма широкое распространение. С презентации Java Virtual Machine во второй половине 90-х прошло уже достаточно много времени, и можно с уверенностью сказать, что интерпретаторы байт-кодов — не будущее, а настоящее.


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


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

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

Восстановление смазанных и расфокусированных изображений с помощью фильтра Винера. Реализация на C++ OpenCV

Reading time2 min
Views26K

В продолжении статьи про восстановление расфокусированных и смазанных изображений хочу поделиться своими результатами восстановления реальных изображений с помощью фильтра Винера. В качестве библиотеки обработки изображений использовалась OpenCV 3.4. Фотокамера – Nikon D320, объектив Nikon DX AF-S NIKKOR 18-105mm, расфокусировка осуществлялась вручную, съёмка осуществлялась без штатива.

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

Вышла первая бета-версия операционной системы Haiku R1

Reading time5 min
Views49K
После девяти лет альфа-тестирования и спустя шесть лет с момента формирования прошлого альфа-выпуска подготовлен первый бета-выпуск операционной системы Haiku R1. Изначально проект был создан как реакция на закрытие ОС BeOS и развивался под именем OpenBeOS, но был переименован в 2004 году из-за претензий, связанных с использованием в названии торговой марки BeOS. Для оценки работы нового выпуска доступно несколько загрузочных Live-образов (x86, x86-64). Исходные тексты большей части ОС Haiku распространяются под свободной лицензией MIT, исключение составляют некоторые библиотеки, медиа-кодеки и компоненты, заимствованные из других проектов.

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

Как обойти SMS-идентификацию при подключении к публичным Wi-Fi сетям?

Reading time4 min
Views97K
В 2014 году начали свое действие постановления правительства РФ №758 №801, обязывающие владельцев публичных WiFi сетей настроить на роутерах идентификацию пользователей через паспортные данные, sms или портал гос. услуг. Нежелание владельцев кафе тратиться за Captive portal'ы поспособствовало некоторым провайдерам в распространении своих точек доступа с платной sms-авторизацией. У меня возникло желание проверить, можно ли подобную sms-авторизацию обойти.

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

24-ядерный CPU, а я не могу набрать электронное письмо

Reading time9 min
Views101K
Я не искал неприятностей. Не запускал процесс сборки Chrome тысячу раз за выходные, а только занимался самыми обычными задачами 21-го века — просто писал электронное письмо в 10:30 утра. И вдруг Gmail подвис. Я продолжал печатать несколько секунд, но на экране не появлялось никаких символов. Затем внезапно Gmail отвис — и я вернулся к своему очень важному письму. Но впоследствии всё повторилось, только на этот раз Gmail ещё дольше не отвечал запросы. Это странно

Трудно устоять перед возможностью провести хорошее расследование, но в данном случае вызов особенно силён. Ведь я в Google работаю над улучшением производительности Chrome для Windows. Обнаружить причину зависания — моя работа. И после множества фальстартов и тяжёлых усилий мне всё-таки удалось выяснить, как Chrome, Gmail, Windows и наш IT-отдел вместе помешали мне набрать электронное письмо. По ходу дела нашёлся способ сэкономить значительное количество памяти для некоторых веб-страниц в Chrome.

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

Опыт настройки и использования WSL (подсистемы Linux в Windows 10)

Reading time9 min
Views273K

К написанию данной статьи меня побудил вопрос на Тостере, связанный с WSL. Я, после нескольких лет использования систем на ядре Linux, около полугода назад перешел к использованию Windows 10 на домашнем ПК. Зависимость от терминала и Linux окружения в моей работе практически сразу привели меня к вопросу: или ставить виртуалку или попробовать WSL. Я выбрал второе, и остался вполне доволен.


Под катом я расскажу как установить и настроить WSL, на какие я наткнулся проблемы и ограничения, как запускать Linux приложения из Windows и наоборот, а так же как интегрировать элементы окружения Xfce в окружение рабочего стола Windows.


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

Почему SQLite не использует Git

Reading time6 min
Views31K

1. Введение


SQLite не использует Git. Вместо этого у нас работает система управления версиями Fossil, специально разработанная и написанная для поддержки SQLite.

Люди иногда спрашивают, почему SQLite не использует Git, как все остальные. В статье мы попробуем ответить на этот вопрос. Кроме того, в третьем разделе приводятся советы для пользователей Git, как легко получить доступ к исходному коду SQLite.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity