반응형 OS1 [개념] 구조체 패딩 (Struct Padding) 구조체 패딩은 성능 향상을 위해 CPU가 접근하기 쉬운 위치 메모리에 구조체 필드를 배치하는 것이다. CPU는 메모리를 읽어올 때 한 번에 [32bit OS*]는 4byte, [64bit OS]는 8byte를 읽어온다. 아래와 같은 구조체가 선언되어있다. struct box { char c; long long ll; }; 이때 long long 타입의 ll 멤버 변수를 읽고자 하면 32bit OS는 한 번에 4byte씩 메모리를 읽기 때문에 메모리에 3번 접근이 필요하고 64bit OS는 한번에 8byte씩 메모리를 읽기 때문에 메모리에 2번 접근이 필요하다. 하지만 아래와 같이 구조체에 패딩 값을 넣어준다면 패딩 비트의 크기만큼 메모리를 낭비하게 되지만 CPU가 ll을 읽어올 때 메모리에 접근하는 수가.. 2022. 4. 15. 이전 1 다음 반응형