도와주세요!!
글 수 15,339
2003.03.21 15:03:36 (*.186.48.184)
6767
하이퍼 보드나 이지보드나 태생이 비슷해서 ^^
아마 동일한 방식을 사용할거라 생각하는데요
가상 어드레스와 로직컬한 어드레스는 같은 말입니다.
가상 어드레스를 설정하는 방식은 두가지가 있읍니다.
물론 IO 영역에 한에서죠...
arm 아키텍쳐에서는 arch/mach-sa1110/ezboard.c
에서 사용하는 것은 고정형 방식으로
물리적 어드레스와 가상 어드레스를 맵핑하는
테이블 값을 적어서
이후에 커널에서 이 테이블을 가지고 기본적인
mmu 테이블을 구성합니다.
그외에 ioremap 과 같은 함수는
물리적 어드레스를 주면
커널에서 알아서 가상 어드레스를 잡아 주는 방식이죠
커널에서 어떻게 페이지 관리를 하는 가는
커널 관련 책을 구매 하셔서
일단 i386 관련 개념을 이해하시고
arm의 mmu 구조를 이해하셔서
해당 소스를 찾아 가시며 이해 하셔야 합니다.
저희는 그 정도 깊이까지는 학습하지 않았읍니다.
왜냐하면 거의 필요성을 모르기 때문이죠..
아마 동일한 방식을 사용할거라 생각하는데요
가상 어드레스와 로직컬한 어드레스는 같은 말입니다.
가상 어드레스를 설정하는 방식은 두가지가 있읍니다.
물론 IO 영역에 한에서죠...
arm 아키텍쳐에서는 arch/mach-sa1110/ezboard.c
에서 사용하는 것은 고정형 방식으로
물리적 어드레스와 가상 어드레스를 맵핑하는
테이블 값을 적어서
이후에 커널에서 이 테이블을 가지고 기본적인
mmu 테이블을 구성합니다.
그외에 ioremap 과 같은 함수는
물리적 어드레스를 주면
커널에서 알아서 가상 어드레스를 잡아 주는 방식이죠
커널에서 어떻게 페이지 관리를 하는 가는
커널 관련 책을 구매 하셔서
일단 i386 관련 개념을 이해하시고
arm의 mmu 구조를 이해하셔서
해당 소스를 찾아 가시며 이해 하셔야 합니다.
저희는 그 정도 깊이까지는 학습하지 않았읍니다.
왜냐하면 거의 필요성을 모르기 때문이죠..