
[Training] Arm v8 Linux kernel head.S 찍어먹기 (2)
이제 head.S를 분석하기 시작하나?" 생각하실 수 있지만 아쉽게도 조금 더 알아야 할 것들이 있어요. 이번 시간에는 Linker script와 리눅스 커널 virtual memory layout에 대해 알아 볼 것이에요. 아마 Linker script는 OS나 펌웨어 관련 프로젝트를 하지 않은 이상 일반적인 개발자가 접하기는 어려울 거에요. 그래서 이번 글에서는 가볍게 Linker script에 대해 "찍먹"할 예정이에요. 또 Virtual memory layout은 아마 들어보셨을 수 있는데, 유저 어플리케이션 관점에서의 가상 메모리 레이아웃하면 아마 아래 그림과 같이 떠올리실 것 같아요. 저는 위 이미지처럼 "text, data, bss, ... 섹션이 어디에 있고, heap 영역이 저기 있고 stack은 위에 있고, 그리고 상위 영역은 커널 영역이다"라고 전공 시간에 배웠던 기억이 나네요. 그림에는 단순히 커널 영역이라고 지정된 영역도