HP-UX

swaping 과 paging의 차이점

 
곽수희
조언자

swaping 과 paging의 차이점

여기서 검색을 해보니까.

swaping과 paging이 같은 것이라고 설명이 되어 있는 것을 봤습니다.



하지만

vmstat에서 page 항목의 pi, po이 0가 아니면,

즉, page out, page in 현상이 일어나면 memory가 부족하다는 것으로,

성능저하로 이어 지는 것으로 알고 있습니다.



그리고 swaing이 일어나는 것은 실행되지 않는 code에 대해서,

항상 발생하는 것으로 성능 과는 무관한 것으로 알고 있습니다.

(swapinfo -t로 보면 memory가 많이 남아 있는 경우에도

얼마간의 사용율이 항상 나오니까요..)





이렇게 보면 paging과 swaping 은 다르지 않나요??



혹, paging과 page in, page out 항목이 다른 뜻인가요??
1 응답 1
고광태
중학생

swaping 과 paging의 차이점

"페이징" 파라미터 로서 lotsfree, desfree, minfree이다. 이 파라미터는 커널이 swapper/vhand (페이지 데몬) 행동의 시작하는데 필요합니다.

lotsfree : vhand가 "age" 페이지를 시작합니다.

desfree : 보다 심각한 페이징을 시작합니다.

minfree : 시스템은 프로세스를 비 활성화 시킵니다.

dufjj 관점에서 보면 대부분 이들 파라미터가 높게 셋팅되어 있습니다. V class장비에서 특히 심한데 다음과 같이 적용됩니다.





2Gb이하의 메모리인 시스템:



lotsfree: 8192 (32MB) 이하

desfree : 1024 (4MB) 이하

minfree : 256 (1MB) 이하



2Gb이하의 메모리인 시스템:

lotsfree : 16384 (64MB) 이하

desfree : 3072 (12MB) 이하

minfree : 1280 (5MB) 이하



위 사항처럼



페이징은 가용메모리 부족시



페이지 단위로 디스크로 옮기는 거고



스왑핑은 minfree이하로 떨어지게 되면



프로세스 전체를 옮기는 겁니다.(물론 stack 영역은 못 옮기는 거고 데이터 영역만 옮기는 거구요)



vmstat에 보면



fr하고 sr 항목이 있는데 이게 이게 페이지 스캐닝과 관련된 항목입니다.



페이징이 발생하고 있다는 기준은



free 페이지 갯수로 체크하는게 아니라



free 값이 지속적으로 적어져서 desfree 이하로 떨어지고



지속적으로 pi,po 값이 발생할때 일단 페이징이 생기고 있다고 의심해 볼수가 있습니다.



free 값은 dbc을 쓰는 환경에서는 캐쉬에 의해 점유되기 때문에 작게 보일수도 있습니다.





그리고 swapinfo 에서 나오는 스왑영역에서의 기본적으로 reserve 된 양은 프로세서가 생성될때 기본적으로 자기 메모리의 두배정도를 스와핑이 일어날걸 대비해서 예약해놓은 공간으로 보심 됩니다.

실제로 사용하고 있진않으나..예약만 해놓은상태죠..



참조하시길..