Использование своп mac os

Работа со Swap в Mac OS X

Работа со Swap в Mac OS X

Я писал заметку о там как работать со swap-ом на Debian-о и RedHat подобных ОС. Но меня заинтересовало как обстоит дело на ОС Mac OS X. По умолчанию, файл подкачки имеется в системе. И как быть? Нужен он или все же нет?

Чтиво о чем уже говорилось и писалось:

Увеличить SWAP на Ubuntu/Debian/Mint

Добавить Swap в CentOS/Fedora/RedHat

Но а теперь я расскажу все за и против о файле подкачки в макосе.

Работа со Swap в Mac OS X

Файл подкачки (Swap)– это механизм для работы с виртуальной памятью. Основная задача заключается в том, чтобы неактивные фрагменты памяти перемещать из RAM прямо на жёсткий диск (в этот же файл подкачки — swap) для временного хранения. Это дает возможность освободить память для загрузки новых фрагментов памяти. При потребности этих фрагментов, система возвратит их обратно в RAM. Данный механизм, дает возможность использовать больше оперативной памяти чем имеется в ОС. Недостатком является то, что файл подкачки работает гораздо медленнее чем оперативная память. Все упирается в ограничение скорости работы жесткого диска.

Для того чтобы узнать сколько используется виртуальной памяти в Mac OS X, можно запустить утилиту — Мониторинг системы (Программы -> Утилиты). В ней можно наглядно посмотреть использование RAM, своп, загрузку, выгрузку страниц, а также объем свободной, зарезервированной, активной и неактивной памяти:

Мониторинг системы в MacOSX

Аналогичной утилитой является top/htop. Можно использовать и другие варианты, но суть статьи не в том.

Swap в Mac OS X помещается в папку /private/var/vm/ для хранения и использования данных:

Как видно с листинга, что файлы хранятся с именами — swapfile[0,1. 10….100..]. У меня, они имеют размер около 1Гб — как по мне — это очень большие данные. Ну ту такое 🙂 Я предполагаю что такой объем в файлах вызван долгой работой Mac OS X без перезагрузки:

PS: Максимально что у меня было:

И то, нужно было обновить ОС, т.к вышла мажорная версия.

Собственно для чего они там нужны? А в этой папке, сохраняются данные с RAM когда мак находится в режиме сна.

Отключение/Включение SWAP в Mac OS X

И так, начиная с Mac OS 9, в системе можно было выключать swap через системные настройки и тем самым позволяло ускорить работу мака. С выходом Mac OS 10 — ситуация изменилось вместе с архитектурой системы, которая построена на ядре unix и активно использует файлы для подкачки страниц и управления кешем.

Я сейчас расскажу как можно выключить файл подкачки в Mac OS X, но делать это нужно с уверенностью, т.к это может вызвать торможения мака. И Делать это можно, если на борту имеется хотя бы 8-16Гб RAM, а иначе вы можете получить проблемы с нехваткой памяти. Но с другой стороны, при отключенном swap может подняться продолжительность жизни SSD дисков.

Решать вам, стоит или не стоит отключать SWAP!

Отключение SWAP в Mac OS X

Чтобы выключить файл подкачки, используйте команду:

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

PS: Я бы не рекомендовал просто так их удалять. Я бы создал копию всего диска через Time Machine, ну или хотя бы скопировал все swapfile в другую папку. Это позволит вернуть все на свои места.

По завершению, стоит выполнить перезагрузку ОС, из консоли можно выполнить:

После перезагрузки смотрим как будет работать система.

Включить SWAP в Mac OS X

Если Вы все же выключили файл подкачки на Mac OS X, то для включения служит:

И снова перезапускаем ОС.

Выключать swap не желательно. Я не проверял работоспособность. Основываюсь на опыте некоторых людей.

Как-то так, статья «Работа со Swap в Mac OS X» завершена.

Источник

Подключение файла подкачки (SWAP) в MAC OS X при использовании внешнего SSD-диска в качестве системного

Доброго времени суток, дорогие товарищи!

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

Как-то раз, мне пришлось призадуматься над одной небольшой задачкой. Есть компьютер iMac, есть успешно установленная OS X Sierra на внешний, подключенный через USB SSD-диск, и есть странное, удивительное, и при этом — полное, отсутствие файла подкачки.

Не буду здесь вдаваться в подробности мониторинга, определения, и подтверждения этого факта, чтобы не тратить драгоценное время читателей. В нашей, российской «пустыне», бессмысленно искать что-либо по этому поводу. Ибо на текущий момент — просто нет ничего вразумительного. Англоязычный сектор интернета при этом — также, не порадовал ничем существенным.

Читайте также:  Tor сеть для windows 10

