안녕하세요. ^^

10차 arm 멤버입니다. head.S에서 압축해제코드 들어가는데 이해가 힘든부분이 있습니다.

좀 엉뚱한 질문일지도 모르겠네요.


uImage의 로드 주소는 아래와 같습니다.

mkimage -l arch/arm/boot/uImage

Image Name:   Linux-3.10.0-00621-gb25edd1

Created:      Wed Jul 24 16:27:39 2013

Image Type:   ARM Linux Kernel Image (uncompressed)

Data Size:    1429440 Bytes = 1395.94 kB = 1.36 MB

Load Address: 0x40008000

Entry Point:  0x40008000


그리고 커널이 풀릴 위치는 아래와 같습니다.

cat arch/arm/mach-exynos/Makefile.boot

zreladdr-y += 0x40008000

params_phys-y := 0x40000100


uboot에서 zImage를 0x40008000에 올리면, head.S가 시작이 되고 zreladdr 위치(0x40008000)에

압축을 풀게 되는데, 그러면 head.S의 코드를 덮어써버리게 되는 것 아닌가요? 

왜 zImage 로딩주소와 커널이 풀리는 주소가 같은 걸까요?


압축을 풀기전 덮어쓰게 될경우를 체크해서 재배치(?)하는 코드가 있던데 이게 일반적인 것 같지않아서요.


번호 제목 글쓴이 날짜 조회 수
공지 [공지] 프로그래밍 관련 Q&A 게시판 입니다. woos 2016.04.09 22245
338 rdmsr, wrmsr [2] file 송원준 2013.09.03 4367
337 ics나 jb 보고있는데요. dev/* 밑의 디바이스 노드(모듈?)들의 실제 소스코드를 어디서 찾을 수 있나요? [3] 피터 2013.08.31 4013
336 ics 를 svn에 import 한후 checkout 해서 컴파일 하니 에러가...ㅜ.ㅜ [12] 김영일 2013.08.26 6761
335 Android단말기 boot.img 생성 후 이미지 씌우기 질문입니다. [2] 권효서 2013.08.26 7626
334 Jison 으로 짠 expression parser를 Bison으로 converting하기 [1] 김광태 2013.08.17 3384
333 물리메모리 mapping 시점 관련. [2] 하이디제이 2013.08.16 5763
332 기초적인 질문 하나 드립니다 ^^ [2] 기본과정 2013.08.14 2755
331 Real-time 스케쥴링에 관해서 질문이 있습니다.(수정) [2] 커널공부중 2013.08.05 6961
330 i2c 다중 제어 관련 문제 [1] qtopia 2013.08.01 3592
329 리눅스 커널패닉 덤프를 분석하려면 필요한 선수지식 [4] 아척 2013.07.31 8426
328 혹시 page table 내용을 출력해보신 분이 계신지요? [6] 하이디제이 2013.07.31 3932
327 커널영역의 가상주소가 맵핑되는 물리주소가 어딘지 궁금합니다. [3] 리누즈박 2013.07.29 6346
326 user space에서 virtual to physical address mapping 상태를 어떻게 알수있을까요? 하이디제이 2013.07.29 4521
» uImage 의 커널 로딩주소와 압축해제 주소의 충돌?? [2] 신C 2013.07.24 5610
324 이번 안드로이드 세미나 세션 이름 중에.. [2] 조영진 2013.07.15 2882
323 안드로이드 프레임워크쪽 Sp, Wp 질문드립니다.. 송대근 2013.07.11 4368
322 xend데몬이 기동시키는 프로세스를 gdb로 디버깅 하고 싶습니다. 이영준 2013.07.08 3575
321 arm에서 각 레지스터의 사용법이 궁금해요 [5] 유태희 2013.07.06 5166
320 커널관련 스터디에참석하고싶은데요 [1] kylekim 2013.07.05 2493
319 kernel build 문제 문의 [12] 서한배 2013.07.04 3729
XE Login