Pull to refresh
0
garbager@garbagerread⁠-⁠only

User

Send message

Выжимаем все соки: PGO Оптимизация ядра Linux

Reading time9 min
Reach and readers15K

Сложность вычислительных задач и систем растёт с каждым днём. Для бизнеса ускорение кода даже на пару процентов даёт улучшение производительности, заметное снижение издержек и уменьшение задержки(latency). В первую очередь это касается мобильных и встраиваемых систем, высоконагруженных серверов, научных вычислений и 3D-графики. Так был разработан относительно перспективный и молодой метод оптимизации — Profile-Guided Optimization, далее просто PGO-оптимизация. Данный метод эффективно используют такие известные компании, как Google, Mozilla Foundation, Intel, Oracle, IBM и другие. Практически ни один современный веб-браузер не обходится без PGO-оптимизации.

Не так давно компанией Google был предложен набор патчей, включающий PGO-оптимизацию в ядре Linux. Мною был протестирован этот набор патчей в работе и доработан. Мне хотелось бы рассказать об этом методе оптимизации ядра Linux, о том, с какими трудностями можно столкнуться, и как их решить.

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

Аналог Moodle или как преподаватель-юрист создавал собственную систему дистанционного обучения. Часть 1. Начало

Reading time7 min
Reach and readers6.3K

Дисклеймер: система дистанционного обучения (СДО) в настоящее время введена в эксплуатацию (продакшн), апробирована, протестирована и успешно работает. Система бесплатна, имеет открытый исходный код и выложена в репозитории GitHub. С точки зрения стека технологий она построена на фреймворке Laravel 8.0 (PHP 7.4) с использованием библиотек и иных пакетов (программ): React (redux+router), SocketIo, Docker, NodeJs, Rest API, WebRTC, Leaflet и т.д.

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

Читать далее

Подшивка газеты «Комсомольская правда» за 1941—1945 годы опубликована на Викискладе по свободной лицензии

Reading time5 min
Reach and readers9.1K

21 ноября военная подшивка газеты «Комсомольская правда» появилась в интернете на сайте Викисклад — в фотобанке, который обслуживает Википедию и другие проекты фонда «Викимедиа». Выпуски с 22 июня 1941 года по 9 мая 1945 года переданы в свободный доступ. Их можно использовать по лицензии «Creative Commons Attribution ShareAlike». Читайте подробности в интервью, которое дал нам Станислав Козловский.

Нажимая на кнопку, вы соглашаетесь читать!

Серьезная ошибка в процессорах Intel раскрывает ключи шифрования

Reading time3 min
Reach and readers6.3K

CVE-2021-0146, идентификатор уязвимости, возникающей при использовании функции отладки с чрезмерными привилегиями, в результате чего злоумышленники могут читать зашифрованные файлы.

Уязвимость в безопасности чипов Intel открывает возможности для доступа к зашифрованным файлам и шпионажа, а также обхода защиты авторских прав на цифровой контент.

Читать далее

Как это устроено: видеоконференции ВКонтакте на безлимитное число участников

Reading time20 min
Reach and readers25K

Сервисы для онлайн-общения и всевозможная доставка — наверное, самые востребованные и активно развивающиеся отрасли 2020–21-го. Мы ВКонтакте тоже не остались в стороне: работая удалённо с первых месяцев пандемии, запустили групповые видеозвонки. Сперва они вмещали одновременно 128 человек, а теперь мы полностью сняли лимиты на число участников.

В этой статье рассказываем, с какими трудностями сталкивается большинство сервисов звонков. И показываем, что нам понадобилось сделать и изобрести, чтобы преодолеть ограничения по числу участников. Попутно отвечаем на вопросы, которые прилетали со всех сторон на волне интереса к технологиям real-time коммуникации: как устроены Zoom и Clubhouse, что взять для своего сервиса звонков из open source, как встроить звонки в приложение. Про эффективную доставку тоже будет — но не еды, а данных, аудио и видео.

Читать далее

Работа с квалифицированными сертификатами в свете новой редакции Приказа №795 ФСБ РФ от 21.01.2021. Часть II

Reading time5 min
Reach and readers6.1K
imageПосле опубликования статьи, посвящённой требованиям Приказа №795 ФСБ России в редакции от 29 января 2021 года, меня не покидало чувство её незавершённости. Это чувство было связано с тем, что в статье ни слова не было сказано про утилиту CAFL63, которая позволяет разворачивать удостоверяющие центры. И естественным является то, что её тоже необходимо привести в соответствие с новыми требованиями.
Читать дальше →

