본문 바로가기

Linux3

VFS(Virtual File System) 이번 포스트는 가상파일시스템에 대해 다룬다. VFS와 VFS구조(슈퍼블록, 아이노드, 덴트리, 파일)에 대해서 정리한다. 0. UNIX에서의 파일 시스템현재 리눅스에서의 파일시스템을 이해하려면 과거에 UNIX에서 사용하던 파일시스템에 대해 이해하는게 도움이 될 것 같다.과거 UNIX 파일시스템은 오로지 UNIX사의 하드웨어만 마운트가 가능했고, UNIX이외의 solalis, DOS사 등은 마운트 할 수 없었다.이를 해결한것이 linux의 가상파일시스템이다. 이를 통해서 Linux, solalis, Windows 등 다양한 파일시스템 전부를 마운트 할 수 있게 되었다. 1. 가상파일시스템 이란가상파일시스템의 정의는 "파일 시스템 관련 인터페이스를 유저에게 제공하는 커널 서브시스템" 이다. 위의 사진에서 .. 2026. 9. 9.
Memory Model 이번 페이지에서는 물리 메모리 모델에 대해서 정리를 할 생각이다. ** 커널 버전에 따라 내용이 다를 수 있고, 틀린 내용이 있을 수 있음 1. Physical Memory Model개념적으로 물리 메모리는 할당되는 과정에서 완벽히 연속적으로 할당되기는 쉽지 않다.할당되다보면은 hole이 생기기 마련이다. 리눅스 커널에서는 물리 메모리 할당을 페이지 프레임 단위(4KB)로 할당하는 페이지 구조체를 사용한다.전체 메모리 크기가 4GB인 경우에 4KB의 페이지 프레임 단위로 쪼개면 총 1M개의 프레임 방이 생깁니다.즉 1M개의 페이지 프레임과 이를 관리하는 1M개의 페이지 구조체가 1:1로 생성되는 개념입니다. 이때 페이지 구조체 하나는 64바이트로 이뤄지며, 총 1M * 64B = 64MB의 크기를 차지하.. 2026. 9. 2.
node & zone 첫 포스트는 커널 메모리 관리에 기반이 되는 node와 zone에 대한 내용이다. ** 커널 버전에 따라 내용이 다를 수 있고, 틀린 내용이 있을 수 있음 1. memory node메모리 노드는 NUMA구조에서 프로세서마다 접근속도가 같은(가까운 메모리) 집합을 뱅크라고 할때, 이 뱅크를 표현하는 구조가 node이다. NUMA(non-uniform mem access)는 멀티코어 상에서 메모리 접근의 병목현상을 해결하기 위한 방법이다.NUMA의 자세한 구성은 다음 포스트에서 공부해보려 한다. 돌아와서 node의 사전적 정의는 위와 같지만, 풀어말하면 node란 NUMA 시스템 상에서 같은 특성을 갖는 메모리를 말한다.같은 특성이란 프로세서 기준으로 접근속도를 얘기한다.가까운 노드에 접근하는 속도는 빠르고.. 2026. 8. 29.