this 이 영역은 동적으로로드되는 라이브러리와 같은 파일을 매핑하기 때문에 이상적으로 자라야한다고 생각합니다. 이것은 RLIMIT_STACK과 힙 시작 사이의 mmap 영역을 시작하여 구현할 수 있습니다. 이 경우 어떤 문제가 발생할 것입니다.왜 메모리가 맵핑 된 영역이 리눅스에서 자라는가
성장하면 새로운 메모리 매핑 된 영역이 어떻게 생성됩니까? 가상 주소 공간에서 abc.so에 대한 코드를 매핑하고자한다면이 영역의 아래쪽에서 시작하여 sizeof (abc.so) 공간을 아래쪽 방향으로 만들고 맵 파일을 만들어야합니다. 이것이 어떻게 작동합니까?
주소 0이 해당 다이어그램의 맨 아래에 있음을 확신합니다. –
오른쪽이며 스택이 아래쪽 방향, 즉 더 낮은 주소 방향으로 커지고 있습니다. –
눈이 먼 곳에서 제일 먼저 눈을 ...니다. 죄송합니다. 어쨌든 힙과 매핑 된 파일 영역이 블록으로 할당되어 있기 때문에 어떤 방식 으로든이 방법이 상당히 자의적입니다. –