JFFS : The Journaling Flash File System - PowerPoint PPT Presentation

About This Presentation
Title:

JFFS : The Journaling Flash File System

Description:

... inode node inode 4G node ... Relational Database ... – PowerPoint PPT presentation

Number of Views:250
Avg rating:3.0/5.0
Slides: 19
Provided by: Marily496
Category:

less

Transcript and Presenter's Notes

Title: JFFS : The Journaling Flash File System


1
JFFS The Journaling Flash File System
  • David Woodhouse
  • Red Hat, Inc.
  • 2006.01
  • ??? (shpark_at_dislab.hufs.ac.kr)

2
? ?
  1. ??
  2. ??? ???
  3. FTL (Flash Translation Layer)
  4. JFFS Version 1
  5. ?? ?? (Storage Format)
  6. ?? (Operation)
  7. ??? ???(Garbage Collection)
  8. ??? (Housekeeping)

3
? ?
  • JFFS (Journaling Flash File System)
  • Log-structured File System on Flash Devices in
    Embedded System
  • JFFS2
  • ??? ???? Garbage Collection? ??

4
??? ???
  • NOR ? NAND type
  • NOR ?? ?? ??
  • NAND ??? ??? ?? ??
  • ????? ??(Reset)? ??
  • ??? ? 100,000? ??? ????? ??
  • ??? ?? ?? ???(Wear Leveling)? ???
  • ???? ??? ??
  • Page 512 bytes
  • Out of band 16 bytes
  • ?????? ?? ?? ???? ??

5
FTL (Flash Translation Layers)
  • ???? ??? ????? ????? ???
  • ??? FTL? ???? ???? ???? ???? ??? ?
  • FTL?? ?? ?? ???? ?? ??
  • ?? FTL? ??? Journaling File System? ??? ?

6
JFFS Version 1
  • JFFS? Embedded? ??? ??? ???? System?? ???? ???
    ??? ?? System ShutDown? ???? ?? ??? ?

7
JFFS ??
  • JFFS? Buffer Cache? ???? ??

8
?? ??
  • Original JFFS? ??? LFS(Log-Structured File
    System)???
  • ???? ?????? ??? Node? ????? ??
  • JFFS1?? Log?? ??? ??? Node? ??
  • struct jffs_raw_inode
  • ? node? ? ??? inode?? ???
  • Header
  • inode?? ??? ??? ??
  • inode? ?? ?? File System? ?????
  • ???? ???? ??

9
jffs_raw_inode
10
?? ??(Cont)
  • inode? ??? ?? node? ???? ??? ??
  • ?? node? ???? version??? ??? ??
  • ?? inode? ?? node?? ???? node??? ?? ? version ???
    ??
  • version ??? 32bits?
  • ??? ???? ??? ??? ?? ? inode? ??? node? ?? ???? ??
    ?? ? ?? ??
  • ? inode? ??? 4G?? node? ??
  • ???? inode??? 32bits? ??
  • inode ??? ????? ??
  • JFFS1? raw node? ?? inode ?????(uid,gid,
    mtime,atime??)?? ??? ???? inode? ??? ?? inode?
    inode ??? ???? ??

11
Log structured
  • ???? ????? ???? ??
  • node? ??? ??? Log? ????? ???

12
?? ??
  • ? node? ???? ???? ???? ??
  • ?? ???? ?????, ?????? ???? ?????
  • ???? node?? ????? ??????, ? ???? ? ????? ???? ???
    node?? ?? ?? ? ??
  • inode?? ?? node? ?? ??? node? dirty space?? ???
  • ???????? ???? ?? node? ?
  • inode ??? inode ?????? ?? deleted flag ? ???
  • ??? inode??? ???? ????, ??? dirth space? ?

13
??
  • ??? ??? ?? ??? ????? ? node? ????? ????, ???
  • raw node? ??? ????? ?? ???? ??? ??? ??? inode
    map? ?????? ??? ??? ??? ??
  • ?? ?? ??? ??? ??? ??? ??? ?? ??? ???
  • ??????? ?? ??? ?????? ??? ????? ?? ??? ?? ??
    ?????? ??? node? ????? ?? ??
  • ?? ??? ???. ?? node? ??? ?? node?? ?? ??

14
??? ???
  • JFFS code? jffs_raw_inode ???? ?? ???? ? ?? ???
    ?? ??? dirty space? ?? ???? ???
  • Log ??? ?? ??? node? head ? ? ? ??
  • ??? node? Log ?? tail ? ???
  • ??? ???? ? ?? ???? ?? File System??? Log? head ?
    ???? ? ??? ??
  • tail ? ???? ?? ???? ??? ???? ???? ? ??? ??

15
??? ??? (Cont)
  • ??? ???? Kernel Thread?? ?? ? ??? ???? ?? ??? ?
    ??, User Process?? ?? ??? ?? ??? ? ??
  • ?? dirty space? ???? ??? Kernel Thread?
    sleep??? ??, User Process? ?? ???? ENOSPC??
    Error? ?? ??
  • ??? ??? code? ??? Log?? ??? ??? ??? ??
  • Log?? head? ??? node? ???
  • ?? node? dirty space?? head? ?? node? ??
  • ?? node? ??? ???? ??? ??? ?? Log? ? ?? ???
  • ??? ??? code? Log? tail? ??? ???? ?????? ????? ??
    ???
  • Log ?? ???? node? ?? node?? ???? ?? node?? ?? ???
    ? ??
  • ???? ???? ??? ??

16
??? ???(Cont)
  • Dirty space
  • Dirty space ? ?? ???? ?? ???? ?? ? ?
  • lt?? ??? ??? ??gt
  • lt File System?? ??? ?? ??? ?? ?gt
  • Log? ??? ???? ?? ??? ??
  • dirty space? ??? ??? ??? ??

17
??? ??? (Cont)
  • ?? ?? ?? ?? ???? ?? ???? ??? ???
  • ???? ??? ??? ??

18
???
  • JFFS? ?? ??? ????? ???? ??? Log?? head? tail???
    ???? ??? ???
  • Log?? head? ?? ?? ??? ?????? ??? ??? node? ???
    ??? ???
  • ??? ???? ???? ?? ??? ????? ??? ? ??????? ??? ???
    ???
  • ???? ??? 4?? ??? ??? ??? ???? ????? ?? ??? ??
Write a Comment
User Comments (0)
About PowerShow.com