<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Создание искуственной задержки в работе оперативной памяти</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID15/3821.html</link>
    <description>Доброго времени суток.&lt;br&gt;Опять по работе встала задача в ограничении скорости работы памяти в Linux (SL 6.2 x86_64). В прошлый раз ограничение RAM-диска прошло успешно, но не удовлетворило всех потребностей.&lt;br&gt;Итак, необходимо вставить определенную задержку при _любом_ обращении к оперативной памяти. Реализация в виде модуля ядра.&lt;br&gt;Варианты, которые рассматриваются:&lt;br&gt;1) перехват библиотечных функций - узко и малоприменимо&lt;br&gt;2) перехват функций ядра для работы с памятью&lt;br&gt;3) перехват системных вызовов&lt;br&gt;&lt;br&gt;Первый вариант был отметен сразу - не подходит. &lt;br&gt;Нужен совет в выборе из двух вариантов с возможными косяками на пути.&lt;br&gt;Также хотелось бы узнать, где найти полный список функций ядра для работы с памятью (kmalloc, vmalloc, kfree - для выделения, и, насколько я понял, обращение идет через open, read, write).&lt;br&gt;</description>

<item>
    <title>Создание искуственной задержки в работе оперативной памяти (trmt)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID15/3821.html#3</link>
    <pubDate>Tue, 15 May 2012 03:31:54 GMT</pubDate>
    <description>Спасибо вам обоим за информацию. Теперь есть еще тонна вещей, над которыми стоит задуматься. и главная - а стоит ли оно того:) Эмулятор попробую.&lt;br&gt;</description>
</item>

<item>
    <title>Создание искуственной задержки в работе оперативной памяти (deadmustdie)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID15/3821.html#2</link>
    <pubDate>Mon, 14 May 2012 09:58:33 GMT</pubDate>
    <description>Для торможения прикладных программ можно запустить их в эмуляторе (виртуальной машине без ускорения). Пример эмулятора - bochs. Медленная работа с памятью (и всех других инструкций процессора) гарантирована, инструкции по работе с памятью можно дополнительно замедлить, &quot;поковырявшись&quot; в коде эмулятора.&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Создание искуственной задержки в работе оперативной памяти (Anonimus)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID15/3821.html#1</link>
    <pubDate>Mon, 14 May 2012 09:49:45 GMT</pubDate>
    <description>Работа с памятью (кстати сразу вопрос, о какой именно памяти мы говорим ;) лежит гораздо ниже каких либо системных вызовов. С памятью работает процессор, а точнее MMU. Ядро только управляет этим процессом устанавливая те или иные регистры, обеспечивает пейджинг страниц и т.д. Потом следует не забывать о наличие кешей L1 L2, наличии TLB... &lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt; Реализация в виде модуля ядра.&lt;br&gt;&amp;gt; Варианты, которые рассматриваются: &lt;br&gt;&amp;gt; 1) перехват библиотечных функций - узко и малоприменимо &lt;br&gt;&amp;gt; 2) перехват функций ядра для работы с памятью &lt;br&gt;&amp;gt; 3) перехват системных вызовов &lt;br&gt;&amp;gt; Первый вариант был отметен сразу - не подходит.&lt;br&gt;&amp;gt; Нужен совет в выборе из двух вариантов с возможными косяками на пути. &lt;br&gt;&amp;gt; Также хотелось бы узнать, где найти полный список функций ядра для работы &lt;br&gt;&amp;gt; с памятью (kmalloc, vmalloc, kfree - для выделения, и, насколько я &lt;br&gt;&amp;gt; понял, обращение идет через open, read, write).&lt;br&gt;&lt;br&gt;</description>
</item>

</channel>
</rss>
