오늘 스터디중 논란이 있었던 부분중 몇가지 정리

이수연 2008.03.24 01:48 조회 수 : 10749 추천:73

  오늘 스터디는 왠지 커널 메모리 스터디를 하는듯한 기분이었습니다... ㅡ.ㅡ;;;

논란이 있었던 부분중에서...

1. high_memory는 언제나 0xC0000000 + 896M 의 위치를 가리키는가?
  
   high_memory 라벨은 실제 물리메모리 맵핑이 끝나는 부분을 가리키므로 최대값이
   0xC0000000+896M 이며 실제 물리메모리의 양에 따라 달라질수 있다.
  ( 리눅스 커널 구조와 원리 책에서 참조 )

2. vm_area_struct구조체는 VMALLOC_START~ VMALLOC_END 부분을 나타내는구조체
    인가?

     이부분은 제가 희미한 기억으로 잠시 착각한 것 같습니다. vmalloc() 함수 수행시 할당되는
    위의 불연속적인 공간을 나타내는 구조체는

     vm_struct 이며 vm_area_struct는 각 프로세스의 메모리 공간을 나타내는 구조체네요..
     vm_struct는 vmlist변수로 연결리스트 구현되어 있어 접근할수 있으며 커널이 직접관리
     한다고 되어 있네요

3. fork 시에 부모 프로세스의 page table이 자식 프로세스에게 복사되는가?

    fork 시에 자식 프로세스의 page table은 새로 할당이 되며 mm_struct, vm_area_struct
역시 새로 할당이 됩니다. 다만 메모리 자체는 공유합니다.

4. 프로세스 전환시 x86 머신의 경우 cr3 가 갱신이 되는가?

     이부분이 가장 논란이 많았던 것 같은데... 책 몇권을 뒤져본 결과 스터디 때 내린 결론과
     비슷하네요.

     cr3 를 매번 로드하지만 cr3의 값 자체가 수정되지는 않는 것 같습니다.
     cr3를 로드하는 자체가 부하가 많이 걸린다기 보다는 cr3의 값이 변경될때 tlb를 죄다
     flush 시키고 새로 올리고 하는데에 훨씬 부하가 많이 걸릴꺼 같기도 하고

     cr3 의 값이 수정되냐 안되냐 이렇게 따져 묻는 편이 맞는거 같기도 한데...
     그래도 좀 애매하네요... 이부분 잘 아시는 분 리플을....

번호 제목 글쓴이 날짜 조회 수
공지 [공지] 파일시스템 스터디 관련 Q&A 게시판 입니다. [2] woos 2016.04.09 418
18 죄송합니다. 원민수 2008.02.28 10318
17 안녕하세요. 파일 시스템 스터디 공지사항입니다. [6] 원민수 2008.02.09 10455
16 파일 시스템 스터디 인원을 모집합니다. [11] 원민수 2008.02.01 11711
15 이번주 스터디 공지 [1] 원민수 2008.05.02 10196
14 저기.. 저도 담주가 시험이라 불참할꺼같아요.. 죄송합니다.!(냉무) [4] 정재우 2008.04.18 10126
13 다음주까지 알아와야 할 부분. [4] 원민수 2008.04.13 13626
12 담주가 시험기간이라 낼 참석하기 힘들것 같습니다. [ 냉무] 이수연 2008.04.12 8577
11 "00040206"[] 이수연 2008.04.12 10583
10 13일 스터디 못갈수도 있어요.. [2] 김연찬 2008.04.09 9677
9 스터디 참가 문의 드려요 [3] 김연찬 2008.04.04 9721
8 3/29 스터디 의문사항 이수연 2008.03.31 9935
» 오늘 스터디중 논란이 있었던 부분중 몇가지 정리 [2] 이수연 2008.03.24 10749
6 다음 주 진행사항입니다. 원민수 2008.03.11 9252
5 3/9 스터디 의문사항 정리 이수연 2008.03.10 10646
4 이수연님 혹시 오늘 나왔던 의문점들에 대해서 정리하신 거 있으신가요? [2] 원민수 2008.03.10 9782
3 이번주에 읽어야 할 분량입니다. [1] 원민수 2008.02.19 9894
2 스터디 관련 홈페이지 정보를 위키에 올려놓았습니다. [1] 원민수 2008.02.02 10435
1 파일 시스템 게시판 생성 백창우 2008.02.01 9778
XE Login