본문 바로가기

Memory

[WWDC 2018] iOS Memory Deep Dive (1/2) WWDC 2018 iOS Memory Deep Dive 를 정리한 포스트입니다. 더 자세한 내용을 원하시면 위 링크를 참조하시길 바랍니다. Virtual Memory? Device마다 RAM의 크기는 다르며, 서로 다른 RAM 시스템을 통일된 Adress 시스템으로 추상화하는 기술을 Virtual Memory라고 합니다. Virtual Memory 주소가 "Virtual"의 의미는 물리적 주소가 정렬할 필요가 없다는 것을 의미합니다. 앱의 모든 프로세스는 가상 메모리 공간을 확보하고 해당 공간의 모든 주소에 액세스 할 수 있습니다. 모든 가상 메모리 공간에는 동일한 주소 목록이 있다는 점을 고려해야 합니다. 한 프로세스에서 동일한 주소는 다른 프로세스에서 다른 물리적 주소이므로 다른 프로세스의 메모리 블.. 더보기
Android VS iOS 메모리 관리 방법 원문은 여기에서 확인할 수 있습니다. Android 와 iOS의 메모리 관리 기법은 어떻게 다른지 알아보도록 하겠습니다. Android는 CMS (Concurrent Mark-Sweep) Step 1. GC Root 를 정의합니다. 2. Mark 단계를 시작합니다. 생성된 모든 객체에는 기본적으로 0인 mark bit 가 설정되어집니다. 객체를 방문하면 1 로 설정합니다.아래 그림에서 mark bit 가 0은 회색으로 칠해져 있습니다. 3. Sweeping 가비지 컬렉터는 mark bit가 0으로 설정된 모든 객체를 찾기 위해 메모리 힙을 검색합니다. mark bit 가 0인 객체들을 제거하고 다시 모든 객체의 mark bit를 0으로 재 설정합니다. iOS ARC (Automatic Reference .. 더보기