자꾸만 잊어먹는 메모리 관련 메모를 여기로 옮겨보자
메모리
ROM
Read Only Memory
- (원래는) 오직 읽고 저장만 하는 메모리 : 비휘발성 메모리
- 전원이 없어도 저장되어 있음
종류
Flash Memory
.. EEPROM의 발전된 형태, 대용량으로 뽑기 가능 ,대용량Data W하기 빠름, 단 Byte단위로 W불가능
- NOR : 병렬Cell. XIP 가능. 좀 비쌈
- NAND : 직렬Cell. XIP 불가능.. (SSD에 드가는 그 친구 맞음)
- EEPROM (NVRAM_Non-Volatile RAM) .. Byte단위로 R/W가능, 플래시메모리에 비해 느림, 기록획수 10만번 정도.
XIP
Excute In Place
보통
프로그램을 구우면 ROM
에 바이너리로(.text) 구워짐.
그리고 ROM -> RAM
으로 프로그램이 옮겨지고 실행 됨.
근데 ROM을 RAM처럼 프로그램을 그 자리에서 실행하는게 XIP임
NOR Flash 가 XIP 가능함.
RAM
Random Access Memory
- 자유롭게 Read/Write가 가능한 메모리 : 휘발성 메모리
- 전원이 없으면 날라감
종류
- SRAM : 우리가 생각하는 그 램. 회로적으로 복잡하고 비쌈
- PSRAM : 가짜 SRAM. SRAM기반 DRAM 느낌. 덜비쌈.
- DRAM : 바보램. 싼 램.
- SDRAM : Sync DRAM. CPU동작에 맞춰 움직임. 그래도 바보임.
- DDR SDRAM : DoubleDataRate SDRAM. 빠름. 짱짱 싼램.
Memory map
- RW(Read/Write)
- ZI(Zero Init)
- .bss : Block Started by Symbol. 초기값이 없는 전역변수, 초기값이 0인 전역변수
- RO(Read Only. .text, .const)
Memory Layout
참고