SWAP이 0인 System에서 VmPeak, VmSize 질문

fleabane의 이미지

안녕하세요

Embedded System을 개발하고 있는 개발자입니다.

제가 개발하고 있는 system은 512MB memory를 사용중에 있습니다.
개발하던중 Memory issue가 있어서 사용중인 memory를 확인하니

특정 process 에서 사용중인 VmPeak, VmSize가 물리적인 memory size를 넘어서 사용중입니다.

# free -m
             total       used       free     shared    buffers     cached
Mem:           501        476         25          0          0         44
-/+ buffers/cache:        431         70
Swap:            0          0          0

# cat 185/status
Name : APP1
State:  S (sleeping)
...
VmPeak:  1019796 kB
VmSize:   611584 kB
VmLck:         0 kB
VmPin:         0 kB
VmHWM:     34108 kB
VmRSS:     27216 kB
VmData:   554880 kB
VmStk:       136 kB
VmExe:      1552 kB
VmLib:     38000 kB
VmPTE:       594 kB
VmSwap:        0 kB
Threads:        64

물론 VmRss가 물리적 size 보다는 작게 사용중입니다.
질문의 요지는 SWAP이 disable 된 system상에서 VmPeak와 VmSize가 물리적 Memory size보다 커질 수 있는가?
있으면 어떤 이유인지도 궁금하네요.

감사합니다.