일부 시스템에서는 스택이 위쪽 방향으로 증가하는 반면 힙은 아래쪽 방향으로 증가하고 일부 시스템에서는 스택이 아래쪽 방향으로 증가하고 힙이 위쪽 방향으로 증가합니다. 그러나, 어느 것이 최고의 디자인입니까? 이 두 가지 특정 디자인에 프로그래밍 이점이 있습니까? 가장 보편적으로 사용되는 것은 무엇이며 왜 단일 접근 방식을 따르는 것이 표준화되지 않았습니까? 특정 시나리오에 유용합니다. 그렇다면 무엇입니까?스택 성장 및 힙 증가 방향
2
A
답변
0
Miro Samek과 다양한 임베디드 전문가의 작품을 읽었으며 임베디드 시스템에서 동적 할당을 선호하지 않는 것 같습니다. 이것은 아마도 메모리 누수 가능성과 복잡성 때문일 것입니다. 절대적으로 실패 할 수없는 프로젝트가 있다면, 아마도 Malloc을 사용하지 않으려 고하므로 힙은 작을 것입니다. 다른 비 핵심 시스템은 그 반대 일 수 있습니다. 나는 표준 접근법이있을 것이라고 생각하지 않는다.
0
아마 프로세서에만 의존하고있을 것입니다 : 스택이 위 또는 아래로 이동하는 것을 지원합니까?
1
매우 단순한 구현에서는 방향으로 "힙"만 힙니다. Paul R.이 언급 한 바와 같이 스택이 성장하는 방향은 하드웨어에 의해 정의됩니다. Intel CPU의 경우 항상 더 작은 주소 (예 : 'Up')로 이동합니다.
관련 문제
- 1. LuaJit 스택/힙 크기 증가
- 2. 스레딩 힙 및 스택
- 3. Android 성장 힙 조각 경우
- 4. JAVA 힙 스택 오류
- 5. 힙 증가 및 계기 할당에 대한 올바른 값
- 6. 힙 및 스택 공간의 초기화되지 않은 값
- 7. 스택 및 힙 메모리 효과? 다음 코드에서
- 8. 힙 및 스택 메모리 사용에 대한 질문
- 9. WPF 테두리 두께 증가 방향
- 10. DLL 호출의 힙/스택 손상
- 11. 약 힙 (최대 힙 및 최소 힙)
- 12. C# .Net에서 힙 및 스택 내부의 오브젝트를 볼 수있는 방법
- 13. 응용 프로그램의 스레드가 사용하는 스택 및 힙 크기를 확인합니다.
- 14. 스택 및 동적 할당이있는 컨테이너
- 15. WPF - 스택 패널의 방향 변경 애니메이션?
- 16. 스택 및 스택 기본 주소
- 17. 함수의 성장 순서 정렬?
- 18. malloc() 및 힙 메모리
- 19. 기본 힙 및 ddms
- 20. _CrtMem * 및 디버그 힙
- 21. std :: aligned_storage (스택 또는 힙)의 할당 대상
- 22. 날짜 증가 및 감소
- 23. JAVA- 샌드 박스 & 가상 및 힙
- 24. EGOTableViewPullRefresh 및 가로 방향
- 25. ArcSegment의 회전 및 방향
- 26. 키보드, 방향 및 UITextView
- 27. 위치 및 방향 찾기
- 28. NativeControls 및 기기 방향
- 29. 동적 성장 너비 AutoCompleteTextView
- 30. dijit BorderContainer 자동 성장
이 숙제입니까? – NullUserException
아닙니다. 나는 메모리 레이아웃을 이해하고 있었고이 쿼리가 나타났습니다! –
일반적으로 힙은 커지지 않습니다. 실제로 스택의 성장 방향에만 관심이 있습니다. 이는 아키텍처에 따라 다릅니다. –