저번에 기글에서 작업관리자에 표시되는 cpu 사용률은
무조건 유휴상태인 cpu 리소스만 참고해서 표기되는게 아니라고 듣긴 했습니다만
사진처럼 작업관리자에 나오는 램 사용률이랑
오른쪽에 보는거랑은 많이 차이가 있네요
작업관리자는 가용램이 50%라고 적혀있는데
또 다른걸로 보면 아예 놀고있는 램은 코딱지만합니다.
작업관리자는 스풀링이랑 커널에서 쓰는 자원 등등 다 포함안시킨걸로 측정할까요??
저번에 기글에서 작업관리자에 표시되는 cpu 사용률은
무조건 유휴상태인 cpu 리소스만 참고해서 표기되는게 아니라고 듣긴 했습니다만
사진처럼 작업관리자에 나오는 램 사용률이랑
오른쪽에 보는거랑은 많이 차이가 있네요
작업관리자는 가용램이 50%라고 적혀있는데
또 다른걸로 보면 아예 놀고있는 램은 코딱지만합니다.
작업관리자는 스풀링이랑 커널에서 쓰는 자원 등등 다 포함안시킨걸로 측정할까요??
1.프로그램이 실제 사용하는 메모리에 비해 더 많은 메모리를 요청했을 수 있음. 그리고 운영체제가 이것을 알고, 실제로는 필요한 만큼만 할당하고 있음. 리눅스의 overcommit이 이런 식으로 동작. 아마 윈도도 비슷한 동작을 하지 싶은데요.
2.실제로 할당 안 된 영역이 많이 있으나 남아있는 영역을 캐시로 활용하고 있음 (필요할 시 바로 다른 용도로 할당 가능).
이런 이유로 측정법에 따라서 결과가 왔다리갔다리할 수 있습니다.
참고로 리눅스에서 가용램 확인 명령어를 쓰면 이런 식으로 표시됩니다:
total used free shared buff/cache available
8135712 3588112 490104 120456 4057496 4066784
여기서 사용되지 않은 메모리의 양은 free지만 실제로는 필요하면 캐싱 등으로 사용되는 영역을 비워서 available만큼 땡겨올 수 있습니다.