작성
·
15
0
안녕하세요
저는 Windows x86 x64 환경에서만 리버싱을 하다 ARM 아키텍처와 리눅스에 대해서도 한번 공부를 해보고 싶은 평범한 직장인입니다. 우선 좋은 강의를 제공해주셔서 정말 감사드립니다.
제가 궁금한 점은 우선 개발자님께서 제공해주시는 커리큘럼이 총 3개가 존재하는데
시스템 소프트웨어 개발자를 위한 Arm - basic course
시스템 소프트웨어 개발자를 위한 Arm - advanced course
시스템 소프트웨어 개발자를 위한 Linux kernel - basic course
우선 제가 궁금한 점은 Linux kernel 강의가 ARMV8 아키텍처 위에서 진행되는 강의다 보니 먼저 ARM basic 과 ARM advanced 코스를 공부한 후 Linux kernel 강의를 들어야 하는지 아니면 같이 공부를 해도 수강하는데 문제가 없는지 궁금합니다.
그리고 추가적으로 궁금한 점은 개발자님께서 출간하신 Linux kernel 책 2권의 내용은 아직 강의로 제공되지 않는 것 같은데 ARM 강의와 마찬가지로 Linux kernel advanced 로 후반부의 내용을 강의로 제공하실 계획이 있으신지 궁금합니다.
감사합니다!
답변 1
0
아래 질문 주신 사항에 대해 답신 드립니다.
1. 리버싱
리버싱의 목표나 범위에 따라 분석하려는 주제가 달라질 수 있습니다.
일반적으로는 아래 순서로 강의를 들으시면 리버싱을 진행하시는데 도움이 될 것이라 생각됩니다.
시스템 소프트웨어 개발자를 위한 Arm - basic course
시스템 소프트웨어 개발자를 위한 Linux kernel - basic course
리버싱을 위해서는 - 어셈블리 명령어와 레지스터, 함수 호출 규약(AAPCS) 순서대로
분석하시면 무난할 것으로 예상입니다. 특히 최근에 업데이트된 Arm 아키텍처 강의에서는
TRACE32 프로그램을 내려 받아 어셈블리 명령어를 디버깅할 수 있는 내용도 있으니, 리버싱에 많은 도움이 될 것 같습니다.
2. 리눅스 커널 강의
제가 쓴 책(디버깅을 통해 배우는 리눅스 커널의 구조와 원리)의 2부에 해당하는 강의는 지금 제작 중이며, 내년 3월 정도에 모든 강의가 Publish될 예정이니 참고하셨으면 좋겠습니다.
감사합니다.