YAFFS

YAFFS

YAFFS (de sus siglas inglés: Yet Another Flash File System, Sólo otro sistema de ficheros flash) es el primer sistema de ficheros que fue diseñado específicamente para Memoria Flash NAND, fue ideado por Charles Manning para la compañía Aleph One.

Es un sistema de ficheros de registros con soporte a transacciones que automáticamente provee "wear-levelling" y robustez ante fallos de energía. Además funciona bien sobre grandes dispositivos Flash, en términos de tiempo de inicio y uso de RAM. Se usa actualmente en productos como Linux o WinCE, que ha probado ser realmente fiable. Una variante llamada "YAFFS/Direct" se usa en situaciones donde no hay sistema operativo, sino que hay un sistema operativo empotrado o son sistemas empotrados sin SO: tiene el mismo núcleo como sistema de ficheros pero una interfaz mucho más simple para el sistema operativo y el hardware NAND de la flash.

El sistema de ficheros se publica con licencia GPL y la licencia por producto de Aleph One.

Contenido

Diseño

El diseño de YAFFS tienen como prioridades las siguientes cuestiones:

  • Memoria Flash NAND como soporte fundamental.
  • Robustez a través de las estrategias de registro.
  • Reducir significativamente la sobrecarga de RAM y los tiempos de inicio derivados de JFFSx.

Los datos de un fichero son almacenados en "trozos" consistentes con el tamaño de una página (por ej. 512B). Cada página es marcada con un identificador de fichero y un número de trozo, los números de trozo se numeran como 1, 2, 3, etc., siendo 0 la cabecera. Estas etiquetas son almacenadas en la región de datos dispersos de la memoria Flash. El número de trozo se determina dividiendo la posición del fichero por el tamaño de trozo.

Cada página dentro de un bloque debe escribirse en orden secuencial, y cada página se debe escribir una sola vez.

Cuando los datos son sobrescritos, los trozos relevantes son reemplazados por nuevas páginas escritas conteniendo los nuevos datos pero las mismas etiquetas. Los datos sobrescritos se marcan como "descartados". Las cabeceras de los ficheros son almacenados en una única página, marcada para ser diferenciada de las demás. Un bloque con sólo páginas descartadas es un bloque sucio candidato para la recolección de basura. En otro caso, las páginas válidas pueden ser copiadas a un solo bloque para que todo un bloque sucio puede ser utilizado en la recolección de basura.

Versiones

YAFFS tiene dos versiones con las siguientes limitaciones:

YAFFS1:

  • 218 ficheros (> 260.000)
  • tamaño máximo de fichero de 220 (512 MiB)
  • tamaño máximo del sistema de ficheros: 1 GiB

YAFFS2:

  • tamaño máximo del sistema de ficheros: 8 GiB

Ventajas

Además de esa reducción de limitaciones en YAFFS2 se obtienen los siguientes beneficios:

  • Añade soporte a páginas de 2KB en vez de 512B.
  • Habilidad para explotar programación de página simultánea en varios chips.
  • Mejora las prestaciones (escritura:1.5x a 5x, borrado: 4x, recolección de basura: 2x).
  • Puede soportar partes MLC de Toshiba/Sandisk.
  • Menor huella en RAM (aproximadamente 25% a 50% sobre YAFFS1).

A diferencia de JFFSx, soporta dispositivos, enlaces duros y simbólicos, y tuberías.

Véase también

Enlaces externos


Wikimedia foundation. 2010.

Игры ⚽ Поможем сделать НИР

Mira otros diccionarios:

  • YAFFS — (Yet Another Flash File System) was designed and written by Charles Manning, of Whitecliffs, New Zealand, for the company [http://www.aleph1.co.uk/ Aleph One] . YAFFS is the first file system that was designed specifically for NAND flash. Yaffs1… …   Wikipedia

  • YAFFS — (Yet Another Flash File System)  файловая система, разработанная специально для использования на NAND накопителях. Автором является Чарльз Мэннинг из Новой Зеландии. Работает со страницами памяти размером в 512 байт + 16 служебных байт.… …   Википедия

  • YAFFS — Solo Otro Sistema de Archivos Flash (o YAFFS) es el primer sistema de ficheros que es diseñado específicamente para memoria Flash NAND, fue diseñado por Charles Manning para la compañía Aleph One. Es un sistemas de ficheros de registros con… …   Enciclopedia Universal

  • Memoria flash — Este artículo o sección necesita referencias que aparezcan en una publicación acreditada, como revistas especializadas, monografías, prensa diaria o páginas de Internet fidedignas. Puedes añadirlas así o avisar …   Wikipedia Español

  • Файловая система — В этой статье не хватает ссылок на источники информации. Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена. Вы можете …   Википедия

  • Флеш-память — Не следует путать с картами памяти. Не следует путать с USB флеш накопителями. У этого термина существуют и другие значения, см. Флеш. Типы компьютерной памяти Энергозависимая DRAM (в том числе DDR SDRAM) SRAM Перспективные T RAM Z RAM TTRAM Из… …   Википедия

  • NTFS — Developer Microsoft Full name New Technology File System[1] Introduced July 1993 (Windows NT 3.1) Partition identifier 0x07 (MBR) EBD0A0A2 B9E5 4433 87C0 68B6 …   Wikipedia

  • File Allocation Table — For other uses, see Fat (disambiguation). FAT Developer Microsoft Full Name File Allocation Table FAT12 (12‑bit version) FAT16/FAT16B (16‑bit versions) FAT32 (32‑bit version with 28 bits used) Introduced …   Wikipedia

  • Coda (file system) — Coda Developer Carnegie Mellon University Introduced 1987 Features Supported operating systems Linux, NetBSD FreeBSD Coda is a distributed file system developed as a research project at Carnegie Mellon University since 19 …   Wikipedia

  • Wear levelling — (also written wear leveling) is a techniqueUS patent|6850443 Wear leveling techniques for flash EEPROM systems.] for prolonging the service life of some kinds of erasable computer storage media, such as flash memory. The term has also been used… …   Wikipedia

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”