The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

RapidDisk 1.0 - новая реализация RAM-диска для Linux

08.08.2011 15:56

В рамках проекта RapidDisk (rxdsk) подготовлен модуль ядра Linux с реализацией нового виртуального диска, хранящего данные в ОЗУ. Ключевыми особенностями RapidDisk является возможность лёгкого создания и удаления виртуальных дисков, быстрое изменение размера RAM-диска на лету в любой момент без потери данных, поддержка прозрачного сжатия данных (используется метод LZO) и обеспечение коррекции ошибок (для контроля целостности используется SHA-256). После создания RAM-диска независимо от заданного размера используется минимальное количество физической памяти, память расходуется по мере заполнения RAM-диска. В будущем планируется обеспечить возможность динамического изменения размера RAM-диска.

Проект изначально был разработан для использования в высоконагруженных системах, например, для таких применений как хранение кэша. Созданный при помощи RapidDisk виртуальный диск работает очень быстро, на заполнение 1 Гб тратится примерно 3 секунды. Монтируется RAM-диск как обычное блочное устройство, которое можно экспортировать в SAN или использовать в качестве замены CacheFS и CompCache (хранение раздела подкачки).

  1. Главная ссылка к новости (http://blog.petroskoutoupis.co...)
  2. OpenNews: Релиз Linux ядра 2.6.33
  3. OpenNews: MiniWheatFS - FUSE-модуль, расширяющий tmpfs через хранение данных в обычной ФС
  4. OpenNews: RAM-диск, синхронизирующий данные на постоянный носитель, для Linux
  5. OpenNews: FS-Cache и CacheFS: кеширование для сетевой файловой системы
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/31428-ramdisk
Ключевые слова: ramdisk, disk, kernel, linux, RapidDisk
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (33) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, white_raven (?), 16:14, 08/08/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    "для контроля целостности используется SHA-256" накуя спрашивается? память с ECC глючит? ну тогда никакая сха не поможет.
     
     
  • 2.5, Andrey Mitrofanov (?), 16:29, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >память с ECC глючит?
    >сха не поможет.

    Не-не-не, всё не так, как на самом деле! У него на вики написано -- "Error-Correction (SHA-256)". А уж как "эррор-корекшин", sha-256 всяко круче какого-то ecc! Даже если мы и не узнаем никогда, как это -- sha и, вдруг, корекшин...

     
  • 2.6, Stax (ok), 17:19, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А может это защита от эксплоитов? Ну, чтобы через /dev/mem битики не подправили..
     
  • 2.9, anonymous from da LOR (?), 17:49, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, чтобы хотя бы знать, что всё плохо.
     
  • 2.25, Аноним (-), 01:06, 09/08/2011 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А какие материнки для десктопов поддерживают ECC? Для десктопов это очень редкое явление.
     
     
  • 3.29, Аноним (-), 09:58, 09/08/2011 [^] [^^] [^^^] [ответить]  
  • –2 +/
    300 моделей к вашим услугам:
    http://market.yandex.ru/guru.xml?CMD=-RR=0,0,0,0-PF=2142560456~EQ~sel~x134846
     
     
  • 4.31, Аноним (-), 16:32, 09/08/2011 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Выбрать народные ASUS, Gigabyte, MSI и получится 12 плат, из которых половины нет в продаже.
     

  • 1.2, Аноним (-), 16:17, 08/08/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    зачем хранить раздел подкачки на виртуальном диске в RAM?
     
     
  • 2.3, Аноним (-), 16:20, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > зачем хранить раздел подкачки на виртуальном диске в RAM?

    Чтобы сжатие использовать, swap очень хорошо жмется. Например, есть 4 Гб, выделяем 2 Гб под своп в рамдиске с сжатием и получаем 5 Гб виртуального ОЗУ без особой потери производительности.

     
     
  • 3.18, Аноним (-), 20:44, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Хм...стоит обсудить =) Как мне помниться своп служит для представления виртуальной памяти. А из ОЗУ при нехватке места, данные сливаются в виртуальную память. Своп как я понимаю хочется замаписть в ОЗУ. Эт Perpetuum Mobile получается какой-то =)
     
     
  • 4.21, Аноним (-), 21:34, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Хм...стоит обсудить =) Как мне помниться своп служит для представления виртуальной памяти.
    > А из ОЗУ при нехватке места, данные сливаются в виртуальную память.
    > Своп как я понимаю хочется замаписть в ОЗУ. Эт Perpetuum Mobile
    > получается какой-то =)

    Мне вот тоже кажется, что для приложений, которым это действительно нужно, выгоднее увеличить их собственные кеши в памяти, а остальное отдать ОС на откуп. Конечно если эти самые приложения умеют сжимать кеши.

     
     
  • 5.22, Аноним (-), 21:35, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    >> Хм...стоит обсудить =) Как мне помниться своп служит для представления виртуальной памяти.
    >> А из ОЗУ при нехватке места, данные сливаются в виртуальную память.
    >> Своп как я понимаю хочется замаписть в ОЗУ. Эт Perpetuum Mobile
    >> получается какой-то =)
    > Мне вот тоже кажется, что для приложений, которым это действительно нужно, выгоднее
    > увеличить их собственные кеши в памяти, а остальное отдать ОС на
    > откуп. Конечно если эти самые приложения умеют сжимать кеши.

    Или например увеличить размеры кеша ФС.

     
     
  • 6.27, rshadow (ok), 01:49, 09/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Чет вас понесло куда-то. Использую аналогичный zram несколько месяцев на десктопе с 2Гб оперативы. Полет нормальный.

    P.S. Свап обычно сжимается раз в 5 =) Так что считайте прибыль ...

     
  • 2.4, VoDA (ok), 16:23, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    чтобы можно было его сжать. в итоге больше приложений влезает в тот же объем ОЗУ и работает быстрее, чем с реальным swap on HDD.

    PS написано на одном из сайтов в новости ;)

     

  • 1.10, pavlinux (ok), 17:50, 08/08/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Э,... типа CONFIG_ZRAM  



    tristate "Compressed RAM block device support"
            depends on BLOCK && SYSFS
            select XVMALLOC
            select LZO_COMPRESS
            select LZO_DECOMPRESS
            default n
            help
              Creates virtual block devices called /dev/zramX (X = 0, 1, ...).
              Pages written to these disks are compressed and stored in memory
              itself. These disks allow very fast I/O and compression provides
              good amounts of memory savings.

              It has several use cases, for example: /tmp storage, use as swap
              disks and maybe many more.

              See zram.txt for more information.
              Project home: http://compcache.googlecode.com/


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

     
     
  • 2.16, Wormik (ok), 19:06, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Pavlinux, если будешь сравнивать этот виртуальный диск с обычным, напиши результаты!
     
     
  • 3.26, pavlinux (ok), 01:18, 09/08/2011 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Pavlinux, если будешь сравнивать этот виртуальный диск с обычным, напиши результаты!

    См. внизу. Фуфло это, в прямом смысле, там в коде только скелет блочного устройства,
    который понимает только read() и write()

      

     

  • 1.11, Аноним (-), 18:07, 08/08/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Олол.
    >Ключевыми особенностями RapidDisk является <…> быстрое изменение размера RAM-диска на лету в любой момент без потери данных, <…> В будущем планируется обеспечить возможность динамического изменения размера RAM-диска.
     
     
  • 2.12, Dmitry (??), 18:20, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    быстрое не динамическое
     
     
  • 3.17, Аноним (-), 20:00, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Разве "на лету" не означает "динамическое"?
     
     
  • 4.19, Аноним (-), 20:47, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Разве "на лету" не означает "динамическое"?

    Нет, "на лету" - это изменение по запросу, но без остановки работы, а динамическое - это автоматическое расширение по мере надобности.

     

  • 1.14, Аноним (-), 18:30, 08/08/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Интересно - а есть ли в линухе RAM диски с синком на HDD и планируют ли ето здесь?
     
     
  • 2.15, Ананимуз (?), 18:45, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Ссылки к новости, п.4.
     
  • 2.20, all_glory_to_the_hypnotoad (ok), 20:59, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    [петросян]и есть ли в линуксе фс на диске с возможностью кеширования часто используемых блоков в памяти[/петросян]
     
     
  • 3.23, pavlinux (ok), 23:41, 08/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > [петросян]и есть ли в линуксе фс на диске с возможностью кеширования часто
    > используемых блоков в памяти[/петросян]

    лучше кэшировать пиксели монитора, их там много, а цвета всего три - RGB :)
      

     
  • 2.28, Аноним (-), 09:08, 09/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Это элементарно пишется rc-шным скриптом, если есть ramdiskadm, к примеру.
     

  • 1.24, pavlinux (ok), 00:12, 09/08/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    >[оверквотинг удален]
    > сжатия данных (используется метод LZO) и обеспечение коррекции ошибок (для контроля
    > целостности используется SHA-256). После создания RAM-диска независимо от заданного размера
    > используется минимальное количество физической памяти,  память расходуется по мере заполнения
    > RAM-диска.   В будущем планируется обеспечить возможность динамического изменения размера
    > RAM-диска.

    Это какая-то децкая поделка, в коде ВООБЩЕ НЕТ НИ слова про SHA и LZO
    Работают только два сикала - read() и write(), остальные оно тупа не умеет.
    mkswap отрабатывает, swapon отваливается "unsupported command"
    mkfs.xxx - работают, mount -t xxx ... - КУЙ!

    Кто новость писал, отрывайте себе яйцы - это галимый Пиар!

     
     
  • 2.33, pavlinux (ok), 16:41, 09/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    >>[оверквотинг удален]
    > Это какая-то децкая поделка,

    Кстати, лучше не ставьте, даже если скомпилите и запустите,
    минут через 20  оно фризит всю систему. :)

     
     
  • 3.34, Анонимко (?), 17:42, 09/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Павел, респект и уважуха вам за ваши исследования. :)
    Кстати, как пользоваться ZRAM в штатном ядре той же ubuntu 10.04?
     
     
  • 4.35, log (ok), 18:12, 09/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Попробуйте compcache + m-a
     
  • 4.36, pavlinux (ok), 07:12, 10/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Павел, респект и уважуха вам за ваши исследования. :)
    > Кстати, как пользоваться ZRAM в штатном ядре той же ubuntu 10.04?

    У меня такой скриптик, где-то в /etc/init.d/boot.local (SuSE 11.4)




    /sbin/modprobe -q zram > /dev/null 2>&1;

    if [ -e /dev/zram0 ]
        then
            /sbin/swapoff /dev/sdb3 > /dev/null 2>&1
            echo 1 > /sys/block/zram0/reset
            echo $((128*1024*1024)) > /sys/block/zram0/disksize;
            echo 1 > /sys/block/zram0/initstate
            /sbin/mkswap /dev/zram0
            /sbin/swapon /dev/zram0 >/dev/null 2>&1;
            /sbin/sysctl -w vm.swappiness=32
    fi


     

  • 1.30, dsaas (?), 14:27, 09/08/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а зачем SHA это же криптографический хеш ?
     
     
  • 2.32, pavlinux (ok), 16:39, 09/08/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Обычная контрольная сумма, только замороченная, необратимая, и почти без коллизий.

      

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2021 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру