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

top - 10:43:31 up 8 days, 1:28, 4 users, load average: 0.72, 0.57, 0.44 Tasks: 180 total, 1 running, 177 sleeping, 0 stopped, 2 zombie %Cpu(s): 8.9 us, 2.1 sy, 0.0 ni, 88.9 id, 0.0 wa, 0.0 hi, 0.2 si, 0.0 st KiB Mem: 8078124 total, 3815444 used, 4262680 free, 108300 buffers KiB Swap: 9437180 total, 2448032 used, 6989148 free, 446248 cached PID USER PR NI VIRT SWAP RES CODE DATA SHR S %CPU %MEM TIME+ COMMAND 3274 root 20 0 160m 4392 6808 2400 80m 1684 S 13.2 0.1 245:09.29 wicd 3451 root 20 0 79684 4900 2328 2400 6124 764 S 7.9 0.0 150:21.43 wicd-monitor 2804 messageb 20 0 30200 232 856 392 756 408 S 6.6 0.0 128:20.46 dbus-daemon 3856 cifer 20 0 411m 7524 28m 2400 150m 5904 S 1.3 0.4 20:34.23 wicd-client 4226 cifer 20 0 1499m 197m 52m 86m 1.0g 6504 S 1.3 0.7 227:24.62 chromium 1087 cifer 20 0 1556m 458m 166m 86m 1.2g 9980 D 2.3 2.1 4:27.35 chromium 

как вы можете видеть, у меня есть 8G физической памяти и просто используется 3.8G, я уверен, что я никогда не превышал пространства 8G, поэтому, я думаю, что области подкачки 2.4G используются только из-за спячки

теперь, в верхней команде, столбец VIRT и SWAP показывает, что каждый процесс использовал пространство подкачки, я добавил весь столбец SWAP-процессов, он кажется немного меньше 2.4G.

Я прав? Является ли использование подкачки вызванным спящим?

У меня есть другой вопрос, что столбцы VIRT DATA двух хромовых процессов выглядят настолько высокими, возможно ли это?

  • Где Linux задает значения по умолчанию для SHMMAX?
  • Мнемоника для функций Unix?
  • Почему Linux очищает кеш памяти, когда он почти заполнен?
  • Размер памяти для работы с ядром ядра
  • Проблемы с памятью при сжатии и передаче большого количества небольших файлов (всего 1 ТБ)
  • Потребление памяти Fail2Ban CentOS
  • Потребление памяти в течение переменного периода времени
  • Сценарии использования рабочего стола Zswap, Zram, Zcache
  • 3 Solutions collect form web for “когда вы спящий спящий режим, столбец VIRT верхней команды показывает пространство подкачки, используемое процессом?”

    Взгляните на top страницу руководства:

     o: VIRT -- Virtual Image (kb) The total amount of virtual memory used by the task. It includes all code, data and shared libraries plus pages that have been swapped out. (Note: you can define the STATSIZE=1 environment variable and the VIRT will be calculated from the /proc/#/state VmSize field.) VIRT = SWAP + RES. p: SWAP -- Swapped size (kb) The swapped out portion of a task's total virtual memory image. 

    Кроме того, вот комментарий из ArchLinux Wiki под названием Suspend и Hibernate .

    выдержка

    • Приостановка режима ОЗУ отключает питание большинства частей машины, кроме ОЗУ, которая требуется для восстановления состояния машины. Из-за большой экономии энергии рекомендуется, чтобы ноутбуки автоматически вошли в этот режим, когда компьютер работает от батарей, и крышка закрыта (или пользователь неактивен в течение некоторого времени).
    • Метод Suspend to disk сохраняет состояние машины в пространстве подкачки и полностью отключает машину. Когда устройство включено, состояние восстанавливается. До тех пор есть нулевое потребление энергии.

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

    пример

     $ top top - 23:40:12 up 15:33, 5 users, load average: 2.49, 2.62, 2.70 Tasks: 307 total, 3 running, 304 sleeping, 0 stopped, 0 zombie Cpu(s): 47.6%us, 4.6%sy, 0.0%ni, 47.8%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 7987492k total, 7528920k used, 458572k free, 161664k buffers Swap: 5963772k total, 40156k used, 5923616k free, 1100816k cached 

    Я так не думаю. Спящий режим не имеет ничего общего с заменой пространства подкачки в качестве области для хранения данных – вы даже можете отключить своп (размонтировать все разделы / файлы подкачки) и снова установить его только тогда, когда ваша система переходит в спящий режим (имеется небольшое окно для состояния гонки, конечно).

    Тем не менее, я думаю, что гораздо вероятнее, что в какой-то момент перед спящей ядро ​​решило, что было бы разумнее изменить некоторые кодовые страницы программ, которые в настоящее время не выполнялись (или их части, Недавно был использован), чтобы сделать память доступной для данных (будь то память allocaetd через malloc() , memmap() или просто кэширует для файловой системы). Это зависит от ваших шаблонов использования и может контролироваться, например, путем изменения тенденции к обмену /proc/sys/vm/swappiness через /proc/sys/vm/swappiness .

    VIRT – это размер виртуальной памяти, выделенной процессом. Это включает в себя все, что процесс сопоставляет: страницы в ОЗУ, в свопинге, общие с другими процессами, файлы с отображением памяти и еще несколько типов.

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

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

    Linux и Unix - лучшая ОС в мире.