쌓인 기록에서 찾기
무엇을 찾으세요?
날짜를 몰라도 됩니다. 제목·Key Point·요약·태그를 한꺼번에 뒤집니다.
검색 범위부터 2026년 9월 19일 (토)까지674건
2건 · "메모리관리"조건 지우기 ×
001▲ 100 · 댓글 63V언어로 만든 현대적 운영체제 Vinix, 결정적 동작 추구Vinix는 V언어로 작성된 운영체제로, 실시간 OS는 아니지만 예측 가능한 동작을 목표로 설계했다.인프라 · 데브옵스 · Vinix – A modern operating system written in V
V언어로 만든 현대적 운영체제 Vinix, 결정적 동작 추구

Key Point메모리 관리 방식과 시스템 설계를 통해 실행 결과의 재현성과 예측성을 보장하려는 OS의 철학을 이해할 필요가 있다.
핵심 요약
- Vinix는 V언어로 작성된 운영체제로, 실시간 OS는 아니지만 예측 가능한 동작을 목표로 설계했다.
- 커널에 가비지 컬렉터가 없고 수동 메모리 관리를 사용해 시스템 호출이나 인터럽트 핸들러가 중단되지 않으며, 메모리 사용량이 일정하게 유지된다.
- 한 배포판, 한 데스크톱, 한 init 시스템으로 통일해 같은 이미지를 부팅한 두 기계는 동일한 서비스를 같은 순서로 시작한다.
- 커널 서브시스템은 실제 난수가 아닌 시드된 의사난수로 테스트해, 페이지 캐시와 스토리지·키보드 드라이버 동작이 재현성 있게 실행된다.
002▲ 105 · 댓글 29malloc() 알고리즘 비교 분석멀티스레드 프로그램에서 메모리 할당/해제는 힙 경합으로 인해 병목이 되며, 스레드·프로세서 수 증가에 따라 오히려 성능이 저하된다.인프라 · 데브옵스 · Comparison of Malloc() Algorithms
malloc() 알고리즘 비교 분석
Key Point멀티스레드 프로그램의 메모리 할당 성능을 크리티컬하게 좌우하는 malloc 알고리즘의 구조와 장단점을 체계적으로 비교하므로, 고성능 시스템 설계 시 올바른 할당자 선택이 필요하다.
핵심 요약
- 멀티스레드 프로그램에서 메모리 할당/해제는 힙 경합으로 인해 병목이 되며, 스레드·프로세서 수 증가에 따라 오히려 성능이 저하된다.
- malloc() 발전 과정은 단순 링크드리스트 방식에서 버킷힙, 크기별 분류, 아레나 풀(CPU·스레드별 메모리 풀)로 진화했다.
- 프론트엔드는 CLAB·TLAB·아레나 방식으로, 백엔드는 버디 알고리즘과 BIPOP 테이블로 메모리 조각화를 관리한다.
- dlmalloc, ptmalloc2, jemalloc, tcmalloc, mimalloc 등 주요 할당자들을 스레드 안전성, 캐시, NUMA 대응, CAS 연산 수로 비교했으며, mimalloc과 snmalloc이 원자 연산 최소화로 가장 우수하다.
- arenas와 per-thread 캐시는 lock-free 특성으로 경합을 줄이지만, 일부 할당자는 여전히 공유 메모리라인 bouncing이나 중앙 freelist 접근으로 인한 CAS 경합이 발생한다.