학교 수업으로 시스템프로그래밍을 듣게 됬는데, FEMU를 이용해 SSD 상에서 어떻게 작동하는지 배우게 됐다. QEMU 우선 QEMU(Quick EMUlator)라는 에뮬레이터를 주로 사용했다 합니다. 하드웨어 구조를 소프트웨어로 구현하여 실제 OS를 가상의 하드웨어 상에서 구동이 가능하게 해준다고. 하지만, 가상의 SSD를 설계해 사용하더라도 데이터를 ...
비메모리(프로세서)와 메모리 프로세서: 명령어를 실행해주는 장치. 메모리에서 데이터가 오면 계산을 해서 다시 메모리에 보내준다. 이렇게 데이터간 이동이 빈번하다. 최근에는 메모리와 프로세스를 하나의 장치로 만드는 기술도 생기고 있다고. 메모리: 우리가 앞으로 배울 장치. 대표적으로 4가지 SRMA, SSD, DRAM, HDD가 있고 최근에는 PCM, STT...
저번에 배운 FTL은 SSD 내부에 있는 일종의 소프트웨어 계층이다. FTL은 Host와 Flash 사이에서 일종의 연결다리 역할을 해준다. 문제의 발달: 예전에 HDD만 있을 때는 IO를 사용하는 것은 쉬웠다. 왜냐하면 read&write가 요청하는 주소와 HDD에
Garbage Collection 개요 SSD 핵심 기능 중 하나다. 데이터는 깨끗한 page에 써야 한다. 그러다 보면 나중에 clean page가 사라진다. 그걸 계속 확보해 주는 것이 garbage collection이다. 즉, 쓰레기를 처리해서 clean page를 유지하게 해주는 것이다. Out-of-Place Update의 결과 그림과 같은 F...