본문 바로가기
개인 스터디

힙(Heap), 스택(Stack)

by 태운콩즙 2023. 12. 10.
728x90
반응형

-힙(Heap)-

전역변수를 다루며 사용자가 직접 관리해야 하는 메모리 영역이다

힙은 동적 메모리에 할당되며 사용자가 직접 관리할 수 있는 그리고 해야만 하는 메모리영역이다

사용자에 의해 메모리 공간이 동적으로 할당되고 해제되며 메모리의 낮은 주소에서 높은 주소의 방향으로 할당된다

 

장점

변수는 전역적으로 액세스 할 수 있다

메모리 크기 제한이 없다.

 

단점

상대적으로 느린 액세스(할당,해제가 느리다)

메모리를 관리해야 한다(변수를 할당하고 해제하는 책임이 있다)

운영체제마다 메모리 관리가 다르기 때문에 어렵다

 

-스택(Stack)-

함수의 호출과 관계되는 지역 변수와 매개변수가 저장되는 영역

함수의 호출과 함께 할당되며 함수의 호출이 완료되면 소멸된다

푸시 동작으로 데이터를 저장하고 팝 동작으로 데이터를 인출한다

후입 선출 방식이며 메모리의 높은 주소에서 낮은 주소의 방향으로 할당된다

 

장점

매우 빠른 엑세스(할당,해제가 빠르다)

변수를 명시적으로 할당 해제 할 필요가 없다

단점

메모릐 크기제한

지역 변수만

728x90
반응형

'개인 스터디' 카테고리의 다른 글

프레임 워크  (0) 2024.02.02
getter/setter,private  (1) 2023.12.15
지역변수 , 전역변수  (0) 2023.12.01
-JDK-  (0) 2023.11.30
GLI,GUI 의 개념  (0) 2023.11.30