ARM에서 특정 어셈 코드가 실행중일때 pc의 위치는 어디일까??
arm 9의 파이프라인을 보면 fetch -->decode -->excute -->memory -->access 의 다섯 단계로
이루어지므로 실행중인 코드가 있다면 다음 , 다음의 코드를 fetch 하고 있을것이다.
아래에 head.S의 분석이 있는데 /...../kernel/head.S 의 마지막에 _switched 함수가 실행된후 브렌치 되는곳이 start_kernel이다 여기서 부터는 C코드이고 가상주소로 동작하게 된다.
부팅시퀀스를 잘 알고 있으면 부팅이 안되더라도 적절한곳을 찾아 디버깅 할 수 있다.
'Linux > Boot' 카테고리의 다른 글
Bootchart - 리눅스 부팅 과정 분석 (0) | 2010.07.18 |
---|---|
세번째head.S /arch/arm/kernel/head.S 분석 . (0) | 2009.06.05 |
두번째head.S /arch/arm/kernel/head.S 분석 . (0) | 2009.06.05 |
/kernel/head.S (0) | 2009.06.05 |
head.S (0) | 2009.06.05 |
WRITTEN BY
- RootFriend
개인적으로... 나쁜 기억력에 도움되라고 만들게되었습니다.
,