본문 바로가기
728x90

임베디드SW8

[임베디드] 메모리 스크러빙 (Memory Scrubbing) 임베디드 쪽 공부를 하다보니 DRAM Scrub 이라는 동작이 있었는데, 이 스크러빙이라는 동작이 어떤 것인지 정확히 몰랐다. 그래서 오늘은 메모리 스크럽에 관해서 끄적여보자. 메모리 스크러빙(Memory Scrubbing)은 간단하게 설명하면 Error Correction을 하기 위한 기술이다. 메모리 스크러빙 방식에는 여러가지가 있지만, 일반적으로 말하는 방법은 특정 메모리 값에 쓰여져 있는 값이 잘못 된 값이 있는지 확인 후 ECC(Error Correction Code)를 통해서 bit error를 수정하고 수정된 데이터를 동일한 위치에 다시 write 하는 작업을 수행하게 된다. 근데 멀쩡한 메모리에서 왜 에러를 수정해야하는 일이 발생했을까? 메모리의 경우에는 전자의 값을 통해서 0인지 1인지 .. 2022. 9. 1.
메모리의 종류 ( ROM , RAM ) 메모리의 분류는 크게 휘발성 ( Volatile ) 과 비휘발성 ( Non-Volatile ) 로 나뉘게 됩니다. 그리고 이 휘발성, 비휘발성의 특성을 통해 ROM ( Read Only Memory ) 와 RAM ( Random Access Memory ) 로 나뉘게 됩니다. 플래시 메모리의 경우는 때에 따라 ROM과 RAM의 중간 성격을 띄는 경우도 있다. ROM - Read Only Memory ROM의 특징은 비휘발성 메모리로써 전기가 끊겨도 데이터들이 지워지지 않도록 저장해주는 역할을 하는 메모리입니다. 만약 전원을 껐는데 기존에 컴퓨터를 켜는 방법이 적혀있는 메모리가 다 날아가버리면 다시는 켜지지 않겠죠? 그래서 대표적으로 Bios ROM 이 있습니다. 컴퓨터를 켜는 방법을 적어두고 잊지 않기 .. 2020. 11. 17.
NVMe CLI ( Command Line Interface ) 기초와 사용법 Background NVMe CLI Overview CLI란, Command Line Interface로써, 사용자가 컴퓨터 키보드 등을 통해 문자열의 형태로 입력하여 사용할 수 있는 방식이다. 요즘은 거의 대부분의 운영체제에서 GUI ( Graphic User Interface)를 지원하면서, 그래픽으로 보며 작업하는 경우가 많지만, CLI는 Command LIne으로 접근하여 제어하는 방식을 말한다. 여러가지 CLI가 있지만 여기서 설명할 NVMe CLI는, NVMe를 제어하는 방법으로 이 CLI를 통해 여러가지 정보를 얻을 수 있다. Linux에 패키지 형태로 존재하고 있어 쉽게 설치하고 쉽게 사용할 수 있는 장점이 있다. 복잡한 Command나 여러가지 Command를 한번에 던지기에는 조금 불편.. 2020. 11. 10.
FIO - Flexible I/O Tester FIO란? FIO는 Flexible I/O Tester의 약자로 읽기, 쓰기, IOPS, Bandwidth등의 결과를 나타내주어 성능을 측정하기 위한 Tool로 사용된다. FIO를 사용하는 이유 FIO는 특정 워크로드를 테스트하고 싶을 때 그것을 위한 테스트 프로그램을 만들기 힘들어 작성되었다고 한다. 특히 비슷한 테스트를 자주 수행해야하는 경우 그때마다 테스트 프로그램을 만들게 되면 번거롭게 되므로 맞춤형 테스트 워크로드를 반복해서 수행할 수 있도록 시뮬레이션 할 수 있는 도구가 필요했다. 특정 워크로드를 정의하는 것은 매우 어려운 일이다. 관련된 process 또는 thread 수에 제한이 없고 각각 고유한 IO생성 방식을 사용할 수 있다. 또한 memory mapping 파일에서 많은 양의 메모리를.. 2020. 10. 30.
반응형