What is the SSD’s feature ?

I found the document from miron, If you want to know what is ssd and how they work. Read this contents , as click The Effect of Host Data Patterns on SSD Write Performance

lightNVM

This article refers to Javigon’s blog

LightNVM is a host-side driver for Opne Channel Solid State Drives.

Open-Channel SSDs are devices that share resposibilities with host-side that typical SSDs keep strictly in firmware

These is as follows.

  1. The Flash Translation Layer(FTL)

  2. bad block management

  3. dedicated hardware units such as the flash controller, and large amount of flash chips.

The Linux host architecture for Open-channel SSDs is depicted in the above figure.

It consists of four fundamental components :

  1. LightNVM compatible device driver

  2. framework manager

  3. media manager

  4. targets.

LightNVM devcie driver

The device driver is responsible for implementing the storage protocol use for communication between host and SSD.

A device driver instance is created for each connected Open-Channel SSD.

This relies on the Linux block manager to handle command submission/completion, timeouts, and tags.

Currently, LightNVM uses NVMe, which is extended with something like the following

  1. Identify device structure, used by the host to discover the available features, charactersitics of the device

  2. A series of custom commands, which enables the host to issue I/O command that act directly on the physical media.

Frmework Manager

The framework management acts as a mediator between device drivers, media managers and targets. It provides supporting functionalities for device initialization, teardown or accounting.

Media Manager.

the media manager makes abstract of the underlying physical media by hiding its constraints and access details.

It is responsible for

  1. name mapping between vendor specific and generic addressing format,

  2. device specific SSD state management,

  3. recovery - to guarantee durability when manipulating the metadata associated with SSD state management.

LightNVme Targets

When usingthe generic media manager, targets implement FTL functionality (e.g translation logic, data placement, or garbage collection).

They also expose a storage interface to user space.

So if you want to develop OpenChannel-SSD after reading the above article.

You will need virtualiztion. So from now on I have to study virtualization of linux (lvm) or QEMU