Время шло. Проблема стояла, как «немой укор». И вдруг, неожиданно, примерно в начале октября, вышло обновление OS X, которое называется «Mojave». Надежда, как говорится, умирает последней. Не один я «плакался» на просторах интернета, как бестолкова и инертна техподдержка Mac OS X. И, свой печальный опыт звонка «прямо туда», я решил более никогда не повторять в целях экономии собственного времени. Как и стОило ожидать, Mojave не только не исправила проблему с постоянным отваливанием после пробуждения из сна клавиатуры и мыши, но, также и ничего не решила с файлом подкачки или хотя бы добавлением возможностью управлением этой очень важной, на мой взгляд, функцией.

Вышло так, что мне пришлось делать копию больших, но при этом безобразно мелких данных, с удаленного сервера в свое локальное хранилище по протоколу SSH. Я использовал для этих целей достаточно известный продукт, который назыается Cyberduck. Все в нем хорошо и прекрасно. Кроме того, что при работе с большим количеством мелких файлов, он, вероятно, для контроля ошибок передачи, ведет свой собственный, временный лог, который, скорее всего, наращивается во временных файлах (или кэше системы) и, достигает размеров, сопоставимых с размерами загружаемых данных. Что разумеется, тут же отражается на производительности системы. И «живет» этот лог, при этом, не где-нибудь — а непосредственно в оперативной памяти. В моей системе оперативной памяти — 8 Гб. Но в работе с системой я вижу постоянно занятыми порядка 6-7 Гб. Некоторые люди в нашей «пустыне» об этом странном событии сообщают так: (прочитал где-то на форумах) ««Политика компании Apple такова: „Вы купили много оперативной памяти, и заплатили за это много денег. Так почему эта оперативная память не должна использоваться полностью“ . » То есть, когда я оставил на ночь процесс копирования этих самых мелких данных, и пришел наутро посмотреть «а как оно там?», я сразу понял, что что-то — не так. После двух-трех движений мышью и клавиатурой система встала колом.

Уверен, что очень многих людей удивляет в принципе, как это вообще возможно — полная остановка OS X. Но когда не хватает оперативной памяти — очень даже. При этом, система до сих пор (. ) никак не предупреждает пользователя, что у него проблемы со свободной оперативной памятью, и эти все дела, просто могут привести к полному краху.

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

конец преамбулы

После долгих мучений получилось наконец написать одной строкой команду монтирования того диска, который помечен OS X как несмонтированный, и как выделенный системой под нужды использования виртуальной памяти (VM).

Большей частью благодаря одному ответу на Тостере. И еще сотней прочитанных страниц форумов и блогов в интернете.

Прошу обратить Ваше внимание на обратные кавычки ограничивающие собственно фильтр после сцепки нескольких команд, которые своим выводом просто определяют аргумент команды монтирования — именно то имя (номер) диска, который в наборе с другими, помечен как VM. В настоящий момент, то, что вижу я — это disk4s4. Но, когда к моноблоку подключен второй или еще и третий внешний диск — то имя диска помеченного как VM может быть запросто и таким: disk5s4, и таким: disk6s4. Еще один момент. Между простыми вертикальными кавычками во фрагменте «awk -F ‘ ‘ » — (сразу после буквы F две кавычки) — присутствует пробел. То есть, еще раз, — между одиночными кавычками после F — ПРОБЕЛ (!). Но, это, на всякий случай. Опытные бобры сразу же найдут выход их хаты. 🙂

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

Извините, до абсолютной автоматизации руки еще не дошли, но, надеюсь дополнить в ближайшее время.

Если у кого-то со сходной проблемой — «не взлетает» — ну что же — давайте попробуем обсудить это…
==
UPD: строчка для AppleScript будет выглядеть так:
==
(do shell script «diskutil mount -mountPoint /private/var/vm `diskutil ap list | grep VM | awk -F ‘ ‘ ‘/d/ ‘`» with administrator privileges) display dialog
==

Источник

Виртуальная память: как отключить файл подкачки в Mac OS X

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

В предыдущих версиях Mac OS (OS 8 и 9) система позволяла вручную выключать своп через панель управления в системных настройках. В десятой версии Mac OS ситуация изменилось вместе с архитектурой системы, которая построена на ядре unix и активно использует своп-файл для подкачки страниц и управления кешем. Поэтому своп в OS X более важен, чем в предыдущих версиях системы.

Механизм работы виртуальной памяти достаточно простой. Когда системе требуется новая память, она отправляет неиспользуемые фрагменты в файл подкачки на временное хранение. Когда эта память потребуется снова, система считывает данные из файла и возвращает их в память. В каком-то смысле это позволяет иметь неограниченный объем памяти в системе. Однако виртуальная память значительно медленнее оперативной памяти и ограничена производительностью жесткого диска.

