0630

조회 수 1841 추천 수 127 2007.07.01 05:22:31
주석 업데이트
head_64.S
     boot_from_prom 에서 0x4000 두번 한 이유 ( 0x8000 하면 부호비트가 문제 )
          - 16비트 이미디어트 값은 비트 확장을 하는데 8000의 경우 부호비트 1로 채워져서 문제발생

     abi에 따라 TOC의 첫주소 + 0x8000하면 TOC base 주소가 계산됨 ( 64k의 TOC 전영역 액세스 가능


할것
     시뮬레이터 돌려보면서 reloc_offset 동작 확인

알아낼것
     objdump해서 메모리맵 볼것, 첫 소스?, cell 커널 컴파일?

성진모

2007.07.03 07:22:13
*.189.127.37

수고했어~~ ㅋ

백창우

2007.07.03 20:59:34
*.20.193.7

abi에 따라 TOC의 첫주소 + 0x8000하면 TOC base가 구해지나요?
저는 vmlinux.lds.S에 아래와 같은 내용이 있어서 got 크기가 0x8000으로 알고 있었는데 어쩌면 잘못 알고 있었을수도 있겠군요.

.got : {
__toc_start = .;
*(.got)
*(.toc)
}

abi에 명시되어 있는것 좀 알려주시겠어요?

김강년

2007.07.03 21:13:39
*.252.53.224

The TOC section is accessed via the dedicated TOC pointer register, r2.
Accesses are normally made using the register indirect with immediate
index mode supported by the 64-bit PowerPC processor, which limits a
single TOC section to 65,536 bytes, enough for 8,192 GOT entries.

The value of the TOC pointer register is called the TOC base. The TOC
base is typically the first address in the TOC plus 0x8000, thus
permitting a full 64 Kbyte TOC.

저는 GOT의 크기가 64K이고 8192개의 엔트리가 있다는 얘기로 이해 했습니다. 전 아님 말고~ 주의기 때문에 잘못됬으면 꼭 알려주세요 :)

백창우

2007.07.03 23:00:08
*.20.191.127

TOC의 크기가 64K인것 같고 GOT는 TOC에 포함되는것 같네요.
그리고 0x8000을 base로 해주는건 TOC 접근을 16Bit signed offset을 사용하여 access하기 때문에 상하 각각 32K로 접근할수 있기 때문인것 같습니다.
이렇다면 16Bit signed offset은 signed bit을 포함하지 않고 있어야 할것 같은데, 이건 좀 확실히 확인해봐야 할것 같습니다.

target=_blank>http://www.linux-foundation.org/spec/ELF/ppc64/PPC-elf64abi-1.9.html#TOC


김강년

2007.07.05 01:47:55
*.252.53.224

16비트 짜리면 signed bit비트 포함해도 되지 않나요?

백창우

2007.07.05 17:52:12
*.20.191.54

그러네요. 1bit를 빼먹었네요. 이제 좀 말이되네요.
List of Articles
번호 제목 글쓴이 날짜 조회 수
72 얼굴 못본지 거의 한달이 넘어가는군요.. [1] 서두원 2007-08-19 1862
71 PPC64 의 경우 궁금한 점 ??? [1] 장석원 2007-07-14 1710
70 한동안 못가는 이유 [5] 김종화 2007-07-11 1926
69 memory map in powerpc kernel file [1] 김강년 2007-07-08 2058
68 오늘 스터디 못감 김재호 2007-07-07 1838
» 0630 [6] 김강년 2007-07-01 1841
66 크윽 [3] 김종화 2007-06-25 1713
65 오랜만에 인사~ ^^ [4] 정필섭 2007-06-25 1712
64 cell simulator에 관해 궁금함이.. [5] 성진모 2007-06-19 1822
63 오늘 수고하셨습니다! [2] 변유준 2007-06-17 1730
62 다들 주무시죠?? 자~ 질문입니다 ㅋ [4] 변유준 2007-06-16 1885
61 어셈 발표 자료 file [1] 김종화 2007-06-16 1798
60 powerpc 어셈 [1] 김종화 2007-06-14 1772
59 허허~ 이런이런~ [4] 변유준 2007-06-13 1643
58 어제 잘 들어가셨습니까~? [5] 변유준 2007-06-04 1994
57 Linux for PowerPC Embedded Systems HOWTO [1] 김종화 2007-05-28 1929
56 powerpc-elf64bit자료올립니다. file [2] 김종화 2007-05-23 1811
55 이번주 스터디 참여 [1] 변유준 2007-05-21 1738
54 많은 토론을 하셨군요.. [1] 서두원 2007-05-21 1702
53 민토에서 [2] 김종화 2007-05-21 1882



XE Login