SlideShare a Scribd company logo
1 of 10
BITS Pilani
Pilani Campus
Data Storage Technologies
& Networks
Dr. Virendra Singh Shekhawat
Department of Computer Science and Information Systems
BITS Pilani, Pilani Campus
Topics
• Flash File System
– Wear leveling
2
BITS Pilani, Pilani Campus
Flash Memory
• Flash chips are arranged into blocks which are typically 128KB
on NOR and 8KB on NAND flash
• All flash cells are preset to one. These cells can be individually
programmed to zero
– Burt resetting bits from zero to one cannot be done individually,
can be done only by resetting or erasing a complete block
• The lifetime of a flash chip is measured in such erase cycles,
with the typical lifetime being 100,000 erases per block
– Erase count per block should be evenly distributed across all the
blocks for better life time of the flash chip
– Process is known as “wear leveling”
3
BITS Pilani, Pilani Campus
Traditional File System: Erase-
Modify-Write back
• Use 1:1 mapping from the emulated block
device to the flash chip
– read the whole erase block, modifying the
appropriate part of the buffer, erase and rewrite the
entire block
• No wear leveling…!
• Unsafe due to power loss between erase and write back
• Slightly better method
– by gathering writes to a single erase block and only
performing the erase/modify/write back procedure
when a write to a different erase block is requested.
4
BITS Pilani, Pilani Campus
Journaling File System
• How to provide wear leveling…?
– emulated block device are stored in varying
locations on the physical medium
– needs to keep track of the current location of each
sector in the emulated block device
• Use of Translation Layer to keep track of current mapping
– It is a form of Journaling File System
5
BITS Pilani, Pilani Campus
JFFS Storage Format
• It is a log structured file system
• Nodes containing data and metadata are stored
on the flash chips sequentially, progressing
strictly linearly through the storage space
available.
6
BITS Pilani, Pilani Campus
Wear Leveling
7
BITS Pilani, Pilani Campus
Flash Memory: Operations
• Out-place updating is usually done to avoid erasing
operations on every write
– Latest copy of data is “live”
• Page meta-data
– “Live” vs “dead”
– “Free” pages are unused pages
• Cleaning
– Required when free pages are not available
– Erasure is done per block
• May require copying of live data
• Some blocks may be erased more than others
– “Worn” pages
8
BITS Pilani, Pilani Campus
File System and Flash Access
• Although File Systems abstract out device details
– Most file system internals were designed for semi-
random access models:
• i.e. notions of blocks/sectors, block addresses, and buffers
tied to blocks are incorporated into many file systems
– E.g. Block devices in Unix file systems
• So, either file systems are redesigned for flash
• Or, device drivers handle flash memory access and
file systems use the same access models
– Require a Flash Translation Layer that emulates a block
device
9
BITS Pilani, Pilani Campus
Thank You!
10

More Related Content

What's hot

Multithreaded processors ppt
Multithreaded processors pptMultithreaded processors ppt
Multithreaded processors pptSiddhartha Anand
 
Cache coherence problem and its solutions
Cache coherence problem and its solutionsCache coherence problem and its solutions
Cache coherence problem and its solutionsMajid Saleem
 
IT209 Cpu Structure Report
IT209 Cpu Structure ReportIT209 Cpu Structure Report
IT209 Cpu Structure ReportBis Aquino
 
Chip Multithreading Systems Need a New Operating System Scheduler
Chip Multithreading Systems Need a New Operating System Scheduler Chip Multithreading Systems Need a New Operating System Scheduler
Chip Multithreading Systems Need a New Operating System Scheduler Sarwan ali
 
Multiprocessor Architecture for Image Processing
Multiprocessor Architecture for Image ProcessingMultiprocessor Architecture for Image Processing
Multiprocessor Architecture for Image Processingmayank.grd
 
Symmetric multiprocessing and Microkernel
Symmetric multiprocessing and MicrokernelSymmetric multiprocessing and Microkernel
Symmetric multiprocessing and MicrokernelManoraj Pannerselum
 
Lecture 6.1
Lecture  6.1Lecture  6.1
Lecture 6.1Mr SMAK
 