Telegram-бот Silero бесплатно переводит речь в текст

Reading time3 min
Reach and readers244K

header


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


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


Основная UX фишка работы бота — проработанный и удобный формат чтения и навигации по распознанным сообщениям и заметкам (а не стена текста).

попробовать

Проактивные SIM-карты

Reading time4 min
Reach and readers10K

После столкновения с проактивными SMS-сообщениями от SIM-карты AT&T (перевод статьи тут) я решил проверить и другие SIM-карты. Не секрет, что практически все они поддерживают проактивные функции, но мне стало интересно, сколько карт используют их фактически.

Читать далее

«Магнитофон» для ZX Spectrum на базе Arduino

Reading time6 min
Reach and readers25K

Есть у меня аналог Спекки — персональный компьютер «Мастер». Он прошел несколько модернизаций, так что сейчас работает от обычного USB и с любым телевизором по SCART. Но вот с загрузкой программ есть небольшие сложности: магнитофона у меня уже нет, ноут для этих целей разворачивать лениво, а удобного софта для телефонов не нашел. В общем, хочется чего-то серьезного. На века. Залить всю библиотеку софта и игр, положить на полочку и не бояться, что лет через 10 это дело протухнет.

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

Читать далее

Apache Spark, объяснение ключевых терминов

Reading time9 min
Reach and readers32K

Как отмечено в статье Survey shows huge popularity spike for Apache Spark:

«Apache Spark - это Тейлор Свифт программного обеспечения в мире больших данных. Технология с открытым исходным кодом существует и популярна в течении нескольких лет. Но 2015 год стал важной вехой, когда Spark прошел путь от перспективной технологии до настоящей суперзвезды. 

Одна из причин, по которой Apache Spark стал таким популярным, заключается в том, что Spark предоставляет саентистам и инженерам данных мощный унифицированный движок, который является одновременно быстрым (в 100 раз быстрее, чем Apache Hadoop), так и простым в использовании. Это позволяет различным специалистам по данным решать разнообразные проблемы, например, задачи машинного обучения, вычисление графов, потоковая обработка и выполнение в режиме реального времени различных запросов в гораздо большем масштабе. 

Читать далее

Красивые визуализации GitHub с помощью PyGraphistry

Reading time7 min
Reach and readers9.4K

В чёрную пятницу, пока у нас стартует флагманский курс Data Science, делимся интерактивными графами подписок веб-разработчиков и разработчиков моделей ML, а также знакомим читателей с инструментом визуализации больших графов — PyGraphistry.

Такие данные — косвенный индикатор конкуренции языков и технологий. К примеру, можно попробовать выяснить, сколько разработчиков C++ следят за разработчиками Rust и наоборот. За подробностями и кодом приглашаем под кат.

Читать далее

Veeam Backup & «Penetration» — извлекаем максимум пользы для пентеста

Reading time5 min
Reach and readers9.5K

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

Читать далее

Читать далее

Маленькие «малинки» в крупном дата-центре (часть 2 — iPXE + Buildroot)

Reading time10 min
Reach and readers15K

Привет всем, кто заинтересовался историей интеграции «малинок» в серверы! Многие хотели увидеть, как они выглядят в стойке, — вот они, представлены на заглавной иллюстрации.

Продолжим нашу историю о появлении одноплатников в выделенных серверах. В прошлой статье мы рассмотрели отличие процесса загрузки Raspberry Pi 4 от «‎обычных» серверов и подробно описали, какие файлы необходимы для ее успешного завершения. Теперь нужно научиться менять этот процесс под наши нужды.
Читать дальше →

Mono и ОС МСВС

Reading time6 min
Reach and readers40K

Импортозамещение! Это очень популярное нынче слово затмило даже нанотехнологии! Оно несет как большие перспективы так и множество проблем. Не так давно это коснулось и меня. Мне была поставлена задача запустить наше программное обеспечение на операционной системе ОС МСВС. Очень интересное дело, учитывая, что Линукс я видел последний раз лет 8 назад, а наше ПО написано под .Net.
Читать дальше →

Выключаем Intel ME 11, используя недокументированный режим

Reading time11 min
Reach and readers89K


