Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
VPS/VDS серверы. 30 локаций на выбор

Серверы VPS/VDS с большим диском

Хорошие условия для реселлеров

4VPS.SU - VPS в 17-ти странах

2Gbit/s безлимит

Современное железо!

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

✅ Дешевый VPS-хостинг на AMD EPYC: 1vCore, 3GB DDR4, 15GB NVMe всего за €3,50!

🔥 Anti-DDoS защита 12 Тбит/с!

RAMDISK(HW)

НАЗВАНИЕ
ramdisk - блочно-ориентированное устройство памяти (псевдодиск).

ОПИСАНИЕ
Драйвер устройства ramdisk обеспечивает блочный интерфейс к памяти. ramdisk можно использовать как и любое другое блочное устройство, включая установку файловых систем с помощью mkfs(8). Существует восемь типов доступных псевдодисков.

Характеристики файла ramdisk определяются малым числом устройства. Биты этого числа содержат информацию о размере устройства, его долговечности и номере одного из восьми псевдодисков.

Три младших бита малого числа устройства определяют, какое из восьми упомянутых псевдодисков будет использоваться.

Следующие четыре бита определяют размер этого псевдодиска. Размер ramdisk должен быть кратен 2 и должен быть не меньше 16K. Поскольку имеется 4 бита, то может быть 16 различных размеров, начиная с 16K и удваивая это значение при каждом единичном увеличении указателя размера. При этом будет получаться 16K, 32K, 64K и т.д.

Самый старший бит является указателем долговечности. Если он установлен, то этому псевдодиску будет постоянно выделяться заданная память, которая отключается только при перезагрузке системы. Постоянные псевдодиски могут резервироваться только привилегированным пользователем. Но когда постоянный псевдодиск зарезервирован (посредством его открытия), он может использоваться для чтения и записи всеми, кто имеет соответствующее разрешение в дескрипторе псевдодиска.

Если этот бит сброшен и если процессы, открывающие его, отсутствуют, то псевдодиск отключается. Для создания легко удалимого, но полу-постоянного псевдодиска используйте отдельный процесс для открытия и поддержания этого устройства в течение нужного времени.

Поскольку полный набор восьми псевдодисков поглотил бы 256 индексных дескрипторов, то при инсталляции системы создается только один ramdisk размеров 16K (/dev/ram00). Администратор системы может проанализировать существующий файл этого устройства, чтобы определить главное (большее) число устройства для создания других потребовавшихся псевдодисков. Все эти устройства будут иметь одинаковое главное число устройства.

В следующей таблице показано, как конструируется малое число устройство:

Структура малого числа устройства
ОписаниеДолговечностьРазмер (см. cлед. таб.)Номер псевдодискаМалое число устройства
16K (#1)
(Временное)
000000011
16K (#1)
(Постоянное)
10010000129
64K (#0)
(Временное)
0000000016
512K (#7)
(Постоянное)
101011111

Содержимое поля размера и соответствующий размер псевдодиска приведены в следующей таблице:

Биты размераРазмер устройства
0 0 0 016K
0 0 0 132K
0 0 1 064K
0 0 1 1128K
0 1 0 0256K
0 1 0 1512K
0 1 1 01M
0 1 1 12M
1 0 0 04M
1 0 0 18M
1 0 1 016M
1 0 1 132M
1 1 0 064M
1 1 0 1128M
1 1 1 0256M
1 1 1 1512M

Для создания устройства ramdisk выполните следующие действия:

  1. Создание дескриптора устройства
    Вначале вы должны создать устройство, на котором будет располагаться псевдодиск. Соответствующая команда имеет вид:
    
       mknod device_name b_or_c major_device_number minor_device_number
    
    
    где b_or_c - "b" или "c". "b" предназначается для блочных устройств, его вам и нужно задать. Главным числом всегда будет 31. Малое число определяется по приведенной выше таблице. Малое число это сумма значений из трех колонок.

    Долговечность:

    
        постоянное устройство - 128, временное - 0.
    
    
    Размер:
    
    16K = 0    124K = 24  1M = 48   8M  = 72
    
    32K = 8    256K = 32  2M = 56   16M = 80
    
    64K = 16   512K = 40  4M = 64   32M = 88
    
    
    Номер псевдодиска: 0 - 7. Примечание: Доступно только 8 устройств. Два устройства с различными размерами не могут иметь одинаковый номер.

    Например, при создании постоянного псевдодиска размером 64K можно выбрать малое число устройства в пределах от 144 до 151. Если номер диска будет 1, то соответствующая команда примет вид:

    
       mknod /dev/ram64 b 31 145
    
    
  2. Создание файловой системы
    Следующая команда создает на псевдодиске файловую систему:
    
       mkfs device_name size_of_file_in_Bsize_blocks
    
    
    В данном примере команда для создания файловой системы размером 64K будет выглядеть так:
    
       mkfs /dev/ram64 64
    
    
  3. Монтировка файловой системы
    Следующая команда монтирует выбранное устройство на заданном месте:
    
       mount device_name mount_point
    
    
    Команда монтировки 64-килобайтового псевдодиска на /mnt будет:
    
       mount /dev/ram64 /mnt
    
    

Для создания файловой системы на временном псевдодиске файл устройства нужно открыть между командами mkfs и mount. Иначе псевдодиск будет создан при запуске команды mkfs и отключен по ее завершении. А когда псевдодиск смонтирован, он быдет открыт, пока его не демонтируют.

Следующий фрагмент программы оболочки демонстрирует использование mkfs для временного псевдодиска размером 512K и его монтировку:


  (  /etc/mkfs /dev/ram40 512

     /etc/mount /dev/ram40 /mnt

  ) < /dev/ram40

ПРИМЕЧАНИЯ
Псевдодиски должны занимать непрерывную область памяти. Если свободная память фрагментируется, то открытие псевдодиска может не удасться, даже если общей памяти будет достаточно. В идеале все псевдодиски должны резервироваться при запуске системы. Это предохраняет псевдодиски от влияния фрагментации памяти.

Псевдодиски создаются для использования в специализированных прикладных программах. Во многих случаях при использовании псевдодисков вы можете наблюдать ухудшение эффективности функционирования системы, потому что система UNIX обычно способна лучше использовать память.

ФАЙЛЫ


 /dev/ram00

СМ. ТАКЖЕ
mkfs(8), mount(8), mknod(1)

VPS в 21 локации

От 104 рублей в месяц

Безлимитный трафик. Защита от ДДоС.

🔥 VPS до 5.7 ГГц под любые задачи с AntiDDoS в 7 локациях

💸 Гифткод CITFORUM (250р на баланс) и попробуйте уже сейчас!

🛒 Скидка 15% на первый платеж (в течение 24ч)

Скидка до 20% на услуги дата-центра. Аренда серверной стойки. Colocation от 1U!

Миграция в облако #SotelCloud. Виртуальный сервер в облаке. Выбрать конфигурацию на сайте!

Виртуальная АТС для вашего бизнеса. Приветственные бонусы для новых клиентов!

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 7861149
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...