Рубрика «linux kernel» - 7

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

image
Читать полностью »

Приглашаем всех специалистов принять участии в секции, посвященной коммерческим базам данных на PG Day'17 Russia! Александр Халухин из Deutsche Bank готовит интенсивный мастер-класс о диагностике производительности Oracle Database. Полный список выступлений смотрите в программе на сайте!

А мы продолжаем публиковать переводы статей от специалистов по базам данных из CERN. Сегодняшний материал является второй частью цикла статей, посвященных трассировке и отладке производительности Oracle DB с помощью SystemTap.

Жизнь Oracle I-O: трассировка логического и физического ввода-вывода с помощью SystemTap - 1

Эта статья посвящена отслеживанию логических и физических чтений в Oracle с помощью SystemTap. Здесь вы найдете несколько примеров, иллюстрирующих основные механизмы, используемые Oracle для выполнения физических и логических операций ввода-вывода, и узнаете, как создавать скрипты SystemTap для последующей диагностики и устранения неполадок ввода-вывода Oracle.
Читать полностью »

Проблемы со скоростью выполнения системных вызовов «gettimeofday» и «clock_gettime» в AWS EC2 - 1

Кадр из фильма «Матрица: Революция»

В этой статье мы подробно рассмотрим детали одной интересной находки: два часто используемых системных вызова (gettimeofday, clock_gettime) в AWS EC2 выполняются очень медленно.

В Linux реализован механизм по ускорению этих двух часто используемых системных вызовов, благодаря которому их код выполняется в пространстве пользователя, что позволяет избежать переключениям в контекст ядра. Это сделано с помощью предоставляемой ядром виртуальной общей библиотеки (virtual shared library), которая отображается в адресное пространство всех запущенных программ.

Два вышеназванных системных вызова не могут использовать vDSO (virtual Dynamic Shared Object) в AWS EC2, поскольку виртуализированный источник временных меток (virtualized clock source) в xen (и некоторых конфигурациях kvm) не поддерживает получение информации о времени через vDSO.

Обойти эту проблему не получится. Можно поменять источник информации о времени на tsc, но это небезопасно. Далее мы рассмотрим вопрос более подробно и проведем сравнительное тестирование с помощью microbenchmark.

Читать полностью »

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

Потоки в Linux: Pthreads - 1

В этой статье мы познакомимся с POSIX Threads для того, чтобы затем узнать как это все работает в Linux. Не заходя в дебри синхронизации и сигналов, рассмотрим основные элементы Pthreads. Итак, под капотом потоки.

Читать полностью »

Всем привет,

Данная заметка касается одного практического приёма, который я использовал при решении задачи определения места в ядре ОС Linux, где удерживается определённая спин-блокировка (спин-лок). Данная проблема возникла достаточно спонтанно и, учитывая сложность ядра, могла бы потребовать большое количество времени для решения. Если Вам это интересно, прошу читать далее...

Читать полностью »

imageCryptoAPI представляет собой реализацию криптографических алгоритмов с предоставлением доступа к ним как из самого ядра, так и из прикладного программного обеспечения. Наиболее яркими представителями этого программного обеспечения является IPSEC (VPN ) и dm-crypt (шифрованная файловая система).
Читать полностью »

Перехват системных вызовов Linux с помощью LSM - 1

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

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

Security Week 50: социализация криптолокеров, аудит OpenVPN, уязвимость в ядре Linux - 1Только мы обсудили, что криптолокеры стали вредоносной темой года не за технологии атаки, а благодаря, скажем так, социальным аспектам проблемы, как пришла новость, это подтверждающая. Вымогатель Popcorn Time назван в честь перспективного, но зарубленного на взлете софта для удобного скачивания фильмов из торрентов. Лоренс Абрамс, владелец сайта BleepingComputer, обнаружил, что код трояна явно не дописан, из-за чего не всегда работает связь с командным центром.

Но главной особенностью трояна является альтернативный вариант расшифровки: жертве предлагается отправить друзьям ссылку, по которой, предположительно, скачивается такой же троян, и в случае если два адресата установят вредоносную программу, ключ отправителю будет предоставлен бесплатно (иначе требуют 1 BTC). Предположительно, так как сайт в сети Tor на момент анализа вредоносной программы был недоступен.

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

пусть лучше небольшая, но фейербаховская...
Виктор Пелевин «Поколение Пи»

Недавний релиз ядра Linux 4.9 отличный повод рассказать о предстоящем разгоне WiFi. Сразу оговорюсь — пост не о том, как увеличить зону покрытия или менять регуляторные домены. Ничего такого делать не надо, достаточно обновить ядро после того, как патчи буфероборца Dave Täht будут в стабильной ветке.

WiFi на Linux станет быстрее - 1

Значительное повышение скорости достигнуто за счет уменьшения задержки [1] и избыточной буферизации [2] в сети. Разработчикам пришлось ради этого перелопатить mac80211, убрать кое-что сверху, добавить снизу и после этого задержки в сети сократились на порядок. Цена вопроса? Патч в 200 строк. Подробности под катом.

Читать полностью »

Тестируем Linux-версию PVS-Studio на Linux Kernel - 1

С момента выхода публичной Linux-версии PVS-Studio, статья о повторной проверке ядра Linux оставалась лишь вопросом времени. Проект, который пишется профессионалами со всего мира, который используют большое количество людей в самых разных сферах, который регулярно проверяется и тестируется различными инструментами — проверка такого проекта будет серьёзным испытанием для любого статического анализатора. Какие ошибки удалось найти PVS-Studio в таких условиях?

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js