Всем привет.Вот собираюсь с винды перейти на Linux, много чего уже почитал, но остался один (на данный момент) принципиальный вопрос, который нужно разрешить, а находится только половинчатая, обрывочная информация.
Существо проблемы. По роду деятельности приходится выполнять громоздкие математические вычисления, основная нагрузка при этом ложится на процессор и жесткий диск. Причем мощность процессора Athlon явно превышает возможности жесткого диска по зависи/считывании информации. По этому в рамках Винды, был реализован виртуальный жесткий диск в оперативной памяти, что достаточно заметно ускорило работу компьютера и вычислений. Реализовано это было программой RamDisk.
В связи с этим вопрос. Возможно ли сделать, что-то подобное под Linux-ом? Информацию, которую удалось найти касалась операционки FreeBSD. Говорилось, что-то про Memory Files Sistem, спомощью которой, уже монтируется виртуальный жесткий диск. Подскожите кто-что знает или где это можно было бы посмотреть.Заранее благодарен, Андрей.
Привет!думаю, это может помочь:
http://linux.yaroslavl.ru/docs/howto/Bootdisk-HOWTO/buildroo...
первый пункт абзаца Создание файловой системы как раз относится к ramdiskA еще есть google на котором обычно все ищется влет!
Успехов!
Привет!Спасибо за помощь! Посмотрел сайт, надо заметить, что что-то похожее уже находил, с помощью yandex-а. Но для меня все же остается вопрос, собственно по этому и обратился в форум.
Возможно, я мало знаю про unix-о подобные системы, а стереотип мышления остался виндовый. И все-таки возможно ли будет использовать такой диск как самостоятельное устройство (во всяком случае пока не будет перегружен комп), я так и не понял.
>Привет!
>
>Спасибо за помощь! Посмотрел сайт, надо заметить, что что-то похожее уже находил,
>с помощью yandex-а. Но для меня все же остается вопрос, собственно
>по этому и обратился в форум.
>Возможно, я мало знаю про unix-о подобные системы, а стереотип мышления остался
>виндовый. И все-таки возможно ли будет использовать такой диск как самостоятельное
>устройство (во всяком случае пока не будет перегружен комп), я так
>и не понял.в unix диски используют не как самостоятельные файловые устройства, а монтируют в общую файловую систему. смонтируешь его куда тебе надо и используй как любой другой диск.
>>Привет!
>>
>>Спасибо за помощь! Посмотрел сайт, надо заметить, что что-то похожее уже находил,
>>с помощью yandex-а. Но для меня все же остается вопрос, собственно
>>по этому и обратился в форум.
>>Возможно, я мало знаю про unix-о подобные системы, а стереотип мышления остался
>>виндовый. И все-таки возможно ли будет использовать такой диск как самостоятельное
>>устройство (во всяком случае пока не будет перегружен комп), я так
>>и не понял.
>
>в unix диски используют не как самостоятельные файловые устройства, а монтируют в
>общую файловую систему. смонтируешь его куда тебе надо и используй как
>любой другой диск.Привет!
Я правильно понимаю, что если с помощью какой-то программы (или с помощью чего-то еще) я могу из части оперативки сделать подобие диска, то потом я ее могу юзать как мне надо? ОК, тогда вот какой вопрос еще, а какая файловая система будет доступна под подобный виртуальный диск? Стандартная, используемая в linux-е, или это будет какая-то специальная файловая система.
Спасибо.
>Я правильно понимаю, что если с помощью какой-то программы (или с помощью
>чего-то еще) я могу из части оперативки сделать подобие диска, то
>потом я ее могу юзать как мне надо? ОК, тогда вот
>какой вопрос еще, а какая файловая система будет доступна под подобный
>виртуальный диск? Стандартная, используемая в linux-е, или это будет какая-то специальная
>файловая система.с точки зрения системы это конечно будет другая файловая система. с точки зрения пользователя: файловая система в unix одна, начинается от /
про диски а,б,сэ и зед, а также различные другие можно забыть раз и навсегда.
все проделал так:
$ sudo cat /etc/lilo.conf
boot=/dev/hde
map=/boot/map
install=/boot/boot.b
vga=normal
default=2420-alt08-smp
lba32
prompt
timeout=50
disk=/dev/hde bios=0x80
image=/boot/vmlinuz-2.4.20-alt0.8-smp
label=failsafe
root=/dev/hde1
initrd=/boot/initrd-2.4.20-alt0.8-smp.img
append=" failsafe"
read-only
image=/boot/vmlinuz-2.4.20-alt0.8-smp
label=2420-alt08-smp
root=/dev/hde1
read-only
optional
vga=normal
ramdisk=4096
initrd=/boot/initrd-2.4.20-alt0.8-smp.imgдалее после lilo и перегруза:
$ sudo mkfs -t ext2 /dev/ram0
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
1024 inodes, 4096 blocks
204 blocks (4.98%) reserved for the super user
First data block=1
1 block group
8192 blocks per group, 8192 fragments per group
1024 inodes per groupWriting inode tables: done
Writing superblocks and filesystem accounting information: doneThis filesystem will be automatically checked every 38 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.$sudo mount /dev/ram0 /mnt/disk
$ df | grep disk
/dev/ram0 3.9M 13K 3.7M 1% /mnt/diskПросю - можно писать-читать!
>все проделал так:> Просю - можно писать-читать!
many many thanks
Больше сказать нечего, ща буду разбираться, че к чему.
>Вот собираюсь с винды перейти на Linux, много чего уже почитал, но
>остался один (на данный момент) принципиальный вопрос, который нужно разрешить,
>а находится только половинчатая, обрывочная информация.
>Существо проблемы. По роду деятельности приходится выполнять громоздкие математические вычисления, основная нагрузка
>при этом ложится на процессор и жесткий диск. Причем мощность процессора
>Athlon явно превышает возможности жесткого диска по зависи/считывании информации. По этому
>в рамках Винды, был реализован виртуальный жесткий диск в оперативной памяти,
>что достаточно заметно ускорило работу компьютера и вычислений.Вообще-то Linux, как и любая другая *nix-подобная система, использует
всю память, не выделенную процессам, для кеширования чтения/записи
[с/на диск]. Так что, скорее всего, создавая этот RAM-disk, Вы снижаете
производительность, т.к. :1) сама файловая система [далее ФС] занимает место,
2) запись в ФС происходит медленне, чем кеширование,
3) нельзя освободить неиспользуемую память или увеличить размер
RAM-disk'-а "на лету"
>В связи с этим вопрос. Возможно ли сделать, что-то подобное под Linux-ом?
>Информацию, которую удалось найти касалась операционки FreeBSD.Можно. Надо собрать ядро с RAM-disk support либо tmpfs support.
Но я сомневаюсь, что Вам это надо (см. выше) - все равно все операции
записи кешируются.
>Вообще-то Linux, как и любая другая *nix-подобная система, использует
>всю память, не выделенную процессам, для кеширования чтения/записи
>[с/на диск]. Так что, скорее всего, создавая этот RAM-disk, Вы снижаете
>производительность, т.к. :
>
>1) сама файловая система [далее ФС] занимает место,
>2) запись в ФС происходит медленне, чем кеширование,
>3) нельзя освободить неиспользуемую память или увеличить размер
>RAM-disk'-а "на лету"
>
>Можно. Надо собрать ядро с RAM-disk support либо tmpfs support.
>Но я сомневаюсь, что Вам это надо (см. выше) - все равно
>все операции
>записи кешируются.Привет всем!
Спасибо за ответы!
Может я не очень понимаю принцип кэширования, но в данном случае при использовании этой программы кэширование ничего не даст. Два слова о программе. ядро программы создано где-то в 70-х годах, с тех пор основные принципы построения и исполнения не претерпели изменений, поскольку понадобилось бы проводить лицензирование. Если в двух словах, то принцип следующий. Есть основная библиотека ядерных процессов. Весит она около 100 метров. Один исполнительный модуль состоит из следующих этапов
1.обращения к этой библиотеке, последовательный поиск и считывание определенных процессов, причем обращение к жесткому диску происходит столько раз сколько рассматривается процессов. В настоящий момент процессов около 100, так что можете судить об объеме информации прокачиваемой по шине.
2.затем, происходит математическая обработка с промежуточной записью на жесткий диск.
3.ну и так далее в зависимости от набранных модулей. В настоящий момент задается около 30 модулей.Так что на Athlone с частотой 1,4 основное время (около 80%) занимает обращение к жесткому диску.
Так что на сколько я понимаю, скорость обращения память-память, будет быстрее чем память-жесткий диск, даже через кэш.
а конечно не специалист
но мне так кажется что идея с РАМ-диском имеет под собой реальную основу и явно имеет местл быть под солнцем
я таким образом собираю большинство программ под freebsd правда но это не имеет значения линукс фря - одно и тоже
смысл в том что сборка из исходников это довольно трудоёмкий процесс на проц и на диск и рам-диск заметно ускоряет работу причём судя по статистике если я раньше им не пользовался то вся нагрузка упиралась в диск так как проц был загружен не полностью а после того как я начал его использовать то нагрузка на проц стала 100% что говорит о том что проблем с диском больше не стало и всё стало упираться в процессор - да и скорость компиляции заметно повысилась
так что удачи - ориентируйся имеено на это и как идея к размышлению попробуй параллельность(читай кластеры или многопроцессорность - на что денег хватит:)) )