메모리 free size를 순식간에 0으로 만들수 있는 Code?
글쓴이: befoed / 작성시간: 월, 2005/09/26 - 1:06오전
프로젝트 시험 중에 있습니다.
시험중에 실제 메모리 사용량을 보여 주는게 있는데
실제 메모리의 Free를 0으로 만들고 , Swap 영역을 사용 하는 것을 보여 주고 싶습니다.
그래서 메모리를 계속 사용하는 임시 프로그램을 짯습니다.
free는 하지 않고 alloc만 계속 하는 걸로요.
근데 임시 프로그램을 계속 돌려도 0으로까지 가진 않더군요..
ㅠㅠ
혹시 단기간에(가능 하다면 순식간에) 메모리쪽 Free 0으로 만들 수 있는 방법이 있나요?
Forums:
아마 커널에서 free memory의 size가 어떤 미리 정해진 값 아
아마 커널에서 free memory의 size가 어떤 미리 정해진 값 아래로는 내려가지 않도록 조절할 겁니다.
음
그럼 스왑은 언제 쓰나요??
저두 리눅스 사용하다가 메모리 사용량 보면 스왑은 별로 사용을 안하더라구
저두 리눅스 사용하다가 메모리 사용량 보면 스왑은 별로 사용을 안하더라구요. 스왑이 메모리가 바닥나면 사용되는것두 아닌것 같구요. 메모리 남아 있어두 스왑을 조금씩 사용하기두 하구~
Re: 메모리 free size를 순식간에 0으로 만들수 있는 Code?
메모리를 파일시스템으로 돌려보세요 ;) 그런 상태에서 java 라던가 mysql 등등 메모리를 많이 먹는 것들을 살짝 돌려주면 쉽게 가능해지지 않을까요
오랫동안 꿈을 그리는 사람은 그 꿈을 닮아간다...
http://mytears.org ~(~_~)~
나 한줄기 바람처럼..
커널은 기본적으로 소량의 free 를 항상 남겨 놓습니다.malloc
커널은 기본적으로 소량의 free 를 항상 남겨 놓습니다.
malloc 요청시 빠르게 응답하기 위해서이죠.
free 가 0으로 안가는게 아니고, 0으로 갔다가 swap out 을 통해 free 을 소량 다시 만들어 낸다고 해야 할 것 같네요.
그런 특징 때문에 free 를 0으로 만들기 힘들고 - swap 메모리도 모두 소모하면 free도 0이 되겠죠. 하지만, 이것도 root 계정이 아닌 일반계정에서는 root 를 위해 남겨놓는 메모리가 있기 때문에 불가능하죠 - 그냥 소량의 free와 swap 사용량이 계속 증가하는 상황을 만드는 것으로 만족해야 할 듯 하네요.
부팅시, kernel parameter로 메모리 크기를 일부러 작게 잡으
부팅시, kernel parameter로 메모리 크기를 일부러 작게 잡으면 되지 않을까 생각해 봅니다. 그 상태에서 kernel compile을 하시거나, mozilla를 띄운다거나, acrobat reader로 복잡한 pdf를 연다거나 하는 등의 작업을 수행하시면 쉽게 swap을 쓰도록 만들 수 있을 것 같습니다.
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
Korean Ver: http://cinsk.github.io/cfaqs/
댓글 달기