[OSX] 사용하지 않는 메모리 깨끗이 Computer Tip

오랫동안 맥 OSX 를 사용하다가 다음과 같이
활성상태보기 프로그램을 열어 보면, "비활성(inactive)"에 많은 공간이 차 있는 경우가 있습니다.
(현재는 322.1MB 밖에 없지만 패러랠즈 등을 돌리고 하다보면 4G가 넘는 경우도 있습니다)
문제는 비활성 메모리가 추후의 사용을 위해서 OS에서 유지하고 있으므로 이 메모리 영역이
비어있지 않아 Free 영역이 아니라는 데 있습니다.
이것을 free하고 싶으나 free되지 않고 메모리를 잡고 있을 때,
터미널 창을 뛰워
$ purge
명령을 수행하면 위의 비활성(inactive) 메모리 공간을 free할 수 있습니다.
위에서 빨간영역의 Inactive가 거의 4G 정도 잡혀 있다가 purge 명령 후, Free 되었음을 확인 할 수 있습니다.
아마도 5분 마다 purge 하도록 crontab에 넣으면 어떨까 생각이 들더군요...
$ crontab -e
*-10 * * * * purge
십분마다 purge 명령을 수행합니다.

덧글

  • 구바바 2011/04/25 22:25 # 답글

    굳이 비워 줄 필요는 없다고 생각하지만, 만일 지금까지 하고 있던 것과 완전히 다른 무언가를 할 의사가 확실한 경우에는 좋은 팁이 될 수 있을 것 같습니다. ^^
  • 지훈현서아빠 2011/04/25 23:37 #

    8G로 메모리를 늘린 이후, 메모리 자체가 부족하다는 느낌이 들지는 않아 purge의 필요성을 그렇게 느끼지는 못해도,
    며칠이고 계속해서 reboot을 하지 않은 상태로 사용하다보면 inactive가 빨리 줄어들지 않고 있는 경우가 많아
    그것을 해지할 목적으로 찾아보았더니 위의 명령을 찾은 것이었습니다.
    일단은 십분마다 지우는 걸로 해서, 아무 무리없이 비활성 메모리가 안생기고 있어서 만족스러운데
    혹시 다른 안 좋은 점이 발견되면 다시 단점을 올려볼께요.
    관심 가져주셔서 감사합니다. ^^
  • 지훈현서아빠 2011/04/26 00:21 # 답글

    위에서 크론탭에 넣는 내용은
    */10 * * * * purge
    으로써 */10 은 10분 마다 라는 뜻입니다. 텍스트로 입력하는데 표시가 자꾸 *-10 으로 되는군요.
    참고하십시오.
  • AirCon 2011/04/26 13:08 # 답글

    굳이 반론 아닌 반론을 해보자면...
    동적 메모리 할당 개념에서 보자면, 사실 reserved 로 빠진 페이지를 굳이 free 상태로 빼는 작업은 필요하지 않다고 봅니다.
    어차피 최신 OS들은 메모리 제로잉도 빠르게 반응하는 편이라 많은 코스트가 들어가는 것도 아니고, 더우기 free로 빠진 페이지에 다시 페이징시키는 것은 코스트가 많이 들어가니까, reserved로 잡힌 페이지는 그냥 OS가 관리하도록 내비두는게 낫죠.
    (새로 프로세스를 띄울 때 free 페이지가 부족하면, OS에선 reserved로 빠진 페이지를 바로 제로잉해서 할당하거나/그냥 바로 reserved flag만 free로 바꿔서 할당합니다.)

    요약하자면, reserved라는 개념 자체가 '지금은 사용 안하지만 언젠가는 사용할지 몰라서 잡아놓은' 메모리니까, 그냥 OS한테 맡겨둬도 아무 문제 없다... 라는게 일반론입니다.
    (용어는 윈도우의 페이징 다이나믹스에서 가져온겁니다만, 어차피 근간은 같으니 ㅎㅎ)

    밸리에서 들어왔습니다. 반갑습니다 :)
  • 이준 2011/04/26 14:43 # 삭제 답글

    inactive 영역은 프로그램이 다시 로딩 될때를 대비한 일종의 캐쉬 같은 메모리 입니다.

    또 사용할지도 모르니까 메모리에서 내리지 않는거죠..

    결과적으로 purge를 계속 부르시면 오히려 손해를 볼수도 있습니다.

    내가 어떤 큰 작업을 효과적으로 하기 위해 초기화 시켜준다는 의미로 사용할수는 있지만... 뭔가 크게 달라지진 않을거에요..
  • 지훈현서아빠 2011/04/26 16:31 # 답글

    음... 제 경험으로는 inactive 메모리가 절반이상을 차지하고 있으면서도 해지하지 않고 free가 부족하여
    새로운 프로그램을 띄울 때 swap으로 in/out 을 한다면 이 시점에서는 purge가 분명히 필요하다 생각이 드는데,
    필요하지도 않은데 자꾸 할 필요는 없다 이 말씀이시지요?
    이렇게 저렇게 사용해 보고 한번 경험기를 다시 올려봐야 되겠네요.
    좋은 말씀들 감사합니다. ^^
  • 맥가이버 2015/04/18 13:08 # 삭제 답글

    페이지 in-out 내역이 있다면 purge 문제가 아니라 ㅋㅋㅋ. 메모리를 늘리세요. !!
  • 맥가이버 2015/04/18 13:08 # 삭제 답글

    페이지 in-out 내역이 있다면 purge 문제가 아니라 ㅋㅋㅋ. 메모리를 늘리세요. !!
  • 맥가이버 2015/04/18 13:08 # 삭제 답글

    페이지 in-out 내역이 있다면 purge 문제가 아니라 ㅋㅋㅋ. 메모리를 늘리세요. !!
  • 맥가이버 2015/04/18 13:08 # 삭제 답글

    페이지 in-out 내역이 있다면 purge 문제가 아니라 ㅋㅋㅋ. 메모리를 늘리세요. !!
  • 맥가이버 2015/04/18 13:08 # 삭제 답글

    페이지 in-out 내역이 있다면 purge 문제가 아니라 ㅋㅋㅋ. 메모리를 늘리세요. !!
  • nash 2016/03/21 17:02 # 삭제 답글

    무작정 메모리를 늘린다고 만사해결이 아님
    시스템이 인액티브에서 쟁여놓은거에서 빠르게 다시 읽어오고 프리 모자르면 인액티브에서 프리로 전환한다고 하셨는데.
    구조는 그런지 몰라도 실제로 그렇게 되는지는 의문인게.

    지금 시스템 램 32기가 인데.
    회사에서 쓰는 지라 1주일에 한번정도 재부팅하는데.
    inactive메모리가 21기가 뜨고 프리메모리 20메가 남아서. 새프로그램이나 크롬 새창띄우면 엄청느려집니다
    그렇다고 뭔가 엄청난걸 쓰는것도 아니고 패러럴즈에서 아웃룩하고 익스플로러만 쓰고
    맥에서는 크롬 창 몇개와 카톡, 스프링툴, 워크벤치 이렇게 밖에 안돌립니다.

    프리메모리 모자라면 새창띄울때 뿐만아니라. 그냥 스프링툴에서 자바 에디터에서 activation 풍선글보여주는데도 1초씩 걸리게 됩니다.
    크롬 탭여는데도 ssd가 아니라 구형 하드에서 여는것처럼 열리구요
    그러면 결국 메모리관리 앱으로 인액티브 메모리 날려버리면 싹 정상적으로 돌아오네요

    맥 시스템이 인액티브메모리로 예약해놓는 캐시 기능자체가 그닥 뛰어나지 않은것 같습니다. (엘캐피탄 최신버전이구요)
  • 지훈현서아빠 2016/03/22 09:40 #

    아뭏든 도움이 디셨다면 저의 보랍입니다~ ^^
댓글 입력 영역

구글애드텍스트