YAFFS (original) (raw)
YAFFS (Yet Another Flash File System) — файловая система, разработанная специально для использования на NAND-накопителях, автор — Чарльз Мэннинг из Новой Зеландии.Работает со страницами памяти размером в 512 байт + 16 служебных байт. Старые модели флеш-памяти позволяли выполнять всего 2 или 3 цикла перезаписи, при отказе записи на страницу YAFFS помечала её как сбойную, выставляя байт в служебной области.
Property | Value |
---|---|
dbo:abstract | 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 para prolongar la vida útil de las memorias Flash 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. (es) YAFFS (Yet Another Flash File System) はによりデザインされ、記述された。所属はAleph Oneであり、ニュージーランドのにある。 Yaffs1はこのファイルシステムの最初のバージョンであり、512バイトに16バイト(OOB;Out-Of-Band)の予備領域を持たせた当時最新鋭のNANDチップ向けの最初のファイルシステムであった。作業は2002年に開始され、その年の後半に最初にリリースされました。最初の作業は、Toby Churchill LtdとBrightstar Engineeringが後援しました。これらのより古いチップは通常1ページあたり2~3回書き換えることができた。YAFFSにおいて、はマークされ、特定の予備領域に記録された。 より新しいNANDフラッシュはより大きなページを持っている。最初は2048バイト+64バイト予備領域であり、後に4Kのより大きいページを持ち、後者の方がより書き込み要件が厳しくなります。 消去ブロック(128キロバイト)内の各々のページはシーケンシャルに書き込まなければならず、しかも一度に書き込まなければならない。 「ライトワンスルール」(「ライトワンスプロパティ」)を適用するストレージシステムを設計することには、いくつかの利点があります。 YAFFS2はこれらのより新しいチップに対応するようデザインされた。YAFFS2はYAFFS1のソースコードに基づいていて、大きな違いとしては内部構造は512バイトサイズに固定されておらず、ブロックシーケンス番号は各々の書き込まれたページに置かれている。これにより古いページは「ライトワンス」ルールに違反すること無く論理的に上書きされる。2003年後半にリリースされました。 YAFFSは頑丈なログ構造ファイルシステムであり、データ完全性に高い優先度が設定されている。YAFFSの2番目の目標はハイパフォーマンスである。YAFFSはほとんどの代替よりも通常効率が良いだろう。またポータブルなデザインとなっており、Linux、WinCE、、RTEMS、eCos、ThreadXを始めとして様々な専用目的のOSで使用可能である。変種である「YAFFS/Direct」はOSを持たない環境、組み込みOS、ブートローダで使用され、中枢のファイルシステムとしてだけでなくOSとNANDフラッシュとのシンプルなインターフェイスとしての役割も持つ。 このファイルシステムはGPLおよびAleph Oneとのプロダクトライセンスの両方でライセンスされている。 (ja) Yaffs (Yet Another Flash File System) is a file system designed and written by Charles Manning for the company Aleph One. Yaffs1 was the first version of this file system and was designed for the then-current NAND chips with 512 byte page size (+ 16 byte spare (OOB;Out-Of-Band) area). Work started in 2002, and it was first released later that year. The initial work was sponsored by Toby Churchill Ltd, and Brightstar Engineering. These older chips also generally allow 2 or 3 write cycles per page. YAFFS takes advantage of this: are marked by writing to a specific spare area byte. Newer NAND flash chips have larger pages, first 2K pages (+ 64 bytes OOB), later 4K, with stricter write requirements. Each page within an erase block (128 kilobytes) must be written to in sequential order, and each page must be written only once. Designing a storage system that enforces a "write once rule" ("write once property") has several advantages. YAFFS2 was designed to accommodate these newer chips. It was based on the YAFFS1 source code, with the major difference being that internal structures are not fixed to assume 512 byte sizing, and a block sequence number is placed on each written page. In this way older pages can be logically overwritten without violating the "write once" rule. It was released in late 2003. YAFFS is a robust log-structured file system that holds data integrity as a high priority. A secondary YAFFS goal is high performance. YAFFS will typically outperform most alternatives. It is also designed to be portable and has been used on Linux, WinCE, pSOS, RTEMS, eCos, ThreadX, and various special-purpose OSes. A variant 'YAFFS/Direct' is used in situations where there is no OS, embedded OSes or bootloaders: it has the same core filesystem but simpler interfacing to both the higher and lower level code and the NAND flash hardware. The YAFFS codebase is licensed both under the GPL and under per-product licenses available from Aleph One. (en) YAFFS (Yet Another Flash File System) — файловая система, разработанная специально для использования на NAND-накопителях, автор — Чарльз Мэннинг из Новой Зеландии.Работает со страницами памяти размером в 512 байт + 16 служебных байт. Старые модели флеш-памяти позволяли выполнять всего 2 или 3 цикла перезаписи, при отказе записи на страницу YAFFS помечала её как сбойную, выставляя байт в служебной области. (ru) YAFFS(全称:Yet Another Flash File System)是由Aleph One公司所發展出來的NAND Flash 嵌入式檔案系统。 在YAFFS中,最小儲存單位為一個Page,檔案內的數據是儲存在固定512 bytes的Page中,每一個Page亦會有一個對應的16 bytes的Spare。YAFFS採用Tree Node Structure,由多個Tree Node(Tnode)所組成,Tnode又分成Internal Tnode與Lowest-Level Tnode,其中Internal Tnode由8個Pointers所組成,Lowest-Level Tnode由16個Entries所組成,其時間複雜度(Time Complexity)相當於O(log N),故位址轉換時間較迅速。一旦Flash Memory掛載(mount)之時,YAFFS會為每個檔案在RAM中建立一個Tree, 並隨時提供Chunk(即Page, 由yaffs_Object所配置),可是 YAFFS並未完全實作耗損平均技術(wear-leveling)演算法,因此還是會造成部份的Block過度存取。 目前YAFFS在將Data寫入Flash Memory時會執行Garbage Collection,YAFFS Garbage Collection分成兩種Mode:Aggressive Mode及Passive Mode, 而且找尋Dirtiest Block(最多Invalid Chunk)及尋找Empty Block都是透過Linear Search的方式(JFFS2是Link List的方式)。YAFFS2不再使用Partial Page Programming(YAFFS仍使用)。 (zh) |
dbo:wikiPageExternalLink | http://www.yaffs.net/yaffs-history http://www.yaffs.net https://web.archive.org/web/20020924095833/http:/www.linuxdevices.com/articles/AT9680239525.html http://code.google.com/p/unyaffs/ http://code.google.com/p/yaffs2utils/ |
dbo:wikiPageID | 2704370 (xsd:integer) |
dbo:wikiPageLength | 8119 (xsd:nonNegativeInteger) |
dbo:wikiPageRevisionID | 1087576364 (xsd:integer) |
dbo:wikiPageWikiLink | dbr:List_of_file_systems dbr:Mount_(computing) dbr:Monotonic_function dbr:Integrated_circuit dbr:JFFS dbr:GNU_General_Public_License dbr:NILFS dbr:Android_(operating_system) dbr:Linux dbr:LogFS dbc:Flash_file_systems_supported_by_the_Linux_kernel dbr:Byte dbr:ThreadX dbr:UBIFS dbr:Data_integrity dbr:Disk_formatting dbr:Log-structured_file_system dbr:ECos dbr:Firefox_OS dbr:PSOS_(real-time_operating_system) dbr:JFFS2 dbc:Embedded_Linux dbr:File_system dbr:Metadata dbr:Open_NAND_Flash_Interface_Working_Group dbr:RTEMS dbr:Random-access_memory dbr:Timestamp dbr:Gigabyte dbr:NAND_flash dbr:Microsoft_Windows_CE dbr:Checkpointing dbr:WinCE dbr:Dirty_page |
dbp:developer | Charles Manning (en) |
dbp:fullName | Yet Another Flash File System (en) |
dbp:os | Android, Firefox OS, Linux, Windows CE, pSOS, RTEMS, eCos, ThreadX, LCOS (en) |
dbp:wikiPageUsesTemplate | dbt:Citation_needed dbt:Clarify dbt:Portal dbt:Refimprove dbt:Reflist dbt:Time-context dbt:Filesystem dbt:Infobox_filesystem |
dct:subject | dbc:Flash_file_systems_supported_by_the_Linux_kernel dbc:Embedded_Linux |
gold:hypernym | dbr:Version |
rdf:type | dbo:Work yago:WikicatLinuxKernel-supportedFlashFileSystems yago:Abstraction100002137 yago:Arrangement105726596 yago:ClassificationSystem105727220 yago:Cognition100023271 yago:FileSystem105732614 yago:PsychologicalFeature100023100 yago:Structure105726345 yago:WikicatFlashFileSystems |
rdfs:comment | YAFFS (Yet Another Flash File System) — файловая система, разработанная специально для использования на NAND-накопителях, автор — Чарльз Мэннинг из Новой Зеландии.Работает со страницами памяти размером в 512 байт + 16 служебных байт. Старые модели флеш-памяти позволяли выполнять всего 2 или 3 цикла перезаписи, при отказе записи на страницу YAFFS помечала её как сбойную, выставляя байт в служебной области. (ru) 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. El sistema de ficheros se publica con licencia GPL y la licencia por producto de Aleph One. (es) Yaffs (Yet Another Flash File System) is a file system designed and written by Charles Manning for the company Aleph One. Yaffs1 was the first version of this file system and was designed for the then-current NAND chips with 512 byte page size (+ 16 byte spare (OOB;Out-Of-Band) area). Work started in 2002, and it was first released later that year. The initial work was sponsored by Toby Churchill Ltd, and Brightstar Engineering. Designing a storage system that enforces a "write once rule" ("write once property") has several advantages. (en) YAFFS (Yet Another Flash File System) はによりデザインされ、記述された。所属はAleph Oneであり、ニュージーランドのにある。 Yaffs1はこのファイルシステムの最初のバージョンであり、512バイトに16バイト(OOB;Out-Of-Band)の予備領域を持たせた当時最新鋭のNANDチップ向けの最初のファイルシステムであった。作業は2002年に開始され、その年の後半に最初にリリースされました。最初の作業は、Toby Churchill LtdとBrightstar Engineeringが後援しました。これらのより古いチップは通常1ページあたり2~3回書き換えることができた。YAFFSにおいて、はマークされ、特定の予備領域に記録された。 より新しいNANDフラッシュはより大きなページを持っている。最初は2048バイト+64バイト予備領域であり、後に4Kのより大きいページを持ち、後者の方がより書き込み要件が厳しくなります。 消去ブロック(128キロバイト)内の各々のページはシーケンシャルに書き込まなければならず、しかも一度に書き込まなければならない。 「ライトワンスルール」(「ライトワンスプロパティ」)を適用するストレージシステムを設計することには、いくつかの利点があります。 (ja) YAFFS(全称:Yet Another Flash File System)是由Aleph One公司所發展出來的NAND Flash 嵌入式檔案系统。 在YAFFS中,最小儲存單位為一個Page,檔案內的數據是儲存在固定512 bytes的Page中,每一個Page亦會有一個對應的16 bytes的Spare。YAFFS採用Tree Node Structure,由多個Tree Node(Tnode)所組成,Tnode又分成Internal Tnode與Lowest-Level Tnode,其中Internal Tnode由8個Pointers所組成,Lowest-Level Tnode由16個Entries所組成,其時間複雜度(Time Complexity)相當於O(log N),故位址轉換時間較迅速。一旦Flash Memory掛載(mount)之時,YAFFS會為每個檔案在RAM中建立一個Tree, 並隨時提供Chunk(即Page, 由yaffs_Object所配置),可是 YAFFS並未完全實作耗損平均技術(wear-leveling)演算法,因此還是會造成部份的Block過度存取。 (zh) |
rdfs:label | YAFFS (de) YAFFS (es) YAFFS (ja) YAFFS (ru) YAFFS (en) YAFFS (zh) |
owl:sameAs | freebase:YAFFS yago-res:YAFFS wikidata:YAFFS dbpedia-de:YAFFS dbpedia-es:YAFFS dbpedia-ja:YAFFS dbpedia-ru:YAFFS dbpedia-tr:YAFFS dbpedia-zh:YAFFS https://global.dbpedia.org/id/2Lp2g |
prov:wasDerivedFrom | wikipedia-en:YAFFS?oldid=1087576364&ns=0 |
foaf:isPrimaryTopicOf | wikipedia-en:YAFFS |
is dbo:wikiPageRedirects of | dbr:YAFFS2 |
is dbo:wikiPageWikiLink of | dbr:List_of_file_systems dbr:Memory_Technology_Device dbr:JFFS dbr:List_of_log-structured_file_systems dbr:Comparison_of_bootloaders dbr:Comparison_of_open-source_operating_systems dbr:The_Sleuth_Kit dbr:Android_Gingerbread dbr:Android_version_history dbr:Yet_another dbr:Ext4 dbr:Flash_memory dbr:JFFS2 dbr:File_system dbr:Wear_leveling dbr:Extended_file_attributes dbr:Flash_file_system dbr:YAFFS2 |
is foaf:primaryTopic of | wikipedia-en:YAFFS |