Читайте также:  Подключение сетевого диска windows 10 яндекс диск

Чтобы узнать об использовании виртуальной памяти в Mac OS X, воспользуйтесь командой Терминала “vm_stat” или с запустите Мониторинг системы (который зачастую называют Диспетчером задач для Mac). Здесь можно узнать использование виртуальной памяти, своп, загрузку, выгрузку страниц, а также объем свободной, зарезервированной, активной и неактивной памяти. Подробнее об этих типах памяти мы говорили в одной из прошлых статей.

В Mac OS X своп расположен в папке /private/var/vm/. В этой директории хранится и дамп оперативной памяти на момент засыпания Mac. Система обращается к этому файлу при выводе компьютера из сна.

Файлы подкачки имеют название swapfile0, swapfile1, swapfile2, swapfile3, swapfile4, swapfile5. Они могут быть любого размера от 64 до 512 Мб. Помимо Finder их можно увидеть через Терминал командой ls -lh /private/var/vm/swapfile*.

Выключение файла подкачки в Mac OS X

Предостережение: не рекомендуем вносить изменения в систему управления памятью в Mac OS X, особенно, если вы не уверены в своих знаниях и не имеете достаточно опыта. Отключение своп может привести к нестабильной работе системы.

Для того, чтобы выключить своп в OS X выполните команду Терминала:

Эта команда полностью отключает использование виртуальной памяти Mac, что при низком объеме оперативной памяти компьютера может привести аварийному завершению работы системы. Включить своп можно другой командой из режима одиночного пользователя (Command + S при перезагрузке Mac):

Следующим шагом может быть удаление файлов подкачки, которые занимают ценное место на жестком диске Mac. Команда для удаления свопа в Mac OS X:

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

Источник

Почему macos лезет в своп?

6 часов, из которых

5 экран был заблокирован сразу после ребута, никакого софта стороннего не запускалось вообще. Полчаса назад был запущен хром с парой вкладок. До этого было две недели аптайма и в свопе

16гб оказалось чудным образом. Как это работает вообще?

походу они на свет лезут

Это работает следующим образом. Компания Apple продает вам железо и софт. Вы покупаете это железо и софт. Вот, так это и работает!

есть, выше почитай.

Хотя насчет стороннего софта я соврал немного, в автозагрузке есть конечно утилиты некоторые. Но могут ли они залезать в своп, при таком количестве оперативки свободной и зачем им это?

скорее всего энергосбережение

вообще исходники xnu открыты

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

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

но это же глупо, при наличии

80% свободной оперативки, нет?

жираф большой, ему видней

я просто не очень (очень не) понимаю, как это работает на уровне ОС в данном случае. Есть только догадки — «если ОЗУ достаточно с лихвой, то своп не трогаем совсем» — или ошибаюсь и софт решает сам, по велению левой пятки разработчика?

эмпирически – в своп сбрасывается спящее и низкоприоритетное, но инфа не сотка. глянь исходники, если так интересно

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

Линукс современный так же делает?

По-моему любая десктопная ОС будет на капелюшках использовать своп при «достаточном» количестве ОЗУ.

Линукс точно. Вопросы про это много раз были.

Нет. Неважно, насколько загружена RAM, потребляет она примерно одинаково.

80% свободной оперативки, нет?

Свободной RAM в современной ОС нет. Есть же кэш для дисков, и он может быть важнее, чем какие-то давно забытые приложения.

Неважно, насколько загружена RAM, потребляет она примерно одинаково

А если освободить одну, допустим, планку и питание с неё снять? Такое бывает вообще?

я с линупсов ваших 7 лет назад сбежал, чтоб больше не заглядывать в эту прорву.

Ну так и не парься, разработчики Эппл наверняка знают почему так происходит и считают происходящее нормальным поведением, иначе исправили бы.

Возможно что то из софта подтекает, но ты всегда можешь отнести свой Эппл в сервис, чтобы специально обученные профессионалы разобрались и отремонтировали его. А ещё ты сайтом ошибся.

Вообще, довольно логично загнать больше данных в swap, но и из ram их не освобождать, пока они не мешают. Это не просто дает быстрое освобождение, но и быстрей переход в глубокую спячку, т.к. часть данных уже в swap. Если это так работает.

Читайте также:  Как открыть инсталлятор windows 10

Коротко: мак – дрянь.

Линукс тоже дрянь?

потому что это только второсортные винтелы ставят оперативы на все деньги

вероятно, не очень хорошо.
логи то макоси покажете?