В ходе исследования внутренней архитектуры Intel Management Engine (ME) 11-й версии был обнаружен механизм, отключающий эту технологию после инициализации оборудования и запуска основного процессора. О том, как мы нашли этот недокументированный режим, и о его связи с государственной программой построения доверительной платформы High Assurance Platform (HAP) мы расскажем в этой статье.

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

Боремся с майнером Kinsing на зараженных серверах Linux

Reading time2 min
Reach and readers22K

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

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

Как определить, что ваш сервер используется для майнинга малварью Kinsing?

Определите процессы, которые используют ресурсы процессора с помощью диспечера задач top или htop. В результате вы увидете, например, такие процессы: kdevtmpfsikinsing или dbused, которые максимально используют все ресурсы процессора.

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

Можно попытаться найти задания в запланировщике задач пользователей:

Читать далее

USB CDC Bootloader для STM32F103C8

Reading time3 min
Reach and readers18K

При проектировании устройства на микроконтроллере бывает встает вопрос об обновлении прошивки прибора. Причем сам процесс обновления прошивки должен быть простым и доступным для обыкновенного пользователя. И конкретно для микроконтроллера STM32F103C8 возможна загрузка прошивки по UART. То есть к схеме необходимо добавлять микросхему конвертера USB-UART. Либо воспользоваться аппаратными возможностями USB микроконтроллера, что я и сделал. Меня заинтересовал вопрос о возможности обновления прошивки по USB. На некоторых МК даже есть аппаратный USB-загрузчик, но только не на STM32F103C8, поэтому пришлось все программно реализовывать. По программной части для STM32 существует USB Library от STMicroelectronics с реализованными классами USB и примерами. В частности заинтересовал класс DFU т.е. загрузка прошивки по USB. В данном классе уже реализован свой набор команд для взаимодействия МК и приложения на ПК "STM32CubeProgrammer". Но мне хотелось что-то своё, кастомное и неограниченное данным набором команд. И пришла мысль "А почему бы не реализовать всё это в классе CDC?". Тут и размер загрузчика примерно таким же оказался, но главное можно реализовать свой набор команд, работать на ПК с последовательным портом и соответственно понятнее, как написать приложение для ПК. У меня есть небольшой опыт написания приложений с использованием библиотеки QT на С++, поэтому с ее помощью была создана программа для USB загрузчика.

Читать далее

Единая точка выхода в web, I2P, TOR и обход блокировок

Reading time6 min
Reach and readers27K

Коварный план


Преамбула… Даная статья была написана ещё летом но, по независящим от автора причинам, немножко подзадержалась...


Однажды, жарким летним вечером, после очередной введённой в консоли браузера команды вида :set content.proxy socks://localhost:9050, автор сего опуса понял, что дальше так жить нельзя и пора приводить выход во всякие скрытосети, а заодно и обход блокировок имени известной организации к какому-то единому, для любого софта вообще и браузера в частности, «общему знаменателю». А как приводить? Разумеется так, чтобы прокси сервер сам «понимал», через какой вышестоящий прокси отправлять и принимать трафик в зависимости от введённого адреса. Вторая цель, вытекающая из первой, вышестоящие прокси могут работать либо как http, либо как socks и оба протокола должны поддерживаться входным прокси. Ну и сам софт должен быть более менее актуальным, что б в случае ошибок или «хотения фич», не приходилось грустно смотреть на одинокую репу на гитхабе, а то и вообще на каком-нибудь сорсфорже.
Итак цели поставлены!

Пора переходить к реализации!

История болгарских вирусов

Reading time11 min
Reach and readers9K

Попытка Болгарии сделать рывок в экономике за счёт "компьютеризации" детей стала причиной появления большого количества вирусов, атаковавших компьютеры во всём мире. Почему так произошло и кто из болгарских вирусописателей обрёл известность — в переводе статьи Виктора Петрова, профессора Университета Теннесси (США).

Читать далее

Если вы подумываете начать писать на Go, то вот что вам следует знать

Reading time11 min
Reach and readers75K
Ваш любимый питомец пишет на Go и получает больше вас, а вы ещё нет? Не теряйте времени… Такая мысль может родиться у читателя от обилия статей по Go. Некоторым даже компании предлагают переучиться на этот язык. И, если вы хоть раз задумывались освоить язык, то я хочу вас предостеречь. Вернее показать странные вещи, попробовать объяснить зачем они и потом вы уже сами сделаете вывод нужен ли вам Go.

Го - это портируемый Си
Поехали...
1
23 ...

Information

Rating
Does not participate
Registered
Activity