fbpx
Wikipedia

NVM Express

NVM Express (NVMe) o la especificación de interfaz de controlador de host de memoria no volátil (NVMHCIS) es una especificación abierta de interfaz de dispositivo lógico para acceder a medios de almacenamiento no volátiles conectados a través de un bus PCI Express (PCIe). El acrónimo NVM significa memoria no volátil, que a menudo es memoria flash NAND que viene en varios factores de forma física, incluidas unidades de estado sólido (SSD), tarjetas adicionales PCI Express (PCIe), tarjetas M.2 y otras formas NVM Express, como interfaz de dispositivo lógico, ha sido diseñado para aprovechar la baja latencia y el paralelismo interno de los dispositivos de almacenamiento de estado sólido.[1]

NVM Express
Información
Tipo
  • bus
  • interfaz de unidad
Fecha de creación 2011
Estandarización
Uso memoria
Cronología
AHCI
NVM Express
http://www.nvmexpress.org/

Por su diseño, NVM Express permite que el hardware y el software del host exploten por completo los niveles de paralelismo posibles en los SSD modernos. Como resultado, NVM Express reduce la sobrecarga de E/S y ofrece varias mejoras de rendimiento en relación con las interfaces de dispositivos lógicos anteriores, incluidas múltiples colas de comandos largas y latencia reducida. (Los protocolos de interfaz anteriores se desarrollaron para su uso con unidades de disco duro (HDD) mucho más lentas donde existe un retraso muy largo (en relación con las operaciones de la CPU) entre una solicitud y transferencia de datos, donde las velocidades de datos son mucho más lentas que las velocidades de RAM, y donde el disco, la rotación y el tiempo de búsqueda dan lugar a nuevos requisitos de optimización.

Los dispositivos NVM Express están disponibles principalmente en forma de tarjetas de expansión PCI Express de tamaño estándar[2]​ y como dispositivos de factor de forma de 2.5 pulgadas que proporcionan una interfaz PCI Express de cuatro carriles a través del conector U.2 (anteriormente conocido como SFF- 8639).[3][4]​ Sin embargo, también hay dispositivos de almacenamiento que utilizan SATA Express y la especificación M.2 que admiten NVM Express como interfaz de dispositivo lógico. Estos se han convertido recientemente en un caso de uso popular para NVMe y se están convirtiendo rápidamente en la forma dominante de almacenamiento de estado sólido para computadoras de escritorio y portátiles.[5][6]

Especificaciones

Las especificaciones para NVMe lanzadas hasta la fecha incluyen:[7]

  • 1.0e (enero de 2013)
  • 1.1b (julio de 2014)
  • 1.2 (noviembre de 2014)
    • 1.2a (octubre de 2015)
    • 1.2b (junio de 2016)
    • 1.2.1 (junio de 2016)
  • 1.3 (mayo de 2017)
    • 1.3a (octubre de 2017)
    • 1.3b (mayo de 2018)
    • 1.3c (mayo de 2018)
    • 1.3d (marzo de 2019)
  • 1.4 (junio de 2019)

El cambio principal entre 1.2 y 1.3 y las nuevas características son:[8]

  • Identificar la lista de retorno del espacio de nombres de identificadores de espacio de nombres
    • Una lista de estructuras de descriptor de identificación de espacio de nombres se devuelve al host para el espacio de nombres especificado.

Se han agregado una serie de diferencias y características opcionales, que incluyen: autocomprobación del dispositivo, desinfección, directivas, partición de arranque, telemetría, mejoras de virtualización, mejoras de administración de NVMe-MI, administración térmica controlada por el host, marca de tiempo, mejora del rendimiento del controlador emulado, junto con ver una serie de cambios con respecto al comportamiento anterior.

Antecedentes

 
 
Intel SSD serie 750, un SSD que utiliza NVM Express, en forma de tarjeta de expansión PCI Express 3.0 4× (vistas frontal y posterior)

Históricamente, la mayoría de los SSD usaban buses como SATA, SAS o Fibre Channel para interactuar con el resto de un sistema informático. Desde que los SSD estuvieron disponibles en los mercados masivos, SATA se ha convertido en la forma más típica de conectar SSD en computadoras personales; sin embargo, SATA fue diseñado principalmente para interactuar con unidades de disco duro mecánicas (HDD), y se volvió cada vez más inadecuado para SSD, lo que mejoró en velocidad con el tiempo.[9]​ Por ejemplo, dentro de aproximadamente 5 años de la adopción generalizada del mercado masivo (2005–2010) muchos SSD ya se vieron retenidos por las velocidades de datos comparativamente lentas disponibles para los discos duros, a diferencia de los discos duros, algunos SSD están limitados por el rendimiento máximo de SATA.

Las SSD de gama alta se habían creado utilizando el bus PCI Express antes de NVMe, pero utilizando interfaces de especificación no estándar. Al estandarizar la interfaz de los SSD, los sistemas operativos solo necesitan un controlador para funcionar con todos los SSD que cumplan con la especificación. También significa que cada fabricante de SSD no tiene que usar recursos adicionales para diseñar controladores de interfaz específicos. Esto es similar a cómo los dispositivos de almacenamiento masivo USB están diseñados para seguir la especificación de clase de dispositivo de almacenamiento masivo USB y funcionan con todas las computadoras, sin necesidad de controladores por dispositivo.[10]

Historia

Los primeros detalles de un nuevo estándar para acceder a la memoria no volátil surgieron en el Intel Developer Forum 2007, cuando se mostró NVMHCI como el protocolo del lado del host de un diseño arquitectónico propuesto que tenía el Open NAND Flash Interface Working Group (ONFI) en el lado de los chips de memoria flash.[11]​ Ese año se formó un grupo de trabajo NVMHCI dirigido por Intel. La especificación NVMHCI 1.0 se completó en abril de 2008 y se lanzó en el sitio web de Intel.[12][13][14]

El trabajo técnico en NVMe comenzó en la segunda mitad de 2009.[15]​ Las especificaciones NVMe fueron desarrolladas por NVM Express Workgroup, que consta de más de 90 compañías; Amber Huffman de Intel fue la presidenta del grupo de trabajo. La versión 1.0 de la especificación se lanzó el 01 de marzo de 2011,[16]​ mientras que la versión 1.1 de la especificación se lanzó el 11 de octubre de 2012.[17]​ Las principales características agregadas en la versión 1.1 son E/S de múltiples rutas (con espacio de nombres compartido) y E/S de dispersión de longitud arbitraria. Se espera que las futuras revisiones mejoren significativamente la gestión del espacio de nombres. Debido a su enfoque de características, NVMe 1.1 inicialmente se llamó "Enterprise NVMHCI".[18]​ En enero de 2013 se lanzó una actualización para la especificación básica de NVMe, llamada versión 1.0e.[19]​ En junio de 2011, se formó un Grupo Promotor liderado por siete compañías.

Los primeros chipsets NVMe disponibles comercialmente fueron lanzados por Integrated Device Technology (89HF16P04AG3 y 89HF32P08AG3) en agosto de 2012.[20][21]​ La primera unidad NVMe, la unidad empresarial XS1715 de Samsung, se anunció en julio de 2013; Según Samsung, esta unidad admite una velocidad de lectura de 3 GB/s, seis veces más rápidas que sus ofertas empresariales anteriores.[22]​ La familia de controladores LSI SandForce SF3700, lanzada en noviembre de 2013, también es compatible con NVMe.[23][24]​ En el Consumer Electronics Show 2014 se presentó un producto "prosumidor" de Kingston HyperX que utilizaba este controlador y prometía un rendimiento similar.[25][26]​ En junio de 2014, Intel anunció sus primeros productos NVM Express, la familia de SSD para centros de datos que interactúa con el host a través del bus PCI Express, que incluye la serie DC P3700, la serie DC P3600 y la serie DC P3500.[27]​ A noviembre de 2014, las unidades NVMe están disponibles comercialmente.

En marzo de 2014, el grupo se incorporó para convertirse en NVM Express, Inc., que a noviembre de 2014 consta de más de 65 empresas de toda la industria. Las especificaciones de NVM Express son propiedad y están mantenidas por NVM Express, Inc., que también promueve el conocimiento de la industria de NVM Express como un estándar de toda la industria. NVM Express, Inc. está dirigido por una junta directiva de trece miembros seleccionados del Grupo de Promotores, que incluye a Cisco, Dell, EMC, HGST, Intel, Micron, Microsoft, NetApp, Oracle, PMC, Samsung, SanDisk y Seagate.[28]

En septiembre de 2016, la Asociación CompactFlash anunció que lanzaría una nueva especificación de tarjeta de memoria, CFexpress, que usa NVMe.  

Factores de forma

Hay muchos factores de forma de la unidad de estado sólido NVMe, como AIC, U.2, U.3, M.2, etc.

AIC (Add in card)

Casi todas las primeras unidades de estado sólido NVMe son HHHL o FHHL AIC, con una interfaz PCIe 2.0 o 3.0. Una unidad de estado sólido HHHL AIC NVMe es fácil de adaptar para insertar en el zócalo PCIe de un servidor.

U.2 (SFF-8639)

U.2 anteriormente conocido como SFF-8639, es una interfaz de computadora para conectar unidades de estado sólido a una computadora. Utiliza hasta cuatro carriles PCI Express. Un servidor Dell PowerEdge R730xd puede combinar hasta 4 unidades de estado sólido NVMe U.2.[29]​ Otros proveedores de servidores como HPE, IBM, Inspur y Supermicro tienen el mismo tipo de soporte de producto para unidades de estado sólido U.2 NVMe.

U.3 (SFF-8639)

U.3 se basa en la especificación U.2 y utiliza el mismo conector SFF-8639. Es un estándar 'Tri-modo', que combina el soporte SAS, SATA y NVMe en un solo controlador. U.3 también puede admitir el intercambio en caliente entre las diferentes unidades donde el soporte de firmware está disponible. Las unidades U.3 siguen siendo compatibles con versiones anteriores de U.2, pero las unidades U.2 no son compatibles con hosts U.3.

M.2

M.2, anteriormente conocido como Factor de forma de próxima generación ( NGFF ), utiliza un bus de computadora con unidad de estado sólido M.2 NVMe. Las interfaces proporcionadas a través del conector M.2 son PCI Express 3.0 o PCI Express 4.0 (hasta cuatro carriles ).

NVMe-oF

NVM Express over Fabrics (NVMe-oF) es el concepto de utilizar un protocolo de transporte a través de una red para conectar dispositivos remotos, a diferencia de NVMe, donde los dispositivos están conectados directamente al bus PCIe (o a través de un conmutador PCIe a un bus PCIe) en septiembre de 2014, se propuso un estándar para usar NVMe sobre Fibre Channel (FC) y esta combinación a menudo se denomina FC-NVMe (o, a veces, NVMe/FC). NVMe-oF es un protocolo de comunicación que permite que una computadora acceda a dispositivos de almacenamiento de nivel de bloque conectados a otra computadora a través del acceso directo a memoria remota a través de varios protocolos de transporte:

  • FC, FC-NVMe
  • TCP, NVMe / TCP
  • Ethernet, RoCE (sobre Ethernet convergente ) e iWARP (sobre Ethernet tradicional)
  • InfiniBand, NVMe sobre InfiniBand
  • Otros protocolos de transporte de próxima generación.

El estándar para NVMe sobre Fabrics fue publicado por NVM Express, Inc. en 2016.[30][31]

Los siguientes controladores implementan el protocolo NVMe-oF:

  • El iniciador Linux NVMe-oF y los controladores de destino[32]
  • El iniciador NVMe-oF de Storage Performance Development Kit (SPDK) y los controladores de destino[33]
  • Un controlador iniciador NVMe-oF para Microsoft Windows[34]

Comenzando con Linux Kernel 5.0, se agregó soporte nativo para NVMe / TCP.

Comparación con AHCI

La interfaz de controlador de host avanzado (AHCI) tiene el beneficio de una amplia compatibilidad de software, pero tiene la desventaja de no ofrecer un rendimiento óptimo cuando se usa con SSD conectados a través del bus PCI Express. Como interfaz lógica, AHCI se desarrolló cuando el propósito de un adaptador de bus host (HBA) en un sistema era conectar el subsistema de CPU/memoria con un subsistema de almacenamiento mucho más lento basado en medios magnéticos giratorios. Como resultado, AHCI introduce ciertas ineficiencias cuando se usa con dispositivos SSD, que se comportan mucho más como DRAM que como medios giratorios.[5]

La interfaz del dispositivo NVMe se ha diseñado desde cero, aprovechando la baja latencia y el paralelismo de los SSD PCI Express y complementando el paralelismo de las CPU, plataformas y aplicaciones contemporáneas. En un alto nivel, las ventajas básicas de NVMe sobre AHCI se relacionan con su capacidad para explotar el paralelismo en el hardware y software del host, que se manifiesta por las diferencias en las profundidades de la cola de comandos, la eficiencia del procesamiento de interrupciones, la cantidad de accesos de registro que no se pueden almacenar en caché, etc. en varias mejoras de rendimiento.[5][35]:17–18

La siguiente tabla resume las diferencias de alto nivel entre las interfaces de dispositivo lógico NVMe y AHCI.

Comparación de alto nivel de AHCI y NVMe [5]
AHCI NVMe
Profundidad máxima de cola Una cola de comando;
32 comandos por cola
65535 colas;[36]
65536 comandos por cola
Accesos de registro no almacenables en caché
(2000 ciclos cada uno)
Seis por comando no en cola;
nueve por comando en cola
Dos por comando
MSI-X e interrupciones de dirección Una sola interrupción;
sin dirección
2048 interrupciones MSI-X
Paralelismo y múltiples hilos Requiere bloqueo de sincronización
emitir un comando
Sin bloqueo
Eficiencia
para comandos de 4 KB
Los parámetros del comando requieren
dos recuperaciones DRAM de host serializadas
Obtiene los parámetros del comando
en una búsqueda de 64 bytes

Soporte del sistema operativo

 
La posición de las rutas de datos NVMe y las múltiples colas internas dentro de varias capas de la pila de almacenamiento del núcleo Linux . [37]
Chrome OS
El 24 de febrero de 2015, se agregó soporte para el arranque desde dispositivos NVM Express al sistema operativo Chrome.[38][39]
DragonFly BSD
La primera versión de DragonFly BSD con soporte NVMe es la versión 4.6.[40]
FreeBSD
Intel patrocinó un controlador NVM Express para las cabeceras de FreeBSD y las sucursales estables / 9. [41][42]​ Los controladores nvd (4) y nvme (4) están incluidos en la configuración del núcleo GENERIC de forma predeterminada desde FreeBSD versión 10.2 en 2015.[43]
Genode
El soporte para NVMe de grado de consumo se agregó al marco Genode como parte de la versión 18.05.[44]
Haiku
Haiku obtuvo soporte para NVMe el 18 de abril de 2019.[45][46]
illumos
illumos recibió soporte para NVMe el 15 de octubre de 2014.[47]
iOS
Con el lanzamiento del iPhone 6S y 6S Plus, Apple presentó la primera implementación móvil de NVMe sobre PCIe en teléfonos inteligentes. Apple siguió estos lanzamientos con el lanzamiento del iPad Pro y el iPhone SE que también usan NVMe sobre PCIe.[48]
Linux
Intel publicó un controlador NVM Express para Linux el 3 de marzo de 2011,[49][50][51]​ que se fusionó con la línea principal del núcleo Linux el 18 de enero de 2012 y se lanzó como parte de la versión 3.3 del núcleo Linux el 19 de marzo de 2012.[52]
NetBSD
NetBSD agregó soporte para NVMe en NetBSD 8.0.[53]​ La implementación se deriva de OpenBSD 6.0.
OpenBSD
El trabajo de desarrollo requerido para admitir NVMe en OpenBSD se inició en abril de 2014 por un desarrollador senior anteriormente responsable del soporte USB 2.0 y AHCI.[54]​ El soporte para NVMe se ha habilitado en OpenBSD Versión 6.0.[55]
macOS
En la actualización 10.10.3 para OS X Yosemite, Apple presentó soporte para NVM Express. La Retina MacBook y la MacBook Pro 2016 usan NVMe sobre PCIe como la interfaz lógica del dispositivo.[56]
Solaris
Solaris recibió soporte para NVMe en Oracle Solaris 11.2.[57]
VMware
Intel ha proporcionado un controlador NVMe para VMware,[58]​ que se incluye en vSphere 6.0 y versiones posteriores, que admite varios dispositivos NVMe.[59]​ A partir de la actualización 1 de vSphere 6, el subsistema de almacenamiento definido por software VSAN de VMware también es compatible con dispositivos NVMe.[60]
Windows
Microsoft agregó soporte nativo para NVMe a Windows 8.1 y Windows Server 2012 R2.[35][61]​ Los controladores nativos para Windows 7 y Windows Server 2008 R2 se han agregado en las actualizaciones.[62]
OpenFabrics Alliance mantiene un controlador de Windows NVMe de código abierto para Windows 7/8/8.1 y Windows Server 2008R2/2012/2012R2, desarrollado a partir del código de referencia presentado por varias compañías promotoras en el grupo de trabajo NVMe, específicamente IDT, Intel y LSI.[63]​ La versión actual es 1.5 de diciembre de 2016.[64]

Soporte de software

QEMU
NVMe es compatible con QEMU desde la versión 1.6 lanzada el 15 de agosto de 2013.[65]
UEFI
Un controlador NVMe de código abierto para UEFI está disponible en SourceForge.[66]

Herramientas administrativas

nvmecontrol

La herramienta nvmecontrol se usa para controlar un disco NVMe desde la línea de comandos en FreeBSD. Fue agregado en FreeBSD 9.2.

nvme-cli [67]

Herramientas de espacio de usuario NVM-Express para Linux.[68]

Referencias

  1. Compare: «NVM Express». NVM Express, Inc. Consultado el 24 de enero de 2017. «NVMe™ is designed from the ground up to deliver high bandwidth and low latency storage access for current and future NVM technologies.» 
  2. Drew Riley (13 de agosto de 2014). «Intel SSD DC P3700 800GB and 1.6TB Review: The Future of Storage». tomshardware.com. Consultado el 21 de noviembre de 2014. 
  3. «Intel Solid-State Drive DC P3600 Series» (PDF). Intel. 20 de marzo de 2015. pp. 18, 20-22. Consultado el 11 de abril de 2015. 
  4. Paul Alcorn (5 de junio de 2015). «SFFWG Renames PCIe SSD SFF-8639 Connector To U.2». Tom's Hardware. Consultado el 9 de junio de 2015. 
  5. Dave Landsman (9 de agosto de 2013). «AHCI and NVMe as Interfaces for SATA Express Devices – Overview» (PDF). SATA-IO. Consultado el 2 de octubre de 2013. 
  6. Paul Wassenberg (25 de junio de 2013). «SATA Express: PCIe Client Storage» (PDF). SATA-IO. Consultado el 21 de noviembre de 2014. 
  7. https://nvmexpress.org/resources/specifications/
  8. https://nvmexpress.org/changes/
  9. Walker, Don H. «A Comparison of NVMe and AHCI». 31 July 2012. SATA-IO. Consultado el 3 de julio de 2013. 
  10. «NVM Express Explained» (PDF). nvmexpress.org. 9 de abril de 2014. Consultado el 21 de marzo de 2015. 
  11. «Speeding up Flash... in a flash». The Inquirer. 13 de octubre de 2007. Consultado el 11 de enero de 2014. 
  12. http://www.bswd.com/FMS09/FMS09-T2A-Huffman.pdf
  13. «Flash new standard tips up». The Inquirer. 16 de abril de 2008. Consultado el 11 de enero de 2014. 
  14. http://www.flashmemorysummit.com/English/Collaterals/Proceedings/2008/20080813_T2A_Huffman.pdf
  15. http://www.flashmemorysummit.com/English/Collaterals/Proceedings/2013/20130813_A12_Onufryk.pdf
  16. «New Promoter Group Formed to Advance NVM Express». 1 de junio de 2011. Consultado el 18 de septiembre de 2013. 
  17. Amber Huffman editor (11 de octubre de 2012). «NVM Express Revision 1.1». Specification. Consultado el 18 de septiembre de 2013. 
  18. David A. Deming (8 de junio de 2013). (PDF). snia.org. Archivado desde el original el 20 de septiembre de 2013. Consultado el 12 de enero de 2014. 
  19. Amber Huffman editor (23 de enero de 2013). «NVM Express Revision 1.0e». Specification. Consultado el 18 de septiembre de 2013. 
  20. «IDT releases two NVMe PCI-Express SSD controllers». The Inquirer. 21 de agosto de 2012. Consultado el 11 de enero de 2014. 
  21. «IDT Shows Off The First NVMe PCIe SSD Processor and Reference Design - FMS 2012 Update». The SSD Review. 24 de agosto de 2012. Consultado el 11 de enero de 2014. 
  22. . StorageReview.com. 18 de julio de 2013. Archivado desde el original el 10 de enero de 2014. Consultado el 11 de enero de 2014. 
  23. . StorageReview.com. 18 de noviembre de 2013. Archivado desde el original el 11 de enero de 2014. Consultado el 11 de enero de 2014. 
  24. . hothardware.com. Archivado desde el original el 5 de marzo de 2016. Consultado el 21 de marzo de 2015. 
  25. Jane McEntegart. «Kingston Unveils First PCIe SSD: 1800 MB/s Read Speeds». Tom's Hardware. Consultado el 21 de marzo de 2015. 
  26. . hothardware.com. Archivado desde el original el 28 de mayo de 2016. Consultado el 21 de marzo de 2015. 
  27. «Intel® Solid-State Drive Data Center Family for PCIe*». Intel. Consultado el 21 de marzo de 2015. 
  28. . nvmexpress.org. Archivado desde el original el 23 de noviembre de 2015. Consultado el 23 de diciembre de 2015. 
  29. «PowerEdge R730xd Rack Server : Rack Servers | Dell United States». www.dell.com (en inglés estadounidense). Consultado el 29 de marzo de 2019. 
  30. «NVM Express over Fabrics Revision 1.0». NVM Express, Inc. 5 de junio de 2016. 
  31. Woolf, David (9 de febrero de 2018). «What NVMe over Fabrics Means for Data Storage». 
  32. Hellwig, Christoph (17 de julio de 2016). «NVMe Over Fabrics Support in Linux». 
  33. Stern, Jonathan (7 de junio de 2016). «Announcing the SPDK NVMf Target». 
  34. Randall, Robert (20 de julio de 2016). «Windows NVMeOF host / initiator demo at FMS». 
  35. Andy Herron (2013). (PDF). snia.org. Archivado desde el original el 10 de enero de 2014. Consultado el 11 de enero de 2014. 
  36. NVM Express specification revision 1.2. section 1.4 Theory of Operation. 
  37. Werner Fischer (1 de junio de 2015). «Linux Storage Stack Diagram». Thomas-Krenn.AG. Consultado el 8 de junio de 2015. 
  38. «NVM Express » ChromeOS adds boot support for NVM Express». nvmexpress.org. Consultado el 21 de marzo de 2015. 
  39. «4f503189f7339c667b045ab80a949964ecbaf93e - chromiumos/platform/depthcharge - Git at Google». googlesource.com. Consultado el 21 de marzo de 2015. 
  40. «DragonFly BSD 4.6». www.dragonflybsd.org. Consultado el 8 de septiembre de 2016. 
  41. «Log of /head/sys/dev/nvme». FreeBSD source tree. The FreeBSD Project. Consultado el 16 de octubre de 2012. 
  42. «Log of /stable/9/sys/dev/nvme». FreeBSD source tree. The FreeBSD Project. Consultado el 3 de julio de 2013. 
  43. «FreeBSD 10.2-RELEASE Release Notes». The FreeBSD Project. Consultado el 5 de agosto de 2015. 
  44. «Release notes for the Genode OS Framework 18.05». genode.org. 
  45. «#9910 NVMe devices support». dev.haiku-os.org. Consultado el 18 de abril de 2019. 
  46. «NVMe Driver Now Available - Haiku Project». www.haiku-os.org. Consultado el 28 de julio de 2016. 
  47. «4053 Add NVME Driver Support to Illumos». github.com. Consultado el 23 de mayo de 2016. 
  48. Ho, Joshua. «iPhone 6s and iPhone 6s Plus Preliminary Results». www.anandtech.com. Consultado el 1 de junio de 2016. 
  49. Matthew Wilcox (3 de marzo de 2011). «NVM Express driver». LWN.net. Archivado desde el original el 17 de julio de 2012. Consultado el 5 de noviembre de 2013. 
  50. Keith Busch (12 de agosto de 2013). «Linux NVMe Driver» (PDF). flashmemorysummit.com. Consultado el 5 de noviembre de 2013. 
  51. (PDF). activeevents.com. 2013. Archivado desde el original el 11 de enero de 2014. Consultado el 11 de enero de 2014. 
  52. «Merge git://git.infradead.org/users/willy/linux-nvme». kernel.org. 18 de enero de 2012. Consultado el 5 de noviembre de 2013. 
  53. «nvme -- Non-Volatile Memory Host Controller Interface». NetBSD manual pages. 1 de enero de 2016. Consultado el 2 de septiembre de 2016. 
  54. David Gwynne (16 de abril de 2014). «non volatile memory express controller (/sys/dev/ic/nvme.c)». BSD Cross Reference. Consultado el 27 de abril de 2014. 
  55. David Gwynne (14 de abril de 2016). «man 4 nvme». OpenBSD man page. Consultado el 7 de agosto de 2016. 
  56. «Faster 'NVM Express' SSD Interface Arrives on Retina MacBook and OS X 10.10.3». macrumors.com. Consultado el 11 de abril de 2015. 
  57. «nvme(7D)». Oracle. Consultado el 2 de diciembre de 2014. 
  58. «Intel Solid-State for NVMe Drivers». intel.com. 25 de septiembre de 2015. Consultado el 17 de marzo de 2016. 
  59. «VMware Compatibility Guide for NVMe devices». vmware.com. Consultado el 17 de marzo de 2016. 
  60. «VSAN Now Supporting NVMe Devices». vmware.com. 11 de noviembre de 2015. Consultado el 17 de marzo de 2016. 
  61. «Windows 8.1 to support hybrid disks and adds native NVMe driver». Myce.com. 6 de septiembre de 2013. Consultado el 11 de enero de 2014. 
  62. «Update to support NVM Express by using native drivers in Windows 7 or Windows Server 2008 R2». Microsoft. 13 de noviembre de 2014. Consultado el 17 de noviembre de 2014. 
  63. . Project web site. Archivado desde el original el 12 de junio de 2013. Consultado el 18 de septiembre de 2013. 
  64. https://svn.openfabrics.org/svnrepo/nvmewin/releases/
  65. «ChangeLog/1.6». qemu.org. Consultado el 21 de marzo de 2015. 
  66. «Download EDK II from». SourceForge.net. Consultado el 11 de enero de 2014. 
  67. GitHub - linux-nvme/nvme-cli: NVMe management command line interface., linux-nvme, 26 de marzo de 2019, consultado el 27 de marzo de 2019 .
  68. NVM Express control utility, The FreeBSD Project, 12 de marzo de 2018, consultado el 12 de julio de 2019 .

Enlaces externos

  • Página web oficial
  • LFCS: preparación de Linux para dispositivos de memoria no volátiles, LWN.net, 19 de abril de 2013, por Jonathan Corbet
  • , Linux Foundation, 12 de marzo de 2015, por Keith Busch
  •   Datos: Q17157198
  •   Multimedia: NVM Express

express, nvme, especificación, interfaz, controlador, host, memoria, volátil, nvmhcis, especificación, abierta, interfaz, dispositivo, lógico, para, acceder, medios, almacenamiento, volátiles, conectados, través, express, pcie, acrónimo, significa, memoria, vo. NVM Express NVMe o la especificacion de interfaz de controlador de host de memoria no volatil NVMHCIS es una especificacion abierta de interfaz de dispositivo logico para acceder a medios de almacenamiento no volatiles conectados a traves de un bus PCI Express PCIe El acronimo NVM significa memoria no volatil que a menudo es memoria flash NAND que viene en varios factores de forma fisica incluidas unidades de estado solido SSD tarjetas adicionales PCI Express PCIe tarjetas M 2 y otras formas NVM Express como interfaz de dispositivo logico ha sido disenado para aprovechar la baja latencia y el paralelismo interno de los dispositivos de almacenamiento de estado solido 1 NVM ExpressInformacionTipobusinterfaz de unidadFecha de creacion2011EstandarizacionUsomemoriaCronologiaAHCINVM Expresshttp www nvmexpress org editar datos en Wikidata Por su diseno NVM Express permite que el hardware y el software del host exploten por completo los niveles de paralelismo posibles en los SSD modernos Como resultado NVM Express reduce la sobrecarga de E S y ofrece varias mejoras de rendimiento en relacion con las interfaces de dispositivos logicos anteriores incluidas multiples colas de comandos largas y latencia reducida Los protocolos de interfaz anteriores se desarrollaron para su uso con unidades de disco duro HDD mucho mas lentas donde existe un retraso muy largo en relacion con las operaciones de la CPU entre una solicitud y transferencia de datos donde las velocidades de datos son mucho mas lentas que las velocidades de RAM y donde el disco la rotacion y el tiempo de busqueda dan lugar a nuevos requisitos de optimizacion Los dispositivos NVM Express estan disponibles principalmente en forma de tarjetas de expansion PCI Express de tamano estandar 2 y como dispositivos de factor de forma de 2 5 pulgadas que proporcionan una interfaz PCI Express de cuatro carriles a traves del conector U 2 anteriormente conocido como SFF 8639 3 4 Sin embargo tambien hay dispositivos de almacenamiento que utilizan SATA Express y la especificacion M 2 que admiten NVM Express como interfaz de dispositivo logico Estos se han convertido recientemente en un caso de uso popular para NVMe y se estan convirtiendo rapidamente en la forma dominante de almacenamiento de estado solido para computadoras de escritorio y portatiles 5 6 Indice 1 Especificaciones 2 Antecedentes 3 Historia 4 Factores de forma 4 1 AIC Add in card 4 2 U 2 SFF 8639 4 3 U 3 SFF 8639 4 4 M 2 5 NVMe oF 6 Comparacion con AHCI 7 Soporte del sistema operativo 8 Soporte de software 9 Herramientas administrativas 9 1 nvmecontrol 9 2 nvme cli 67 10 Referencias 11 Enlaces externosEspecificaciones EditarLas especificaciones para NVMe lanzadas hasta la fecha incluyen 7 1 0e enero de 2013 1 1b julio de 2014 1 2 noviembre de 2014 1 2a octubre de 2015 1 2b junio de 2016 1 2 1 junio de 2016 1 3 mayo de 2017 1 3a octubre de 2017 1 3b mayo de 2018 1 3c mayo de 2018 1 3d marzo de 2019 1 4 junio de 2019 El cambio principal entre 1 2 y 1 3 y las nuevas caracteristicas son 8 Identificar la lista de retorno del espacio de nombres de identificadores de espacio de nombres Una lista de estructuras de descriptor de identificacion de espacio de nombres se devuelve al host para el espacio de nombres especificado Se han agregado una serie de diferencias y caracteristicas opcionales que incluyen autocomprobacion del dispositivo desinfeccion directivas particion de arranque telemetria mejoras de virtualizacion mejoras de administracion de NVMe MI administracion termica controlada por el host marca de tiempo mejora del rendimiento del controlador emulado junto con ver una serie de cambios con respecto al comportamiento anterior Antecedentes Editar Intel SSD serie 750 un SSD que utiliza NVM Express en forma de tarjeta de expansion PCI Express 3 0 4 vistas frontal y posterior Historicamente la mayoria de los SSD usaban buses como SATA SAS o Fibre Channel para interactuar con el resto de un sistema informatico Desde que los SSD estuvieron disponibles en los mercados masivos SATA se ha convertido en la forma mas tipica de conectar SSD en computadoras personales sin embargo SATA fue disenado principalmente para interactuar con unidades de disco duro mecanicas HDD y se volvio cada vez mas inadecuado para SSD lo que mejoro en velocidad con el tiempo 9 Por ejemplo dentro de aproximadamente 5 anos de la adopcion generalizada del mercado masivo 2005 2010 muchos SSD ya se vieron retenidos por las velocidades de datos comparativamente lentas disponibles para los discos duros a diferencia de los discos duros algunos SSD estan limitados por el rendimiento maximo de SATA Las SSD de gama alta se habian creado utilizando el bus PCI Express antes de NVMe pero utilizando interfaces de especificacion no estandar Al estandarizar la interfaz de los SSD los sistemas operativos solo necesitan un controlador para funcionar con todos los SSD que cumplan con la especificacion Tambien significa que cada fabricante de SSD no tiene que usar recursos adicionales para disenar controladores de interfaz especificos Esto es similar a como los dispositivos de almacenamiento masivo USB estan disenados para seguir la especificacion de clase de dispositivo de almacenamiento masivo USB y funcionan con todas las computadoras sin necesidad de controladores por dispositivo 10 Historia EditarLos primeros detalles de un nuevo estandar para acceder a la memoria no volatil surgieron en el Intel Developer Forum 2007 cuando se mostro NVMHCI como el protocolo del lado del host de un diseno arquitectonico propuesto que tenia el Open NAND Flash Interface Working Group ONFI en el lado de los chips de memoria flash 11 Ese ano se formo un grupo de trabajo NVMHCI dirigido por Intel La especificacion NVMHCI 1 0 se completo en abril de 2008 y se lanzo en el sitio web de Intel 12 13 14 El trabajo tecnico en NVMe comenzo en la segunda mitad de 2009 15 Las especificaciones NVMe fueron desarrolladas por NVM Express Workgroup que consta de mas de 90 companias Amber Huffman de Intel fue la presidenta del grupo de trabajo La version 1 0 de la especificacion se lanzo el 01 de marzo de 2011 16 mientras que la version 1 1 de la especificacion se lanzo el 11 de octubre de 2012 17 Las principales caracteristicas agregadas en la version 1 1 son E S de multiples rutas con espacio de nombres compartido y E S de dispersion de longitud arbitraria Se espera que las futuras revisiones mejoren significativamente la gestion del espacio de nombres Debido a su enfoque de caracteristicas NVMe 1 1 inicialmente se llamo Enterprise NVMHCI 18 En enero de 2013 se lanzo una actualizacion para la especificacion basica de NVMe llamada version 1 0e 19 En junio de 2011 se formo un Grupo Promotor liderado por siete companias Los primeros chipsets NVMe disponibles comercialmente fueron lanzados por Integrated Device Technology 89HF16P04AG3 y 89HF32P08AG3 en agosto de 2012 20 21 La primera unidad NVMe la unidad empresarial XS1715 de Samsung se anuncio en julio de 2013 Segun Samsung esta unidad admite una velocidad de lectura de 3 GB s seis veces mas rapidas que sus ofertas empresariales anteriores 22 La familia de controladores LSI SandForce SF3700 lanzada en noviembre de 2013 tambien es compatible con NVMe 23 24 En el Consumer Electronics Show 2014 se presento un producto prosumidor de Kingston HyperX que utilizaba este controlador y prometia un rendimiento similar 25 26 En junio de 2014 Intel anuncio sus primeros productos NVM Express la familia de SSD para centros de datos que interactua con el host a traves del bus PCI Express que incluye la serie DC P3700 la serie DC P3600 y la serie DC P3500 27 A noviembre de 2014 las unidades NVMe estan disponibles comercialmente En marzo de 2014 el grupo se incorporo para convertirse en NVM Express Inc que a noviembre de 2014 consta de mas de 65 empresas de toda la industria Las especificaciones de NVM Express son propiedad y estan mantenidas por NVM Express Inc que tambien promueve el conocimiento de la industria de NVM Express como un estandar de toda la industria NVM Express Inc esta dirigido por una junta directiva de trece miembros seleccionados del Grupo de Promotores que incluye a Cisco Dell EMC HGST Intel Micron Microsoft NetApp Oracle PMC Samsung SanDisk y Seagate 28 En septiembre de 2016 la Asociacion CompactFlash anuncio que lanzaria una nueva especificacion de tarjeta de memoria CFexpress que usa NVMe Factores de forma EditarHay muchos factores de forma de la unidad de estado solido NVMe como AIC U 2 U 3 M 2 etc AIC Add in card Editar Casi todas las primeras unidades de estado solido NVMe son HHHL o FHHL AIC con una interfaz PCIe 2 0 o 3 0 Una unidad de estado solido HHHL AIC NVMe es facil de adaptar para insertar en el zocalo PCIe de un servidor U 2 SFF 8639 Editar U 2 anteriormente conocido como SFF 8639 es una interfaz de computadora para conectar unidades de estado solido a una computadora Utiliza hasta cuatro carriles PCI Express Un servidor Dell PowerEdge R730xd puede combinar hasta 4 unidades de estado solido NVMe U 2 29 Otros proveedores de servidores como HPE IBM Inspur y Supermicro tienen el mismo tipo de soporte de producto para unidades de estado solido U 2 NVMe U 3 SFF 8639 Editar U 3 se basa en la especificacion U 2 y utiliza el mismo conector SFF 8639 Es un estandar Tri modo que combina el soporte SAS SATA y NVMe en un solo controlador U 3 tambien puede admitir el intercambio en caliente entre las diferentes unidades donde el soporte de firmware esta disponible Las unidades U 3 siguen siendo compatibles con versiones anteriores de U 2 pero las unidades U 2 no son compatibles con hosts U 3 M 2 Editar M 2 anteriormente conocido como Factor de forma de proxima generacion NGFF utiliza un bus de computadora con unidad de estado solido M 2 NVMe Las interfaces proporcionadas a traves del conector M 2 son PCI Express 3 0 o PCI Express 4 0 hasta cuatro carriles NVMe oF EditarNVM Express over Fabrics NVMe oF es el concepto de utilizar un protocolo de transporte a traves de una red para conectar dispositivos remotos a diferencia de NVMe donde los dispositivos estan conectados directamente al bus PCIe o a traves de un conmutador PCIe a un bus PCIe en septiembre de 2014 se propuso un estandar para usar NVMe sobre Fibre Channel FC y esta combinacion a menudo se denomina FC NVMe o a veces NVMe FC NVMe oF es un protocolo de comunicacion que permite que una computadora acceda a dispositivos de almacenamiento de nivel de bloque conectados a otra computadora a traves del acceso directo a memoria remota a traves de varios protocolos de transporte FC FC NVMe TCP NVMe TCP Ethernet RoCE sobre Ethernet convergente e iWARP sobre Ethernet tradicional InfiniBand NVMe sobre InfiniBand Otros protocolos de transporte de proxima generacion El estandar para NVMe sobre Fabrics fue publicado por NVM Express Inc en 2016 30 31 Los siguientes controladores implementan el protocolo NVMe oF El iniciador Linux NVMe oF y los controladores de destino 32 El iniciador NVMe oF de Storage Performance Development Kit SPDK y los controladores de destino 33 Un controlador iniciador NVMe oF para Microsoft Windows 34 Comenzando con Linux Kernel 5 0 se agrego soporte nativo para NVMe TCP Comparacion con AHCI EditarLa interfaz de controlador de host avanzado AHCI tiene el beneficio de una amplia compatibilidad de software pero tiene la desventaja de no ofrecer un rendimiento optimo cuando se usa con SSD conectados a traves del bus PCI Express Como interfaz logica AHCI se desarrollo cuando el proposito de un adaptador de bus host HBA en un sistema era conectar el subsistema de CPU memoria con un subsistema de almacenamiento mucho mas lento basado en medios magneticos giratorios Como resultado AHCI introduce ciertas ineficiencias cuando se usa con dispositivos SSD que se comportan mucho mas como DRAM que como medios giratorios 5 La interfaz del dispositivo NVMe se ha disenado desde cero aprovechando la baja latencia y el paralelismo de los SSD PCI Express y complementando el paralelismo de las CPU plataformas y aplicaciones contemporaneas En un alto nivel las ventajas basicas de NVMe sobre AHCI se relacionan con su capacidad para explotar el paralelismo en el hardware y software del host que se manifiesta por las diferencias en las profundidades de la cola de comandos la eficiencia del procesamiento de interrupciones la cantidad de accesos de registro que no se pueden almacenar en cache etc en varias mejoras de rendimiento 5 35 17 18La siguiente tabla resume las diferencias de alto nivel entre las interfaces de dispositivo logico NVMe y AHCI Comparacion de alto nivel de AHCI y NVMe 5 AHCI NVMeProfundidad maxima de cola Una cola de comando 32 comandos por cola 65535 colas 36 65536 comandos por colaAccesos de registro no almacenables en cache 2000 ciclos cada uno Seis por comando no en cola nueve por comando en cola Dos por comandoMSI X e interrupciones de direccion Una sola interrupcion sin direccion 2048 interrupciones MSI XParalelismo y multiples hilos Requiere bloqueo de sincronizacion emitir un comando Sin bloqueoEficiencia para comandos de 4 KB Los parametros del comando requieren dos recuperaciones DRAM de host serializadas Obtiene los parametros del comando en una busqueda de 64 bytesSoporte del sistema operativo Editar La posicion de las rutas de datos NVMe y las multiples colas internas dentro de varias capas de la pila de almacenamiento del nucleo Linux 37 Chrome OS El 24 de febrero de 2015 se agrego soporte para el arranque desde dispositivos NVM Express al sistema operativo Chrome 38 39 DragonFly BSD La primera version de DragonFly BSD con soporte NVMe es la version 4 6 40 FreeBSD Intel patrocino un controlador NVM Express para las cabeceras de FreeBSD y las sucursales estables 9 41 42 Los controladores nvd 4 y nvme 4 estan incluidos en la configuracion del nucleo GENERIC de forma predeterminada desde FreeBSD version 10 2 en 2015 43 Genode El soporte para NVMe de grado de consumo se agrego al marco Genode como parte de la version 18 05 44 Haiku Haiku obtuvo soporte para NVMe el 18 de abril de 2019 45 46 illumos illumos recibio soporte para NVMe el 15 de octubre de 2014 47 iOS Con el lanzamiento del iPhone 6S y 6S Plus Apple presento la primera implementacion movil de NVMe sobre PCIe en telefonos inteligentes Apple siguio estos lanzamientos con el lanzamiento del iPad Pro y el iPhone SE que tambien usan NVMe sobre PCIe 48 Linux Intel publico un controlador NVM Express para Linux el 3 de marzo de 2011 49 50 51 que se fusiono con la linea principal del nucleo Linux el 18 de enero de 2012 y se lanzo como parte de la version 3 3 del nucleo Linux el 19 de marzo de 2012 52 NetBSD NetBSD agrego soporte para NVMe en NetBSD 8 0 53 La implementacion se deriva de OpenBSD 6 0 OpenBSD El trabajo de desarrollo requerido para admitir NVMe en OpenBSD se inicio en abril de 2014 por un desarrollador senior anteriormente responsable del soporte USB 2 0 y AHCI 54 El soporte para NVMe se ha habilitado en OpenBSD Version 6 0 55 macOS En la actualizacion 10 10 3 para OS X Yosemite Apple presento soporte para NVM Express La Retina MacBook y la MacBook Pro 2016 usan NVMe sobre PCIe como la interfaz logica del dispositivo 56 Solaris Solaris recibio soporte para NVMe en Oracle Solaris 11 2 57 VMware Intel ha proporcionado un controlador NVMe para VMware 58 que se incluye en vSphere 6 0 y versiones posteriores que admite varios dispositivos NVMe 59 A partir de la actualizacion 1 de vSphere 6 el subsistema de almacenamiento definido por software VSAN de VMware tambien es compatible con dispositivos NVMe 60 Windows Microsoft agrego soporte nativo para NVMe a Windows 8 1 y Windows Server 2012 R2 35 61 Los controladores nativos para Windows 7 y Windows Server 2008 R2 se han agregado en las actualizaciones 62 OpenFabrics Alliance mantiene un controlador de Windows NVMe de codigo abierto para Windows 7 8 8 1 y Windows Server 2008R2 2012 2012R2 desarrollado a partir del codigo de referencia presentado por varias companias promotoras en el grupo de trabajo NVMe especificamente IDT Intel y LSI 63 La version actual es 1 5 de diciembre de 2016 64 Soporte de software EditarQEMU NVMe es compatible con QEMU desde la version 1 6 lanzada el 15 de agosto de 2013 65 UEFI Un controlador NVMe de codigo abierto para UEFI esta disponible en SourceForge 66 Herramientas administrativas Editarnvmecontrol Editar La herramienta nvmecontrol se usa para controlar un disco NVMe desde la linea de comandos en FreeBSD Fue agregado en FreeBSD 9 2 nvme cli 67 Editar Herramientas de espacio de usuario NVM Express para Linux 68 Referencias Editar Compare NVM Express NVM Express Inc Consultado el 24 de enero de 2017 NVMe is designed from the ground up to deliver high bandwidth and low latency storage access for current and future NVM technologies Drew Riley 13 de agosto de 2014 Intel SSD DC P3700 800GB and 1 6TB Review The Future of Storage tomshardware com Consultado el 21 de noviembre de 2014 Intel Solid State Drive DC P3600 Series PDF Intel 20 de marzo de 2015 pp 18 20 22 Consultado el 11 de abril de 2015 Paul Alcorn 5 de junio de 2015 SFFWG Renames PCIe SSD SFF 8639 Connector To U 2 Tom s Hardware Consultado el 9 de junio de 2015 a b c d Dave Landsman 9 de agosto de 2013 AHCI and NVMe as Interfaces for SATA Express Devices Overview PDF SATA IO Consultado el 2 de octubre de 2013 Paul Wassenberg 25 de junio de 2013 SATA Express PCIe Client Storage PDF SATA IO Consultado el 21 de noviembre de 2014 https nvmexpress org resources specifications https nvmexpress org changes Walker Don H A Comparison of NVMe and AHCI 31 July 2012 SATA IO Consultado el 3 de julio de 2013 NVM Express Explained PDF nvmexpress org 9 de abril de 2014 Consultado el 21 de marzo de 2015 Speeding up Flash in a flash The Inquirer 13 de octubre de 2007 Consultado el 11 de enero de 2014 http www bswd com FMS09 FMS09 T2A Huffman pdf Flash new standard tips up The Inquirer 16 de abril de 2008 Consultado el 11 de enero de 2014 http www flashmemorysummit com English Collaterals Proceedings 2008 20080813 T2A Huffman pdf http www flashmemorysummit com English Collaterals Proceedings 2013 20130813 A12 Onufryk pdf New Promoter Group Formed to Advance NVM Express 1 de junio de 2011 Consultado el 18 de septiembre de 2013 Amber Huffman editor 11 de octubre de 2012 NVM Express Revision 1 1 Specification Consultado el 18 de septiembre de 2013 David A Deming 8 de junio de 2013 PCIe based Storage PDF snia org Archivado desde el original el 20 de septiembre de 2013 Consultado el 12 de enero de 2014 Amber Huffman editor 23 de enero de 2013 NVM Express Revision 1 0e Specification Consultado el 18 de septiembre de 2013 IDT releases two NVMe PCI Express SSD controllers The Inquirer 21 de agosto de 2012 Consultado el 11 de enero de 2014 IDT Shows Off The First NVMe PCIe SSD Processor and Reference Design FMS 2012 Update The SSD Review 24 de agosto de 2012 Consultado el 11 de enero de 2014 Samsung Announces Industry s First 2 5 inch NVMe SSD StorageReview com Storage Reviews StorageReview com 18 de julio de 2013 Archivado desde el original el 10 de enero de 2014 Consultado el 11 de enero de 2014 LSI SF3700 SandForce Flash Controller Line Unveiled StorageReview com Storage Reviews StorageReview com 18 de noviembre de 2013 Archivado desde el original el 11 de enero de 2014 Consultado el 11 de enero de 2014 LSI Introduces Blazing Fast SF3700 Series SSD Controller Supports Both PCIe and SATA 6Gbps hothardware com Archivado desde el original el 5 de marzo de 2016 Consultado el 21 de marzo de 2015 Jane McEntegart Kingston Unveils First PCIe SSD 1800 MB s Read Speeds Tom s Hardware Consultado el 21 de marzo de 2015 Kingston HyperX Predator PCI Express SSD Unveiled With LSI SandForce SF3700 PCIe Flash Controller hothardware com Archivado desde el original el 28 de mayo de 2016 Consultado el 21 de marzo de 2015 Intel Solid State Drive Data Center Family for PCIe Intel Consultado el 21 de marzo de 2015 NVM Express NVM Express Organization History nvmexpress org Archivado desde el original el 23 de noviembre de 2015 Consultado el 23 de diciembre de 2015 PowerEdge R730xd Rack Server Rack Servers Dell United States www dell com en ingles estadounidense Consultado el 29 de marzo de 2019 NVM Express over Fabrics Revision 1 0 NVM Express Inc 5 de junio de 2016 Woolf David 9 de febrero de 2018 What NVMe over Fabrics Means for Data Storage Hellwig Christoph 17 de julio de 2016 NVMe Over Fabrics Support in Linux Stern Jonathan 7 de junio de 2016 Announcing the SPDK NVMf Target Randall Robert 20 de julio de 2016 Windows NVMeOF host initiator demo at FMS a b Andy Herron 2013 Advancements in Storage and File Systems in Windows 8 1 PDF snia org Archivado desde el original el 10 de enero de 2014 Consultado el 11 de enero de 2014 NVM Express specification revision 1 2 section 1 4 Theory of Operation Werner Fischer 1 de junio de 2015 Linux Storage Stack Diagram Thomas Krenn AG Consultado el 8 de junio de 2015 NVM Express ChromeOS adds boot support for NVM Express nvmexpress org Consultado el 21 de marzo de 2015 4f503189f7339c667b045ab80a949964ecbaf93e chromiumos platform depthcharge Git at Google googlesource com Consultado el 21 de marzo de 2015 DragonFly BSD 4 6 www dragonflybsd org Consultado el 8 de septiembre de 2016 Log of head sys dev nvme FreeBSD source tree The FreeBSD Project Consultado el 16 de octubre de 2012 Log of stable 9 sys dev nvme FreeBSD source tree The FreeBSD Project Consultado el 3 de julio de 2013 FreeBSD 10 2 RELEASE Release Notes The FreeBSD Project Consultado el 5 de agosto de 2015 Release notes for the Genode OS Framework 18 05 genode org 9910 NVMe devices support dev haiku os org Consultado el 18 de abril de 2019 NVMe Driver Now Available Haiku Project www haiku os org Consultado el 28 de julio de 2016 4053 Add NVME Driver Support to Illumos github com Consultado el 23 de mayo de 2016 Ho Joshua iPhone 6s and iPhone 6s Plus Preliminary Results www anandtech com Consultado el 1 de junio de 2016 Matthew Wilcox 3 de marzo de 2011 NVM Express driver LWN net Archivado desde el original el 17 de julio de 2012 Consultado el 5 de noviembre de 2013 Keith Busch 12 de agosto de 2013 Linux NVMe Driver PDF flashmemorysummit com Consultado el 5 de noviembre de 2013 IDF13 Hands on Lab Compiling the NVM Express Linux Open Source Driver and SSD Linux Benchmarks and Optimizations PDF activeevents com 2013 Archivado desde el original el 11 de enero de 2014 Consultado el 11 de enero de 2014 Merge git git infradead org users willy linux nvme kernel org 18 de enero de 2012 Consultado el 5 de noviembre de 2013 nvme Non Volatile Memory Host Controller Interface NetBSD manual pages 1 de enero de 2016 Consultado el 2 de septiembre de 2016 David Gwynne 16 de abril de 2014 non volatile memory express controller sys dev ic nvme c BSD Cross Reference Consultado el 27 de abril de 2014 David Gwynne 14 de abril de 2016 man 4 nvme OpenBSD man page Consultado el 7 de agosto de 2016 Faster NVM Express SSD Interface Arrives on Retina MacBook and OS X 10 10 3 macrumors com Consultado el 11 de abril de 2015 nvme 7D Oracle Consultado el 2 de diciembre de 2014 Intel Solid State for NVMe Drivers intel com 25 de septiembre de 2015 Consultado el 17 de marzo de 2016 VMware Compatibility Guide for NVMe devices vmware com Consultado el 17 de marzo de 2016 VSAN Now Supporting NVMe Devices vmware com 11 de noviembre de 2015 Consultado el 17 de marzo de 2016 Windows 8 1 to support hybrid disks and adds native NVMe driver Myce com 6 de septiembre de 2013 Consultado el 11 de enero de 2014 Update to support NVM Express by using native drivers in Windows 7 or Windows Server 2008 R2 Microsoft 13 de noviembre de 2014 Consultado el 17 de noviembre de 2014 Windows NVM Express Project web site Archivado desde el original el 12 de junio de 2013 Consultado el 18 de septiembre de 2013 https svn openfabrics org svnrepo nvmewin releases ChangeLog 1 6 qemu org Consultado el 21 de marzo de 2015 Download EDK II from SourceForge net Consultado el 11 de enero de 2014 GitHub linux nvme nvme cli NVMe management command line interface linux nvme 26 de marzo de 2019 consultado el 27 de marzo de 2019 NVM Express control utility The FreeBSD Project 12 de marzo de 2018 consultado el 12 de julio de 2019 Enlaces externos EditarPagina web oficial LFCS preparacion de Linux para dispositivos de memoria no volatiles LWN net 19 de abril de 2013 por Jonathan Corbet PCI de multiples rutas Express Storage Linux Foundation 12 de marzo de 2015 por Keith Busch Datos Q17157198 Multimedia NVM ExpressObtenido de https es wikipedia org w index php title NVM Express amp oldid 133287327, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos