Arm Linux Kernel Hacks

rousalome.egloos.com

포토로그 Kernel Crash


통계 위젯 (화이트)

9465
557
421925


태그 : aapcs 요약보기전체보기목록닫기

1 2 3

[Arm프로세서] AAPCS: Armv7: AAPCS와 관련된 레지스터와 어셈블리 명령어 분석

6.1절에서 Arm 스팩 문서 분석으로 AAPCS와 관련된 레지스터를 소개했고, 6.2절에서는 AAPCS와 관련된 어셈블리 명령어에 대해 살펴봤습니다. 이번 절에서는 AAPCS와 관련된 레지스터가 어떻게 사용되는지, 어셈블리 명령어와 함께 분석하면서 자세히 알아보겠습니다.먼저 AAPCS와 연관된 레지스터의 목록을 알아볼까요?  표 6....

[Arm프로세서] AAPCS: Armv7: 브랜치 명령어(bl)

C 프로그래밍으로 함수를 호출하는 구문을 어셈블리 코드로 확인하면 'bl [심벌 주소]'와 같은 명령어가 보입니다. 이번 절에서는 bl 명령어의 정의를 소개하고, 예제 코드를 분석하면서 bl 명령어의 사용법을 살펴보겠습니다.bl 명령어란이번에도 Arm 스팩 문서에서 bl 명령어를 설명하는 부분을 소개합니다.5.4 BranchesCalls to subro...

[Arm프로세서] AAPCS: Armv7: pop 명령어

push 명령어를 실행한 후 함수가 종료되기 직전에 반드시 실행되는 명령어가 pop입니다.Arm 스팩 문서에서 pop 명령어 분석하기이어서 Arm 스팩 문서에서 POP 명령어를 어떻게 설명하는지 알아 봅시다. A8.8.132 POP (ARM)Pop Multiple Registers loads multiple registers from the s...

[Arm프로세서] AAPCS: Armv7: push 명령어

SP 레지스터와 프로세스의 스택이 변경될 때 실행되는 명령어는 push와 pop입니다. 각 명령어의 의미를 알아보고, 예제 코드를 분석하겠습니다. 먼저 Arm 스팩 문서에서 push 명령어를 어떻게 설명하는지 알아봅시다.A8.8.133 PUSHPush Multiple Registers stores multiple registers to the ...

[Arm프로세서] AAPCS: Armv7: 서브 루틴(함수)로 분기될 때 실행되는 어셈블리 명령어

Armv7 아키텍처에 지원하는 레지스터들 중에 AAPCS와 연관된 레지스터가 SP, LR 레지스터이듯이, 수 많은 Armv7의 어셈블리 명령어 중에 AAPCS와 연관된 명령어가 있습니다. AAPCS와 연관된 명령어의 목록은 다음과 같습니다. 표 6.3 AAPCS와 관련된 명령어위 표에서 보이는 각 명령어를 소개하고 예제 코드를 분석하면...

[Arm프로세서] AAPCS: Armv7: 함수를 호출하기 위한 디자인

Armv7 아키텍처 관점으로 AAPCS를 보통 SP 레지스터와 LR 레지스터가 어떻게 바뀌는지 기준으로 설명합니다. 하지만 실제 거의 대부분 임베디드 혹은 시스템 개발자들은 SP와 LR 레지스터를 설정하는 어셈블리 코드를 입력하지 않습니다. 그 이유는 대부분 C 프로그래밍으로 코딩을 하기 때문입니다. SP와 LR 레지스터를 보면 낯설게 느끼기 마련입니다...
1 2 3