[win] swap-файл под Windows
а что мешает просто указать винде создавать pagefile.sys именно в том разделе (и определить его размер - например, минимальный в весь диск - только нах это непонятно...). и поставить опцию при очищать своп при выключении компа (а можт и не надо).
С разделом работа идет быстрее, поскольку он не фрагментирован и нет файловой системы. Можно readahead нескольких страниц, например, быстрее делать.
Лучше всего чтобы такого файла не было совсем;)
ты конкретную последовательность действий укажи. Я понятия не имею, где в винде настраиваются подобные вещи.
afaik винды так не умеют(раздел под своп) тока юнихи всякие...
>ты конкретную последовательность действий укажи. Я понятия не имею, где в винде настраиваются подобные вещи.
создаёшь раздел (лучше в самом начале диска)
винда какая? для ХР/2k/2k3: My Computer --> Properties (Свойства) --> закладка Дополнительно --> первая (верхняя кнопка Параметры) --> закладка Дополнительно --> нижний раздел Виртуальная память (Pagefile вроде) --> кнопка Изменить --> выбираешь там свой тот самый раздел --> ставишь отметку "Особый размер" и указываешь макс и мин. --> Кнопка "Задать" --> А на своём системном диске (С: наверно) убираешь файл подкачки (ставишь точку на "Без файла подкачки") --> Кнопка Задать. --> Кнопка ОК --> Reboot.
уфф.. доступно объяснил? если винда 98 - малясь по другому, но тоже можно найти в настройках.
Это не так. Головкам диска приходится мотаться от системной папки до свопа и обратно..это тормозит. Если один физический диск, то поставить своп надо на тот же раздел, что и папку с виндами...хотя имхо, пофиг, у меня своп на striped raid висит
странно, а мне кажется, что лучше вообще разносить своп и системные файлы, к которым система постоянно обращается. Т.е. вообще своб лучше даже на отдельный диск выносить. Я не прав?
Еще один вопрос. Винда при каждой загрузке создает файл подкачки? Т.е. если я этот же раздел заюзаю для юниховой подкачки, после перезагрузки под винду не возникнет проблем?
А расскажи вкратце что это такое, плз. Сколько у тебя дисков в raid?
только винда или только linux swap
своп и временные файлы лучше выносить на отдельный Физический диск, а не на партицию на системном диске. Т.е надо 2 харда.
в raid 2 диска, сделано софтварно. striped- половина инфы пишется на один диск, половина на другой-полосками. В итоге получаем некоторый прирост производительности при чтении.
- Не верю!
ЗЫ: мне когда-то статейка попадалась на эту тему, где подобная конфигурация была реализована. К сожалению, я не смог ее найти.
Я это и имел ввиду.
>striped- половина инфы пишется на один диск, половина на другой-полосками
Так это raid 0, правильно?
если ты хочешь и линукссвоп и виндовссвоп на одну партицию, то это возможно только если виндовс умеет создавать файлы на файловой системе lynux swap.
он этого делать не умеет. -> нельзя
другое дело, если линух умееет своп размещать на fat или fat32
а как софтварно рэйд сделать в винХП?
умеет.
>только винда или только linux swap
Неправда
Вот, например, решение: http://www.acc.umu.se/~bosse/index.html (раздел SwapFS). Причём при желании его ещё можно упростить (и с фрёй подружить).
fat32 - раздел только для swap-файла, при загрузке линукса делать dd, mkswap, swapon
при загрузке windows тоже наверное надо что-то делать, чтобы стереть следы постороннего вмешательства
есть ещё Linux Swap Space mini-howto, но там несколько устаревшая информация, в частности с тех пор производительность при свопинге в файл в линуксе сильно увеличилась
только чего добиваетесь такими извращениями, экономии максимум 1G на диске?
Вот именно это оно (по большому счёту) и делает.
Но чувак, видать, расчувствовался, и сделал ещё, чтобы при этом линуксовая сигнатура не портилась. Т.е. даже mkswap при каждой загрузке в линукс делать не надо.
умеешь это сделать?
P.S. И я никого не призываю этим пользоваться (и сам не пользуюсь). Просто сообщаю факт.
нужно только windows научить при загрузке инициализировать раздел
>нужно только windows научить при загрузке инициализировать раздел
Именно. Если лень что-то придумывать самому, можно просто от вышеуказанного драйвера отрезать всё, кроме функции инициализации.
скорее, оторвать только проверку линуксовой сигнатуры, если она там вообще есть
Есть. Видимо, главным образом, для того, чтобы случайно криворукий юзер какой-нибудь другой раздел не использовал.
Но там ещё есть целый огород для того, чтобы эта сигнатура не портилась виндой (лень подробности писать). Вот его тоже нужно устранить, ибо он накладные расходы даёт.
а как софтварно рэйд сделать в винХП?
PQ Magic'om делаешь на своих дисках unallocated space, одинаковый по размеру. Затем коневертируешь диски в динамические (Dynamic disk далее выбираешь Создать раздел на unallocated space, говоришь, что raid и далее в зависимости от того, что тебе нужно идешь по шагам мастера.
А зачем вообще это делать, если правда, что FreeBSD безразлично содержимое свопа в момент его подключения? А уже при загрузке винды эту заботу на себя возьмет драйвер.
ЗЫ: задавая вопрос, я лишь хочу убедиться, что у меня нет катастрофического непонимания сути дела и можно опробовать этот драйвер "as is". Я мельком заглянул в сорцы, испугался и теперь всячески хочу избежать кодокопания
Что делает этот драйвер:
1) [Как я уже выше писал]. При запуске проверяет, имеется ли в указанном разделе сигнатура линуксового свопа (которая располагается в начале раздела). Если нет, то дальше не работает. Зачем так? Чтобы не "мешать" линуксу (сомнительное достижение ввиду очевидной возможности делать mkswap при каждой загрузке) + защита от попытки использовать не тот раздел. Последнее, пожалуй, полезно. Например, если будешь перетыкать винты и нумерация дисков изменится, можно поиметь неприятности. Убрать проверку: вырежь место, где вызывается IsDeviceLinuxSwap, ну или просто подправь эту функцию, чтобы она всегда возвращала STATUS_SUCCESS.
2) Если всё ок, то форматит этот раздел (без куска, занятого сигнатурой) в FAT16.
3) Далее занимается тем, что фильтрует все запросы к этому разделу, поправляя их на длину этой сигнатуры. Грубо говоря, система "видит" раздел чуть меньшего размера, чем реальный, с FAT16 на нём. На этом диске и создаётся своп-файл. Таким образом, привносятся (небольшие?) накладные расходы при каждом обращении к этому диску. И от всего этого можно* с чистой совестью избавиться. Т.е. реально от этого драйвера даже не нужно, чтобы он был загружен и "работал" - достаточно дать ему выполнить п. 2) при старте системы, и всё. Для этого надо не задумывась отрезать процентов девяносто кода.**
* Но совершенно необязательно
** Мне лень щас рюхать, но по-моему, требуемые действия (т.е. поформатить раздел при старте системы) вполне можно и в userspace сделать, т.е. и драйвер нафиг не нужен - но это уже потребует конструктивных усилий.
Оставить комментарий
aliska12
Можно ли создать на диске отдельный раздел и заставить винду использовать его целиком, как swap?ЗЫ: вопрос родился в