Você pode descobrir o quanto o processo especial usa a partição swap por este comando:
cat /proc/"PID"/status | grep "^VmSwap"
E você pode encontrar PID
com este comando:
ps -A | grep "Application_name"
Mas se você quiser descobrir quais processos estão usando a partição swap, você pode usar este script:
#!/bin/bash
for i in /proc/*/status ; do
vmswap=$(cat $i | grep "^VmSwap")
echo "$vmswap" | grep -qv ' 0 kB'
if [ $? == 0 ] && [ "$vmswap" != "" ] ; then
echo "$i : $vmswap"
fi
done
Em seguida, você pode encontrar o nome do aplicativo a partir do PID retornado pelo script.
Atualizar : Eu mudei este script para criar um arquivo de log a cada 10 segundos (você pode alterar o tempo) e nesse arquivo você pode ver muitos processos a partir do momento que você executa este script até agora:
#!/bin/bash
counter=1
touch ~/swap_process_usage.log
while true ; do
echo -e "************************************\nSwap's process in count $counter " >> ~/swap_process_usage.log
for i in /proc/*/status ; do
vmswap=$(cat $i | grep "^VmSwap")
echo "$vmswap" | grep -qv ' 0 kB'
if [ $? == 0 ] && [ "$vmswap" != "" ] ; then
pid=$(echo "$i" | tr -d /proc/ | tr -d status)
proc_name=$(ps -p $pid -o comm=)
echo "$proc_name : $pid : $vmswap" >> ~/swap_process_usage.log
fi
done
sleep 10s
counter=$((counter+1))
done
E você pode definir esse script para ser executado em startup para que ele crie log todas as vezes.