<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Проект LLVM развивает средства для безопасной работы с буферами в C++</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/128606.html</link>
    <description>Разработчики проекта LLVM предложили ряд изменений, направленных на усиление безопасности критически важных проектов на языке C++ и предоставление средств для исключения ошибок, вызванных выходом за допустимые границы буферов. Работа сосредоточена в двух направлениях: предоставление  модели разработки, позволяющей безопасно работать с буферами, и проведение работы по усилению защиты стандартной библиотеки функций libc++...&lt;br&gt;&lt;br&gt;Подробнее: https://www.opennet.ru/opennews/art.shtml?num=57876&lt;br&gt;</description>

<item>
    <title>Проект LLVM развивает средства для безопасной работы с буфер... (alexhz)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/128606.html#280</link>
    <pubDate>Sun, 25 Dec 2022 21:43:43 GMT</pubDate>
    <description>Хотя чаще до 20&#037;. Ну и ещё проблема, код с хаками не работает. В итоге, только сравнительно недавно смогли заставить в этом режиме работать стандартную GNU libc.&lt;br&gt;</description>
</item>

<item>
    <title>Проект LLVM развивает средства для безопасной работы с буфер... (alexhz)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/128606.html#279</link>
    <pubDate>Sun, 25 Dec 2022 21:38:48 GMT</pubDate>
    <description>Железо такое есть, эльбрус называется. Там есть специальный режим, в котором процессор изображает из себя виртуальную машину, работающую по спецификации языка C. Прощай выход за границы буферов, приведение несовместимых типов и прочее-прочее. Недостаток - даже в железном исполнении есть потеря производительности, местами более 40&#037;.&lt;br&gt;</description>
</item>

<item>
    <title>Проект LLVM развивает средства для безопасной работы с буфер... (Брат Анон)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/128606.html#278</link>
    <pubDate>Fri, 14 Oct 2022 05:28:24 GMT</pubDate>
    <description>&amp;gt;&amp;gt; А ещё лучше -- железо спроектированное под эти проверки, &lt;br&gt;&amp;gt; Осталось придумать где его такое взять. Интел вообще пытался, но - не &lt;br&gt;&amp;gt; зашло.&lt;br&gt;&lt;br&gt;Нет, Интел даже не пытался. За тебя уже всё придумали. Просто бери и пользуйся.&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt;&amp;gt; и язык, который на 146&#037; использует эти проверки. Например, Оберон.&lt;br&gt;&amp;gt; Rust с другого бока зашел, ему особое железо толком и не надо, &lt;br&gt;&lt;br&gt;Нет. Нет железа под язык. Значит нет никакой безопасности.&lt;br&gt;&lt;br&gt;&amp;gt; просто компил тайм проверки всего чего можно да разумная аннотация намерений &lt;br&gt;&amp;gt; кодера. &lt;br&gt;&lt;br&gt;Нет. Если железо кривое -- это всё для самоуспокоения. От Мельтдауна никакой раст не спасёт. Даже Оберон бесполезен.&lt;br&gt;&lt;br&gt;&amp;gt; В целом достаточно разумное сочетание. Синтаксис конечно с закорючками но &lt;br&gt;&amp;gt; тут уж аннотация намерений програмера компилеру и анализатору либо есть либо &lt;br&gt;&amp;gt; нет.&lt;br&gt;&lt;br&gt;Нет. Вырвиглазный синтаксис помноженный на штатную возможность перехода с алгоритмического уровня на аппаратный. Оставьте себе.&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Проект LLVM развивает средства для безопасной работы с буфер... (n00by)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/128606.html#277</link>
    <pubDate>Thu, 13 Oct 2022 07:59:46 GMT</pubDate>
    <description>&amp;gt;&amp;gt; 1) Для выхватывания глазом функций. 2) для парсеров у всяких редакторов кода.&lt;br&gt;&amp;gt;&amp;gt; Там УЖАС КАК СЛОЖНО СДЕЛАТЬ НАСТРОЙКУ ФУНКЦИЙ ДЛЯ С.&lt;br&gt;&amp;gt; Настолько сложно что компилер с сделали в 4 функицях, C4 называется.&lt;br&gt;&lt;br&gt;Ну вот, сложно же. Для простых языков хватает одной.&lt;br&gt;</description>
</item>