Multithreading computer architecture
 Multithreading computer architecture  Multithreading computer architecture
Multithreading computer architecture Haris456
 

What's hot (11)

Multithreaded processors ppt
Multithreaded processors pptMultithreaded processors ppt
Multithreaded processors ppt
 
Cache coherence problem and its solutions
Cache coherence problem and its solutionsCache coherence problem and its solutions
Cache coherence problem and its solutions
 
Cache coherence
Cache coherenceCache coherence
Cache coherence
 
IT209 Cpu Structure Report
IT209 Cpu Structure ReportIT209 Cpu Structure Report
IT209 Cpu Structure Report
 
Chip Multithreading Systems Need a New Operating System Scheduler
Chip Multithreading Systems Need a New Operating System Scheduler Chip Multithreading Systems Need a New Operating System Scheduler
Chip Multithreading Systems Need a New Operating System Scheduler
 
Lecture5
Lecture5Lecture5
Lecture5
 
Multiprocessor Architecture for Image Processing
Multiprocessor Architecture for Image ProcessingMultiprocessor Architecture for Image Processing
Multiprocessor Architecture for Image Processing
 
Symmetric multiprocessing and Microkernel
Symmetric multiprocessing and MicrokernelSymmetric multiprocessing and Microkernel
Symmetric multiprocessing and Microkernel
 
Lecture 6.1
Lecture  6.1Lecture  6.1
Lecture 6.1
 
Lecture1
Lecture1Lecture1
Lecture1
 
Multithreading computer architecture
 Multithreading computer architecture  Multithreading computer architecture
Multithreading computer architecture
 

Similar to M2 221-ssd fs-rl_2.2.1

M2 212-unix fs-rl_2.1.2
M2 212-unix fs-rl_2.1.2M2 212-unix fs-rl_2.1.2
M2 212-unix fs-rl_2.1.2MrudulaJoshi10
 
Btrfs by Chris Mason
Btrfs by Chris MasonBtrfs by Chris Mason
Btrfs by Chris MasonTerry Wang
 
Buffer cache unix ppt Mrs.Sowmya Jyothi
Buffer cache unix ppt Mrs.Sowmya JyothiBuffer cache unix ppt Mrs.Sowmya Jyothi
Buffer cache unix ppt Mrs.Sowmya JyothiSowmya Jyothi
 
M3 nas architecture-3.1.1
M3 nas architecture-3.1.1M3 nas architecture-3.1.1
M3 nas architecture-3.1.1MrudulaJoshi10
 
Kernel Memory Allocation, Review of Relocation & Program Forms
Kernel Memory Allocation, Review of Relocation & Program FormsKernel Memory Allocation, Review of Relocation & Program Forms
Kernel Memory Allocation, Review of Relocation & Program FormsMeghaj Mallick
 
Leveraging Structured Data To Reduce Disk, IO & Network Bandwidth
Leveraging Structured Data To Reduce Disk, IO & Network BandwidthLeveraging Structured Data To Reduce Disk, IO & Network Bandwidth
Leveraging Structured Data To Reduce Disk, IO & Network BandwidthPerforce
 
Computer System Architecture Lecture Note 8.2 Cache Memory
Computer System Architecture Lecture Note 8.2 Cache MemoryComputer System Architecture Lecture Note 8.2 Cache Memory
Computer System Architecture Lecture Note 8.2 Cache MemoryBudditha Hettige
 
Computer Memory Hierarchy Computer Architecture
Computer Memory Hierarchy Computer ArchitectureComputer Memory Hierarchy Computer Architecture
Computer Memory Hierarchy Computer ArchitectureHaris456
 
Lect 27 28_29_30_virtual_memory
Lect 27 28_29_30_virtual_memoryLect 27 28_29_30_virtual_memory
Lect 27 28_29_30_virtual_memorySoumendu Sarkar
 

Similar to M2 221-ssd fs-rl_2.2.1 (20)

M2 212-unix fs-rl_2.1.2
M2 212-unix fs-rl_2.1.2M2 212-unix fs-rl_2.1.2
M2 212-unix fs-rl_2.1.2
 
