{"componentChunkName":"component---src-templates-blog-post-js","path":"/CS/memory/","result":{"data":{"site":{"siteMetadata":{"title":"Progress Not Perfection","author":"Sunmin","siteUrl":"https://sunmin.netlify.com","comment":{"disqusShortName":"","utterances":"Sunmin0520/blog"}}},"markdownRemark":{"id":"30d5f4a0-1682-5207-9ebf-1d9c80b226cc","excerpt":"코드 영역: 실행할 프로그램의 코드가 저장. CPU는 코드 영역에 저장된 명령어를 하나씩 가져가서 처리 데이터 영역: 전역변수, 정적변수 저장/ 프로그램의 시작과 함께 할당, 종료시 소멸 스택 영역: 함수의 호출과 관계되는 지역변수, 매개변수 저장/ 함수의 호출과 함께 할당, 호출 완료시 소멸 공간은 CPU에 의해 효율적 관리 & 변수의 크기는 조정 불가 스택 프레임: 스택 영역에 저장되는 함수의 호출 정보 JS…","html":"<img src=\"https://user-images.githubusercontent.com/60782131/107660723-e9b44b00-6ccb-11eb-95f0-72b359faf38f.png\">\n<ul>\n<li>코드 영역: 실행할 프로그램의 코드가 저장. CPU는 코드 영역에 저장된 명령어를 하나씩 가져가서 처리</li>\n<li>데이터 영역: 전역변수, 정적변수 저장/ 프로그램의 시작과 함께 할당, 종료시 소멸</li>\n<li>\n<p>스택 영역: 함수의 호출과 관계되는 지역변수, 매개변수 저장/ 함수의 호출과 함께 할당, 호출 완료시 소멸</p>\n<ul>\n<li>공간은 CPU에 의해 효율적 관리 &#x26; 변수의 크기는 조정 불가</li>\n<li>스택 프레임: 스택 영역에 저장되는 함수의 호출 정보</li>\n<li><strong>JS에서 원시값과 함수호출은 콜스택에 저장</strong></li>\n</ul>\n</li>\n<li>\n<p>힙 영역: 사용자에 의해 메모리 공간이 동적으로 할당되고 해제</p>\n<ul>\n<li>메모리 블록 할당 후 효율적 공간 사용 안 되면 메모리가 조각화되어 해제될 수 있다. </li>\n<li><strong>JS에서 참조형 값들은 메모리 힙에 저장</strong></li>\n</ul>\n</li>\n</ul>\n<p><strong>출처</strong></p>\n<ul>\n<li><a href=\"http://www.tcpschool.com/c/c_memory_structure\">TCP SCHOOL</a></li>\n</ul>","frontmatter":{"title":"[CS] 메모리","date":"February 12, 2021"}}},"pageContext":{"slug":"/CS/memory/","previous":{"fields":{"slug":"/CS/shell/"},"frontmatter":{"title":"[CS] shell, kernel","category":"cs","draft":false}},"next":{"fields":{"slug":"/JavaScript/callStack_memoryHeap/"},"frontmatter":{"title":"[JS] 자바스크립트 엔진, 런타임, 콜스택, 메모리힙, 지연시간","category":"javascript","draft":false}}}},"staticQueryHashes":["3128451518","521680639"]}