ОС видит, что какой-то процесс не нужен в ОЗУ, и использует ОЗУ под буфер ввода/вывода. Тонкости процесса, как тут уже рекомендовали, в исходниках.

Это работает следующим образом. Компания Apple продает вам железо и софт. Вы покупаете это железо и софт. Вот, так это и работает!

Как работает трансформатор? Трансформатор работает так: «у-у-у!»

Как работает трансформатор? Трансформатор работает так: «у-у-у!»

Он работает не так!

я с линупсов ваших 7 лет назад сбежал, чтоб больше не заглядывать в эту прорву

Понимаю вас. Я в своё время с Mac сбежал на Windows. Теперь вот подумываю, а не запрячь ли линукс для своих нужд.

Линукс точно. Вопросы про это много раз были.

Кстати да. Сто раз уже обсасывали, благо вопросов вида «а почему бы мне не отключить своп для оптимизации шоб всё ну летало» всегда хватало.

Собственно в чем проблема, в линуксе? Нет! Если проблема у яблока, вот в сервис к ним и иди, пусть там разбираются. Для чего ты сюда припёрся с подобно рода вопросами? Эппл лучше знает что там у них не так, разрабатывают свою ось под два с половиной ноутбука и если что-то куда-то сбрасывается, значит так и должно быть. Это тебе не линукс с 100500 моделями каждого узла в компьютере, за 7 лет ты это забыть не мог.

не бомби, малыш. Раздел на форуме этот:

Системные службы типа синхронизации с iCloud? Поотрубай все службы/демоны из загрузки — там по дефолту их херова туча, штук 80. Я неделю, наверное, настраиваю новую мак ось не спеша, отрубая всю херню, не нужную мне — это же BSD

Но я думаю, что это у тебя в swap ушёл твой браузер или что-то из этого, 16 гигов в swap — это точно что-то течёт. У меня так выжирал Safari на херовых и неоптимизированных сайтах (я даже нашёл причину на сайте почему он в swap на 8-10 гигов уходил)

Это, безусловно, так. Но, только не стоит забывать, что линуксойды очень любят тырить интерфейсние решения именно из Мак.

Это, безусловно, так. Но, только не стоит забывать, что линуксойды очень любят тырить интерфейсние решения именно из Мак.

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

Потому что инженеры макоси так решили, а твоя задача не вы***ваться, платить деньги, не нарушать лицензионное соглашение и не задавать глупых вопросов на форуме который посвещен другой ОС ¯\_(ツ)_/¯

Почему тырить? Это же наука, хотя другие считают иначе, да.

По-моему любая десктопная ОС будет на капелюшках использовать своп при «достаточном» количестве ОЗУ.

Захотел на Windows это присмотреть. Минут десять проб по поиску «Windows how to view pagefile usage» и не осилил 😕

Телепаты в отпуске, а посмотреть, кто жрёт своп, Вы и сами можете (или макось его не умеет репортить попроцессно?)

Почему бы не использовать zram для всего, и не насиловать диск?!

Это называется zswap.

я, конечно, понимаю, что тыВы настолько «Ъ», что можешь не приводить команду, которая это выводит, но все же перестань выделываться мне тут.
Подумал сначала на top, аж погуглить решил, но гугл сказал, что это говно, а не подлиная информация.
Но, к сожалению, даже это не могу проверить в данный момент, т.к. сейчас, после очередного ребута и суток аптайма — в свопе 0.
Да и вопрос изначально был не в том, кто свопится, а почему оно свопится при куче сводобной оперативки (откинув кэши).

Я про сжатый своп не на диске, а в оперативе. Сейчас её везде предостаточно.

Ну ты бы загулил название хотя бы для приличия.

Что говорит по этому поводу техподдержка апла?

Окей. Ликвидировал безграмотность.

любая десктопная ОС будет на капелюшках использовать своп при «достаточном» количестве ОЗУ

Конечно не любая. Мой дебиан в своп не лезет несмотря на swappiness=100 и недельный аптайм.

Либо 4.2, либо дичайше устарело. Это не VIRT — RES , а USED — RES (ну или наоборот — USED = RES + SWAP ;)). VIRT у иных приложений может десятками гигабайтов измеряться (привет GigaCage), но на SWAP это ничуть не отражается.

Много лет пользуемся этой колонкой, никаких вопиющих неточностей не замечали. В отличие от всяких хромоговских диспетчеров задач, да и прочих графических, которые нагло привирают и недоговаривают 😉

даже это не могу проверить в данный момент

Да ну, не можете памятесъедалку в пару строчек написать, чтобы в своп всё вытеснить? 😉

Откуда берутся дети. Только не говорите «из п***ы». Скажите правду, откуда берутся дети.

Источник

Оцените статью