kerch04.ppt
kerch04.pptkerch04.ppt
kerch04.ppt
 
M1 rl 1.1.1
M1 rl 1.1.1M1 rl 1.1.1
M1 rl 1.1.1
 
M1 rl 1.2.1
M1 rl 1.2.1M1 rl 1.2.1
M1 rl 1.2.1
 
Btrfs by Chris Mason
Btrfs by Chris MasonBtrfs by Chris Mason
Btrfs by Chris Mason
 
Buffer cache unix ppt Mrs.Sowmya Jyothi
Buffer cache unix ppt Mrs.Sowmya JyothiBuffer cache unix ppt Mrs.Sowmya Jyothi
Buffer cache unix ppt Mrs.Sowmya Jyothi
 
M3 nas architecture-3.1.1
M3 nas architecture-3.1.1M3 nas architecture-3.1.1
M3 nas architecture-3.1.1
 
Kernel Memory Allocation, Review of Relocation & Program Forms
Kernel Memory Allocation, Review of Relocation & Program FormsKernel Memory Allocation, Review of Relocation & Program Forms
Kernel Memory Allocation, Review of Relocation & Program Forms
 
cache memory
 cache memory cache memory
cache memory
 
Leveraging Structured Data To Reduce Disk, IO & Network Bandwidth
Leveraging Structured Data To Reduce Disk, IO & Network BandwidthLeveraging Structured Data To Reduce Disk, IO & Network Bandwidth
Leveraging Structured Data To Reduce Disk, IO & Network Bandwidth
 
Computer System Architecture Lecture Note 8.2 Cache Memory
Computer System Architecture Lecture Note 8.2 Cache MemoryComputer System Architecture Lecture Note 8.2 Cache Memory
Computer System Architecture Lecture Note 8.2 Cache Memory
 
Computer Memory Hierarchy Computer Architecture
Computer Memory Hierarchy Computer ArchitectureComputer Memory Hierarchy Computer Architecture
Computer Memory Hierarchy Computer Architecture
 
Multiprocessor
MultiprocessorMultiprocessor
Multiprocessor
 
Extlect03
Extlect03Extlect03
Extlect03
 
M4 san features-4.3.1
M4 san features-4.3.1M4 san features-4.3.1
M4 san features-4.3.1
 
Cache coherence
Cache coherenceCache coherence
Cache coherence
 
Class notesfeb27
Class notesfeb27Class notesfeb27
Class notesfeb27
 
M4 fc stack-4.1.1
M4 fc stack-4.1.1M4 fc stack-4.1.1
M4 fc stack-4.1.1
 
Memory (Computer Organization)
Memory (Computer Organization)Memory (Computer Organization)
Memory (Computer Organization)
 
Lect 27 28_29_30_virtual_memory
Lect 27 28_29_30_virtual_memoryLect 27 28_29_30_virtual_memory
Lect 27 28_29_30_virtual_memory
 

More from MrudulaJoshi10

More from MrudulaJoshi10 (11)

M4 rdma 4.5.1
M4 rdma 4.5.1M4 rdma 4.5.1
M4 rdma 4.5.1
 
M4 f co-e_4.4.2
M4 f co-e_4.4.2M4 f co-e_4.4.2
M4 f co-e_4.4.2
 
M4 fc san-4.2.1
M4 fc san-4.2.1M4 fc san-4.2.1
M4 fc san-4.2.1
 
M3 smb cifs-protocol_3.3.1
M3 smb cifs-protocol_3.3.1M3 smb cifs-protocol_3.3.1
M3 smb cifs-protocol_3.3.1
 
M3 nfs fs-3.2.1
M3 nfs fs-3.2.1M3 nfs fs-3.2.1
M3 nfs fs-3.2.1
 
M3 nfs fs-_performance_3.2.2
M3 nfs fs-_performance_3.2.2M3 nfs fs-_performance_3.2.2
M3 nfs fs-_performance_3.2.2
 
M2 242-scsi-bus rl-2.4.2
M2 242-scsi-bus rl-2.4.2M2 242-scsi-bus rl-2.4.2
M2 242-scsi-bus rl-2.4.2
 
