2.4 커널 slab_allocator 관련 추가 질문 입니다.
글쓴이: swunk / 작성시간: 목, 2010/03/18 - 1:41오후
현재 개발하고 있는 시스템의 문제인지 아니면 2.4 커널이 원래 그렇게 동작하는지 확인코자 질문을 드립니다. 참고로 현재 개발중인 장비는 NAT 공유기로서 no-mmu system 입니다.
아래와 같이 ip_conntrack 같은 slab을 어느 순간에 4000개 까지 할당을(active object) 한 후 일정 시간이 지나면 timeout이 발생하여 active object가 10개 정도 까지 해제가 된경우에 inactive object는 계속 4000개를 유지하게 됩니다. 그 상황에서 free로 메모리를 확인해 보면 ip_conntrack 슬랩 4000개 만큼의 메모리가 빠져 있습니다. 이 때 free 메모리가 1메가만 남아 있는 경우에...임의로 파일 copy를 2메가를 수행하면 파일 copy가 이루어지며 inactive object가 줄어 들게 됩니다. 여기저기 물어보니 slab에 할당한 메모리를 cached가 캐쉬하고 있으며 시스템에서 필요한 경우에만 해제 한다고 하던데요...이말이 맞는 건가요 ?
고수님들의 확인 부탁 합니다.
참고로 2.6 커널에서는 active object가 줄어드는 경우 inactive object도 일정 시간 지나면 모두 줄어드는 것을 확인하였습니다.
Forums:
댓글 달기