^^ 안녕하세요. pmd_large() 함수 질문입니다.

박종섭 2008.04.10 01:01 조회 수 : 7440 추천:76

커널 공부를 하는데... 소스에서 이해가 안가는 부분이 있어서 올립니다.

무턱대고 물어봐서 죄송합니다. ㅎㅎㅎ

------------------------------------------------------------------------------------------------
        pgd_t *pgd;     pud_t *pud;     pmd_t *pmd;     pte_t *pte;

        pgd = pgd_offset_k((unsigned long)주소);
        pud = pud_offset(pgd, (unsigned long)주소);
        pmd = pmd_offset(pud, (unsigned long)주소);
        
        if(pmd_large(*pmd))
                pte = (pte_t *)pmd;
        else
                pte = pte_offset_kernel(pmd, (unsigned long)주소);
------------------------------------------------------------------------------------------------

그 주소에 해당하는 페이지 테이블까지 찾아가는 소스인데 오픈 소스입니다.
리눅스는 원래 3단계(pgd, pmd, pte)를 하는데 pmd가 pgd에 포함 되어 있다고 하더라구요.
64비트와 호환을 두기 위해서 라고 하던데
커널 2.6.x버전부터 바껴서 4단계로 넘어왔다고 합니다.
재미있는건 32비트이면 다 if가 참일줄 알았는데 유독 페도라7만 else가 참이더라구요
페도라8은 또 if가 참이고
이부분에 대해서 알고 계시면 설명좀 부탁드립니다. ^^

그리구 페이지 테이블 속성중에 8번째 비트에 대해서 아시는거 있으면 이것도 설명 부탁드립니다.

즐거운 하루되세요~
번호 제목 글쓴이 날짜 조회 수
공지 [공지] 프로그래밍 관련 Q&A 게시판 입니다. woos 2016.04.09 22253
38 sleep과 재진입가능 함수. [1] 김기욱 2008.11.15 9159
37 ramdisk 는 물리적으로 연속적인 메모리인가요?? [10] 신철수 2008.11.06 6330
36 [질문] printf 소스는 어디에 있나요? [1] 손성원 2008.09.23 10914
35 hypervisor 위에서 돌아가는 guest에서 vt-x 를 사용할 수 없나요? [1] 남현우 2008.09.11 6896
34 [질문] 리눅스 서버 구축 [3] 맥주 2008.08.08 5869
33 커널 hang 걸렸을 때 관련정보 볼 수 잇는 방법이 있을까요?? [2] 신철수 2008.08.06 7879
32 리눅스 커널 디버깅 (kdb) 질문 있습니다!!!!! [2] 조성훈 2008.07.09 8836
31 new call-gate, cs, ds 추가관련 질문입니다. [2] 조성현 2008.05.31 5998
30 추가질문. User와 Kernel 중간 영역에 코드 삽입 [1] 조성현 2008.06.18 6938
29 XEN 스케쥴링 관련하여 질문 좀 부탁드리겠습니다... 장형근 2008.04.30 6942
28 [re] XEN 스케쥴링 관련하여 질문 좀 부탁드리겠습니다... 박세율 2008.07.05 7752
» ^^ 안녕하세요. pmd_large() 함수 질문입니다. [3] 박종섭 2008.04.10 7440
26 [질문] 세미나관련..공유라이브러리 [3] 박은병 2008.04.08 6840
25 Kernel 분석 5기 멤버 모집은 언제쯤 하시는 지요 ?? [2] 석헌영 2008.04.06 5784
24 백창우님, 질문 있습니다~ [2] 김기태 2008.04.06 6818
23 [질문] 스터티 참가 문의 [1] 김연찬 2008.04.03 5835
22 [질문] 쓰 레 드 ...... [4] 박은병 2008.03.28 6749
21 USB host 관련 porting 이나 non bus type 으로 작업 해보신 분 계신가요? [3] 신철수 2008.02.27 7301
20 이 문서 가지고 계시는 분 리형중 2008.02.25 6099
19 혼자서 커널공부하는데 조언을 부탁드립니다. [2] 김현중 2008.02.09 7800
XE Login