<item>
    <title>Проект LLVM развивает средства для безопасной работы с буфер... (n00by)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/128606.html#276</link>
    <pubDate>Thu, 13 Oct 2022 07:54:06 GMT</pubDate>
    <description>Можно было, конечно, осталось посчитать, сколько играли в тот &amp;#171;Дум&amp;#187; на Спектруме и подумать, почему оно появилось сильно позже чем всякие Dyzzy и почему сорцы всех этих шедевров написаны под PC, который маст дай. ;)&lt;br&gt;</description>
</item>

<item>
    <title>Проект LLVM развивает средства для безопасной работы с буфер... (n00by)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/128606.html#275</link>
    <pubDate>Thu, 13 Oct 2022 07:27:19 GMT</pubDate>
    <description>&amp;gt;&amp;gt; Ага, конечно. Интел не настолько дно в разработках.&lt;br&gt;&amp;gt; У них есть специальная инструкция rdtsc которой можно узнать, сколько тактов занимает &lt;br&gt;&amp;gt; та или иная инструкция или блок инструкций.&lt;br&gt;&lt;br&gt;В действительности rdtsc читает time stamp counter, и есть нюанс:&lt;br&gt;&lt;br&gt;The RDTSC instruction is not a serializing instruction. It does not necessarily wait until all previous instructions&lt;br&gt;have been executed before reading the counter. Similarly, subsequent instructions may begin execution before the&lt;br&gt;read operation is performed.&lt;br&gt;&lt;br&gt;Время одной инструкции измерить невозможно. В лучшем случае была симуляции конвейера в AMD Code Analyst, но в актуальной uProf такой функциональности нет, как и в инструментах Intel.&lt;br&gt;&lt;br&gt;&amp;gt; Если работать только с &lt;br&gt;&amp;gt; регистрами или с кешем первого уровня, то число тактов на инструкцию &lt;br&gt;&amp;gt; совпадает с 486 процессором.&lt;br&gt;&lt;br&gt;Потрудитесь подтвердить цитатой официальной документации, или прекратите генерировать удивительные гипотезы.&lt;br&gt;</description>
</item>

<item>
    <title>Проект LLVM развивает средства для безопасной работы с буфер... (none7)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/128606.html#274</link>
    <pubDate>Wed, 12 Oct 2022 13:32:03 GMT</pubDate>
    <description>&amp;gt; Ага, конечно. Интел не настолько дно в разработках.&lt;br&gt;&lt;br&gt;У них есть специальная инструкция rdtsc которой можно узнать, сколько тактов занимает та или иная инструкция или блок инструкций. Если работать только с регистрами или с кешем первого уровня, то число тактов на инструкцию совпадает с 486 процессором. Просто кеш стал больше, число ALU стало больше, а конвееры стали хитрее. Наоборот Intel создала RISC процессор под своим CISC процессором, чтобы разбить сложные инструкции на несколько маленьких и примитивных, что позволяет им чуть лучше гнать частоты, так как на нынешнем уровне скорость распространения электрического тока от тактового генератора и до конца каждой используемой инструкции, уже имеет значение.&lt;br&gt;Хотя да, это можно считать за изменение, но число тактов не уменьшилось уж точно.&lt;br&gt;</description>
</item>

<item>
    <title>Проект LLVM развивает средства для безопасной работы с буфер... (Аноним)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/128606.html#273</link>
    <pubDate>Wed, 12 Oct 2022 13:12:10 GMT</pubDate>
    <description>&amp;gt; У вас синтаксис подразумевает vec1 += vec2 + vec3 или vec1 + &lt;br&gt;&amp;gt; vec2 + vec3 &lt;br&gt;&amp;gt; ???&lt;br&gt;&lt;br&gt;А у вас сложение не коммутативное чтоли? Когда оно именно так - это всяко отдельный случай требующий отдельного внимания.&lt;br&gt;</description>
</item>

<item>
    <title>Проект LLVM развивает средства для безопасной работы с буфер... (Аноним)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/128606.html#272</link>
    <pubDate>Wed, 12 Oct 2022 13:10:08 GMT</pubDate>
    <description>&amp;gt; Но в реальном мире, кроме FOSS, ещё браузер загружает страницы с тоннами &lt;br&gt;&amp;gt; стороннего JS, которому наплевать на корректное сосуществование с другими просессами в &lt;br&gt;&amp;gt; архитектуре без виртуальной памяти.&lt;br&gt;&lt;br&gt;И при всем этом там приколы типа ROWHAMMER могут работать. Даже оттуда. Который как оказалось даже в DDR4 все же вылезает в определенных условиях. Сюрприз!&lt;br&gt;</description>
</item>

</channel>
</rss>