M2 241-buses rl-2.4.1
M2 241-buses rl-2.4.1M2 241-buses rl-2.4.1
M2 241-buses rl-2.4.1
 
M2 231-io tech-rl_2.3.1
M2 231-io tech-rl_2.3.1M2 231-io tech-rl_2.3.1
M2 231-io tech-rl_2.3.1
 
M2 211-unix fs-rl_2.1.1
M2 211-unix fs-rl_2.1.1M2 211-unix fs-rl_2.1.1
M2 211-unix fs-rl_2.1.1
 
M1 rl 1.4.1
M1 rl 1.4.1M1 rl 1.4.1
M1 rl 1.4.1
 

Recently uploaded

result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college projectTonystark477637
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...roncy bisnoi
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...ranjana rawat
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGMANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGSIVASHANKAR N
 
Online banking management system project.pdf
Online banking management system project.pdfOnline banking management system project.pdf
Online banking management system project.pdfKamal Acharya
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesPrabhanshu Chaturvedi
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)simmis5
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 

Recently uploaded (20)

(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college project
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGMANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
 
Online banking management system project.pdf
Online banking management system project.pdfOnline banking management system project.pdf
Online banking management system project.pdf
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and Properties
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 

M2 221-ssd fs-rl_2.2.1

  • 1. BITS Pilani Pilani Campus Data Storage Technologies & Networks Dr. Virendra Singh Shekhawat Department of Computer Science and Information Systems
  • 2. BITS Pilani, Pilani Campus Topics • Flash File System – Wear leveling 2
  • 3. BITS Pilani, Pilani Campus Flash Memory • Flash chips are arranged into blocks which are typically 128KB on NOR and 8KB on NAND flash • All flash cells are preset to one. These cells can be individually programmed to zero – Burt resetting bits from zero to one cannot be done individually, can be done only by resetting or erasing a complete block • The lifetime of a flash chip is measured in such erase cycles, with the typical lifetime being 100,000 erases per block – Erase count per block should be evenly distributed across all the blocks for better life time of the flash chip – Process is known as “wear leveling” 3
  • 4. BITS Pilani, Pilani Campus Traditional File System: Erase- Modify-Write back • Use 1:1 mapping from the emulated block device to the flash chip – read the whole erase block, modifying the appropriate part of the buffer, erase and rewrite the entire block • No wear leveling…! • Unsafe due to power loss between erase and write back • Slightly better method – by gathering writes to a single erase block and only performing the erase/modify/write back procedure when a write to a different erase block is requested. 4
  • 5. BITS Pilani, Pilani Campus Journaling File System • How to provide wear leveling…? – emulated block device are stored in varying locations on the physical medium – needs to keep track of the current location of each sector in the emulated block device • Use of Translation Layer to keep track of current mapping – It is a form of Journaling File System 5
  • 6. BITS Pilani, Pilani Campus JFFS Storage Format • It is a log structured file system • Nodes containing data and metadata are stored on the flash chips sequentially, progressing strictly linearly through the storage space available. 6
  • 7. BITS Pilani, Pilani Campus Wear Leveling 7
  • 8. BITS Pilani, Pilani Campus Flash Memory: Operations • Out-place updating is usually done to avoid erasing operations on every write – Latest copy of data is “live” • Page meta-data – “Live” vs “dead” – “Free” pages are unused pages • Cleaning – Required when free pages are not available – Erasure is done per block • May require copying of live data • Some blocks may be erased more than others – “Worn” pages 8
  • 9. BITS Pilani, Pilani Campus File System and Flash Access • Although File Systems abstract out device details – Most file system internals were designed for semi- random access models: • i.e. notions of blocks/sectors, block addresses, and buffers tied to blocks are incorporated into many file systems – E.g. Block devices in Unix file systems • So, either file systems are redesigned for flash • Or, device drivers handle flash memory access and file systems use the same access models – Require a Flash Translation Layer that emulates a block device 9
  • 10. BITS Pilani, Pilani Campus Thank You! 10