
가볍게 살펴보는 Per CPU
percpu는 "percpu: implement new dynamic percpu allocator"의 패치로 리뉴얼 되었습니다. 또한 뒤따르는 후속 패치들로 2800줄에 이르는 코드가 되었습니다. 다양한 내용이 반영된 최신의 percpu.c 파일을 분석하기보다는 몇 줄 안되는 초창기 버전의 percpu.c를 분석하며, percpu의 컨셉과 구현되었는지 알아보도록 하겠습니다. 주의! 해당 글은 percpu가 처음 도입된 Linux kernel v2.6.29을 다룹니다. Prehistoric implementation 우선 percpu가 재구현되기 전에 모습을 살펴보고, 어떤 점 때문에 대대적으로 수정되었는지 알아보도록 하겠습니다. 재구현 이전에는 percpu가 static, dynamic에 따라 서로 다른 구조로 구현되었습니다. Static percpu variable 우선 static percpu 변수에 대해 살펴보도록 하겠습니다. Static