기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하세요? 오랜만에 들어와서 질문드립니다.

원하는 내용은  
exception vector table 영역이 cache내에 계속 존재하도록 하고 싶습니다.
----------------------------------------------------------------------

환경 - ARM926EJS, linux kernel 2.6.21

질문 1) arch/arm/mm/mmu.c에 있는 MT_HIGH_VECTORS의 memory type에 있는 L_PTE_YOUNG과 L_PTE_DIRTY의 의미는 무엇일까요? (googling해봐도 안나오네요 --;)


질문 2) MT_HIGH_VECTORS의 memory type으로 0xFFFF0000으로 mapping된 exception vector table은 cache내에 지속적으로 존재하나요?

질문 3) linux에서 arm core의 cache lock-down을 제공하는 함수가 있습니까?
이게 없다면 혹시 cache내의 내용을 지속적으로 유지하기 위한 방법은 뭐가 있을까요?

답변주시면 감사하겠습니다.



고현철

2008.04.03 10:14:02
*.187.44.115

1. 일단 L_PTE_YOUNG의 definition이 있는 /include/asm-arm/pgtable.h
의 내용을 참조하시고요. 문맥상의 의미로는 파악하기 힘든 말이고요...^^

실제로는 paging out될 넘이 L_PTE_DIRTY로 표시가 될겁니다. 제 생각엔 swap을 쓰겠다는 얘기가 된다고 보여집니다(가능할 경우)

2. 정확하게는 자료를 찾아봐야겠지만요...아마 caching이 안되는 영역일겁니다.

[MT_HIGH_VECTORS] = {
219 .prot_pte = L_PTE_PRESENT | L_PTE_YOUNG | L_PTE_DIRTY |
220 L_PTE_USER | L_PTE_EXEC,
221 .prot_l1 = PMD_TYPE_TABLE,
222 .domain = DOMAIN_USER,
223 },

소스를 보니깐.....uncached.일 듯 싶네요....prot_sect 영역이 없으니 아마도 0으로 세팅될겁니다. cache랑 write buffer가 아마도 0일 듯...^^

3. 잘 모르는 내용이라 pass요...^^, 제가 cache쪽은 꽝이라서요...ㅎㅎ
꺼야하는 경우랑 켜야하는 경우랑 외엔 그다지 신경을 안 써서요...^^

김광준

2008.04.03 16:17:53
*.94.41.89

2. TCM을 사용하면 보통 캐슁할 필요가 없습니다. 캐슁여부는 MMU table에서 이 주소영영을 설정했는지 확인하면 알 수 있습니다. MMU table을 protection한 경우는 소스코드를 확인해야 합니다.
3. 코프로세서에 설정하는 기능이 있습니다. 따라서 어셈블리 언어로 작성되어야만 기능 구현이 가능합니다. linux에서 사용하는지는 제가 커널코드를 안봐서 잘 모르겠습니다.

김정호

2008.04.03 16:31:39
*.241.151.50

답변 감사합니다.
좀 더 연구해보겠습니다.
List of Articles
번호 제목 글쓴이 날짜 조회 수
228 alsa에서 alsa arm device와 soc audio device는 정확히 어떤관계인가... [2] 오대광 2008-04-18 899
227 [질문] 커널 디버깅 메시지 [3] 문철민 2008-04-15 805
226 [질문] 리눅스 커널 책 좀 추천 해 주세요 [1] 손성원 2008-04-15 1355
225 [완료] 낸드플래시에 FAT 파일시스템을 사용할 수 있나요? [4] 이세종 2008-04-11 1107
224 [완료] sd카드 풀스펙 데이터시트를 구합니다. [2] 이세종 2008-04-11 915
223 [완료]가상어드레스에 관하여 [4] 문철민 2008-04-11 734
222 [질문] pxa_request_dma, request_dma 에 대해서 궁금합니다. [2] 오대광 2008-04-10 754
221 [질문] 리눅스용 RS485 드라이버를 찾고 있습니다. [2] 장병남 2008-04-10 1218
220 [완료] 이거 어디가 문제일까요??ㅜㅜ [5] 오대광 2008-04-04 1222
219 [완료]2.6용 devicedriver makefile 문의 [2] 문철민 2008-04-04 714
218 [질문] S3C2440 보드에 낸드플래시를 하나 더 달려고 하는데요,, [4] 장병남 2008-04-03 933
217 [질문]파일생성일자 읽어오는법좀~~ [1] 김우겸 2008-04-03 707
216 [완료]이솝보드에 관한건 아니지만.. ㅠ.ㅜ (uC/TCP 관련) [2] 이경준 2008-04-03 728
» [완료] exception vector table과 cache관련 문의 [3] 김정호 2008-04-03 773
214 [완료]컴파일시 error발생하는 경우 [4] 김진희 2008-04-02 652
213 [완료]Freescale MC9328MX1 포팅 질문 [2] 이태간 2008-04-02 731
212 [질문]arm에서의 mmu setting을 이용한 메모리 설정 [1] 한기태 2008-04-01 971
211 [re] [질문]arm에서의 mmu setting을 이용한 메모리 설정 장석원 2008-04-02 737
210 [질문]usb to parallel ?? [1] 손성원 2008-04-01 709
209 [질문]I/O Memory를 이용한 device 접근 version-2 [1] 한기태 2008-04-01 714

사용자 로그인