Дмитрий Мельник - Безопасный компилятор: надежная оптимизация и улучшение защищенности кода

  Рет қаралды 341

C++ User Group

C++ User Group

17 күн бұрын

Ближайшая конференция: С++ Russia 2024, 24 мая (online), 2-3 июня (offline, Москва)
Подробности и билеты: jrg.su/W8skjE
- -
К появлению уязвимостей в программах могут приводить не только ошибки, допущенные программистом, или злой умысел, но и агрессивные оптимизации, применяемые компилятором. Такая опасность возникает прежде всего для кода, содержащего конструкции с неопределенным поведением (undefined behavior), появление которых в программе может быть связано как с недостаточным знанием стандарта языка C, так и с попытками «эффективно» реализовать некоторую семантику (что иногда даже «срабатывает» для конкретной версии компилятора для заданной архитектуры). Тем не менее компилятор вправе выполнять оптимизации исходя из того, что исходный код написан в строгом соответствии со стандартом, и что в нем отсутствует неопределенное поведение.
Дмитрий рассмотрел примеры кода с различными видами неопределенного поведения, а также неочевидные эффекты от его оптимизации современными версиями GCC и Clang. Он также показал разработанный ими безопасный компилятор на основе GCC, цель которого - предотвращать некорректные оптимизации кода, содержащего неопределенное поведение. Кроме того, спикер рассказал и про другие методы улучшения безопасности кода, применяемые как в безопасном компиляторе, так и в стандартном GCC, а также их влияние на производительность.
Скачать презентацию с сайта С++ Russia - jrg.su/ATjyXh

Пікірлер
СҰЛТАН СҮЛЕЙМАНДАР | bayGUYS
24:46
bayGUYS
Рет қаралды 738 М.
How I prepare to meet the brothers Mbappé.. 🙈 @KylianMbappe
00:17
Celine Dept
Рет қаралды 52 МЛН
Pray For Palestine 😢🇵🇸|
00:23
Ak Ultra
Рет қаралды 29 МЛН
Тяжелые будни жены
00:46
К-Media
Рет қаралды 5 МЛН
Антон Сысоев - Dynamic Libraries for Bare Metal
1:00:25
C++ User Group
Рет қаралды 380
LivePHP Meetup 2024.5
1:30:47
Live PHP
Рет қаралды 493
The power button can never be pressed!!
0:57
Maker Y
Рет қаралды 54 МЛН
Как я сделал домашний кинотеатр
0:41
RICARDO
Рет қаралды 1,5 МЛН