Задать вопрос
@mkone112
Начинающий питонист.

Работа с памятью и гибернация в linux как в windows?

Как заставить linux вести себя как винда?
1. Сжатая память. Винда на ходу жмет память, чем меньше памяти - тем больше сжатой. В линуксе есть zram, но он откусывает кусок памяти которая всегда недоступна. Насколько хорошо это работает, и есть ли альтернативы?
2. hiberfil.sys в винде может быть 50% от размера памяти. Для работы свопа на linux - его размер должен быть не меньше объема памяти. Можно ли заставить linux уходить в своп со сжатием содержимого, и выходить наоборот с декомпрессией?
3. superfetch. При запуске винда несколько минут тупит подгружая привычное ПО сразу в память. В результате даже с очень медленным диском и достаточным объемом памяти можно вполне комфортно работать. Для линукса есть preload. Вопрос - почему он не включен по умолчанию? Фича кажется весьма полезной. Там есть какие-то подводные камни, кроме более длительного запуска? Работает ли preload так-же хорошо как superfetch в винде?
  • Вопрос задан
  • 322 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 4
gbg
@gbg Куратор тега Linux
Любые ответы на любые вопросы
Главное, что нужно понимать - линукс на десктопе - это для энтузиастов линукса, которые умеют ставить эксперименты и решать проблемы. Многие вещи дистанционно не лечатся, поэтому надеяться, что вместо вас все сделают мягко говоря наивно.

1) Зависит от поставленных задач. У меня стоит, я юзаю, нраица. Впрочем, у меня еще и KSM включен и виртуалки крутятся под KVM, и все это на ноуте. Иногда люди в кафешках выворачивют шею, видят как я шпарю в консольке в виме на C++ и не понимают, шоэто (наверное думают, что я - какир, или как там его).
Еще раз - оценить пригодность того или иного инструмента просто так в вакууме без конкретной задачи и критерия оценивания - невозможно и бессмысленно Вы можете сформулировать ваше хорошо работает?

2) Он и так жмет, а потом разжимает. Вот смеху-то будет, если своп будет сам по себе заполнен чем-то, а вы туда еще и рам захотите засунуть и она не влезет.
Я бы больше беспокоился обо всяких кривых дровах вроде NVIDIA, которые могут просыпаться через раз или вообще писать GPU has fallen of the bus и все тут

3) Ну включите и попробуйте. Или вы думаете, что здесь вы найдете энтузиаста, который будет с секундомером заниматься спортивным ребутом венды и линукса в разных конфигах, чтобы удовлетворить ваше любопытство? Может этот энтузиаст - вы?

Я бы например сказал, что после загрузки тарахтеть диском (в 2020х у кого-то стоит система на блинном диске? Серьезно?) и грузить НА ВСЯКИЙ СЛУЧАЙ фотошоп, который мне не уперся, это так себе занятие.

В целом, берете SSD хоть на 256 гигабайт, ставите туда систему, нарезаете 64 гигабайта под свапник и не кипятите себе мОзги всяким колхозом.
Ответ написан
CityCat4
@CityCat4
//COPY01 EXEC PGM=IEBGENER
Я не совсем понял, какая тут корреляция между hiberfil.sys (который есть копия памяти в момент ухода в гибернацию) и свопом, который есть область страничного обмена. Но на всякий случай - zswap?
Мне, честно говоря, непонятно - зачем все это? Лютый недостаток памяти?
Ответ написан
saboteur_kiev
@saboteur_kiev Куратор тега Linux
software engineer
1. Сжатая память? Вы уверены? можно документацию где это работает по дефолту?
2. гибернация это не своп. Не путайте pagefile.sys и hiberfil.sys - это совершенно разные и независимые штуки.
Swap на линуксе может быть вообще какой угодно.
3. Это не совсем так работает. С достаточным объемом памяти Линукс сам со всем разбирается. Просто Линукс не то, чтобы привык что его часто ребутают. А если не ребутать, он в принципе старается кешировать все, что может.
Ответ написан
ValdikSS
@ValdikSS
В линуксе есть zram, но он откусывает кусок памяти которая всегда недоступна.
Вы заблуждаетесь, не «откусывает».

Насколько хорошо это работает
Работает изумительно, см. https://notes.valdikss.org.ru/linux-for-old-pc-fro...

Для работы свопа на linux - его размер должен быть не меньше объема памяти.
Это тоже заблуждение, будет работать и с меньшим объёмом.

Можно ли заставить linux уходить в своп со сжатием содержимого, и выходить наоборот с декомпрессией?
Именно так сделать, вроде бы, не получится, но можно использовать опцию backing file в zram — в файл будут сбрасываться несжимаемые данные.
Образ hibernate в Linux сжимается по умолчанию.

Для линукса есть preload. Вопрос - почему он не включен по умолчанию?
В Linux многое не включено по умолчанию: возможно, в случае с preload эффект не слишком заметен. Readahead был не так давно удалён из systemd по причине отсутствия у разработчиков HDD — все перешли на SSD.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы