리눅스 가상주소공간..(그림첨부)

aclamp의 이미지

안녕하세요?
가상 메모리에 대해 공부하다가
가상 주소공간에 대해 좀 헷갈리는 부분이 생겼습니다.

제가알기로
text, data 등의 region을 표현할 때

mm_struct 안의 vm_area_struct 구조체를 따라가면

처음이 text, vm_next를 따라가면 그다음이 data.. 이런 걸로 알고 있는데요

그럼 mm_struct의 start_code, start_data, start_stack, end code, end data.. 이런 자료는 왜 따로 보관되고 있는건지 궁금합니다.

그리고 여기서는 text다음에 바로 data 그위에 바로 heap이 저장되는데,

vm_area는 가상공간에 띄엄띄엄 text, data들이 존재하고 있고...

어떤 차이가 있는 건가요?

제가 보기엔 둘다 task의 가상 주소 공간인 것 같은데...

계속 보고 있는데 구분이 되지 않네요...

File attachments: 
첨부파일 크기
Image icon mm_struct13.64 KB
Image icon vm_area_struct13.22 KB