Libumem

Libumem은 응용 프로그램 안에서 메모리 관리 버그를 찾아내는데 사용되는 라이브러리이다.[1][2] 슬랩 얼로케이터 개념에 기반을 두고 있다. Libumem은 솔라리스 9 업데이트 3 이상부터 솔라리스의 표준적인 일부로 사용할 수 있다.

함수

이 라이브러리의 함수들은 멀티스레드 응용 프로그램 지원과 더불어 빠르고 확장 가능한 객체 캐시 메모리 할당을 제공한다. 표준 malloc(3C) 계열의 함수 및 더 유연한 umem_alloc(3MALLOC) 계열 외에도 libumem은 umem_cache_create(3MALLOC)에서 기술되었듯이 강력한 객체 캐시 서비스들을 제공한다.[3]

libumem을 처음 시작하는 것은 쉽다. "libumem.so"에 대해 LD_PRELOAD를 설정하면 실행되는 프로그램은 libumem의 malloc(3C)과 free(3C) (또는 new 또는 delete)를 사용한다.[4] 이 슬랩 얼로케이터는 수많은 스레드의 수많은 CPU의 시스템을 위해 설계되어 있다. 네이티브 얼로케이터의 메모리 할당은 심각한 병목 현상을 일으킬 수 있다.

같이 보기

  • Valgrind

출처

  1. “Proceedings of the 2001 USENIX Annual Technical Conference” (PDF). The USENIX Association. 2001. 
  2. “github / omniti-labs / portableumem”. github.com. 2010년 6월 27일. 2020년 8월 4일에 확인함. 
  3. Memory Leak Detection with libumem Archived 2013년 10월 23일 - 웨이백 머신
  4. “Adam Leventhal's Weblog”. 2017년 3월 25일에 원본 문서에서 보존된 문서. 2017년 12월 20일에 확인함. 
  • (영어) Portable Umem: An opensource effort to port libumem to other UNIX-like systems
  • v
  • t
  • e
솔라리스
기술
  • 다이렉트 바인딩
  • Doors
  • DTrace
  • IPMP
  • 점프스타트
  • mdb
  • MPxIO
  • SMF
  • snoop
  • Containers
  • Crossbow
  • 클러스터
  • Trusted Extensions
  • ZFS
일루모스/오픈솔라리스