Enviar búsqueda
Cargar
Embedded Storage Management
•
2 recomendaciones
•
4,158 vistas
Anil Kumar Pugalia
Seguir
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 16
Recomendados
Architecture Porting
Architecture Porting
Anil Kumar Pugalia
Introduction to Linux
Introduction to Linux
Anil Kumar Pugalia
BeagleBone Black Bootloaders
BeagleBone Black Bootloaders
SysPlay eLearning Academy for You
Embedded Software Design
Embedded Software Design
Anil Kumar Pugalia
Linux Kernel Overview
Linux Kernel Overview
Anil Kumar Pugalia
Character Drivers
Character Drivers
Anil Kumar Pugalia
Kernel Debugging & Profiling
Kernel Debugging & Profiling
Anil Kumar Pugalia
Toolchain
Toolchain
Anil Kumar Pugalia
Recomendados
Architecture Porting
Architecture Porting
Anil Kumar Pugalia
Introduction to Linux
Introduction to Linux
Anil Kumar Pugalia
BeagleBone Black Bootloaders
BeagleBone Black Bootloaders
SysPlay eLearning Academy for You
Embedded Software Design
Embedded Software Design
Anil Kumar Pugalia
Linux Kernel Overview
Linux Kernel Overview
Anil Kumar Pugalia
Character Drivers
Character Drivers
Anil Kumar Pugalia
Kernel Debugging & Profiling
Kernel Debugging & Profiling
Anil Kumar Pugalia
Toolchain
Toolchain
Anil Kumar Pugalia
Kernel Debugging & Profiling
Kernel Debugging & Profiling
Anil Kumar Pugalia
Introduction to Linux
Introduction to Linux
Anil Kumar Pugalia
Block Drivers
Block Drivers
Anil Kumar Pugalia
BeagleBoard-xM Booting Process
BeagleBoard-xM Booting Process
SysPlay eLearning Academy for You
Real Time Systems
Real Time Systems
Anil Kumar Pugalia
Linux Porting
Linux Porting
Anil Kumar Pugalia
Linux User Space Debugging & Profiling
Linux User Space Debugging & Profiling
Anil Kumar Pugalia
Introduction to Embedded Systems
Introduction to Embedded Systems
Anil Kumar Pugalia
BeagleBone Black Bootloaders
BeagleBone Black Bootloaders
SysPlay eLearning Academy for You
Bootloaders
Bootloaders
Anil Kumar Pugalia
Linux Memory Management
Linux Memory Management
Anil Kumar Pugalia
USB Drivers
USB Drivers
Anil Kumar Pugalia
PCI Drivers
PCI Drivers
Anil Kumar Pugalia
BeagleBone Black Booting Process
BeagleBone Black Booting Process
SysPlay eLearning Academy for You
Linux Network Management
Linux Network Management
Anil Kumar Pugalia
SPI Drivers
SPI Drivers
SysPlay eLearning Academy for You
Signals
Signals
Anil Kumar Pugalia
Video Drivers
Video Drivers
Anil Kumar Pugalia
File System Modules
File System Modules
Anil Kumar Pugalia
Synchronization
Synchronization
Anil Kumar Pugalia
Embedded I/O Management
Embedded I/O Management
Anil Kumar Pugalia
Interrupts
Interrupts
Anil Kumar Pugalia
Más contenido relacionado
La actualidad más candente
Kernel Debugging & Profiling
Kernel Debugging & Profiling
Anil Kumar Pugalia
Introduction to Linux
Introduction to Linux
Anil Kumar Pugalia
Block Drivers
Block Drivers
Anil Kumar Pugalia
BeagleBoard-xM Booting Process
BeagleBoard-xM Booting Process
SysPlay eLearning Academy for You
Real Time Systems
Real Time Systems
Anil Kumar Pugalia
Linux Porting
Linux Porting
Anil Kumar Pugalia
Linux User Space Debugging & Profiling
Linux User Space Debugging & Profiling
Anil Kumar Pugalia
Introduction to Embedded Systems
Introduction to Embedded Systems
Anil Kumar Pugalia
BeagleBone Black Bootloaders
BeagleBone Black Bootloaders
SysPlay eLearning Academy for You
Bootloaders
Bootloaders
Anil Kumar Pugalia
Linux Memory Management
Linux Memory Management
Anil Kumar Pugalia
USB Drivers
USB Drivers
Anil Kumar Pugalia
PCI Drivers
PCI Drivers
Anil Kumar Pugalia
BeagleBone Black Booting Process
BeagleBone Black Booting Process
SysPlay eLearning Academy for You
Linux Network Management
Linux Network Management
Anil Kumar Pugalia
SPI Drivers
SPI Drivers
SysPlay eLearning Academy for You
Signals
Signals
Anil Kumar Pugalia
Video Drivers
Video Drivers
Anil Kumar Pugalia
File System Modules
File System Modules
Anil Kumar Pugalia
Synchronization
Synchronization
Anil Kumar Pugalia
La actualidad más candente
(20)
Kernel Debugging & Profiling
Kernel Debugging & Profiling
Introduction to Linux
Introduction to Linux
Block Drivers
Block Drivers
BeagleBoard-xM Booting Process
BeagleBoard-xM Booting Process
Real Time Systems
Real Time Systems
Linux Porting
Linux Porting
Linux User Space Debugging & Profiling
Linux User Space Debugging & Profiling
Introduction to Embedded Systems
Introduction to Embedded Systems
BeagleBone Black Bootloaders
BeagleBone Black Bootloaders
Bootloaders
Bootloaders
Linux Memory Management
Linux Memory Management
USB Drivers
USB Drivers
PCI Drivers
PCI Drivers
BeagleBone Black Booting Process
BeagleBone Black Booting Process
Linux Network Management
Linux Network Management
SPI Drivers
SPI Drivers
Signals
Signals
Video Drivers
Video Drivers
File System Modules
File System Modules
Synchronization
Synchronization
Destacado
Embedded I/O Management
Embedded I/O Management
Anil Kumar Pugalia
Interrupts
Interrupts
Anil Kumar Pugalia
File Systems
File Systems
Anil Kumar Pugalia
Embedded Applications
Embedded Applications
Anil Kumar Pugalia
Timers
Timers
Anil Kumar Pugalia
Processes
Processes
Anil Kumar Pugalia
Embedded C
Embedded C
Anil Kumar Pugalia
gcc and friends
gcc and friends
Anil Kumar Pugalia
System Calls
System Calls
Anil Kumar Pugalia
Board Bringup
Board Bringup
Anil Kumar Pugalia
Inter Process Communication
Inter Process Communication
Anil Kumar Pugalia
Linux File System
Linux File System
Anil Kumar Pugalia
Threads
Threads
Anil Kumar Pugalia
Audio Drivers
Audio Drivers
Anil Kumar Pugalia
Destacado
(14)
Embedded I/O Management
Embedded I/O Management
Interrupts
Interrupts
File Systems
File Systems
Embedded Applications
Embedded Applications
Timers
Timers
Processes
Processes
Embedded C
Embedded C
gcc and friends
gcc and friends
System Calls
System Calls
Board Bringup
Board Bringup
Inter Process Communication
Inter Process Communication
Linux File System
Linux File System
Threads
Threads
Audio Drivers
Audio Drivers
Similar a Embedded Storage Management
建構嵌入式Linux系統於SD Card
建構嵌入式Linux系統於SD Card
艾鍗科技
Presentation sparc m6 m5-32 server technical overview
Presentation sparc m6 m5-32 server technical overview
solarisyougood
Towards Software Defined Persistent Memory
Towards Software Defined Persistent Memory
Swaminathan Sundararaman
Memory Management in Android
Memory Management in Android
Opersys inc.
Memory Management in Android
Memory Management in Android
Opersys inc.
Mobile Hacking using Linux Drivers
Mobile Hacking using Linux Drivers
Anil Kumar Pugalia
Cheap vs High End PC
Cheap vs High End PC
Manish Tuladhar
LCE13: Android Graphics Upstreaming
LCE13: Android Graphics Upstreaming
Linaro
No[1][1]
No[1][1]
51 lecture
Memory Management in Android
Memory Management in Android
Opersys inc.
Вадим Сухомлинов _Платформы Intel(r) Atom(tm) – новые возможности для социаль...
Вадим Сухомлинов _Платформы Intel(r) Atom(tm) – новые возможности для социаль...
Ingria. Technopark St. Petersburg
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Samsung Open Source Group
Dlm ppt
Dlm ppt
Prasath Chidambaram
Memory Management in Android
Memory Management in Android
Opersys inc.
linux trim
linux trim
bergwolf
Memory Management in TIZEN - Samsung SW Platform Team
Memory Management in TIZEN - Samsung SW Platform Team
Ryo Jin
Comp 129 final exam 100% correct answers
Comp 129 final exam 100% correct answers
ProfessorLance
my Windows 7 info
my Windows 7 info
isky guard
Comp 129 final exam 100% correct answers
Comp 129 final exam 100% correct answers
ProfessorLance
The ideal and reality of NVDIMM RAS
The ideal and reality of NVDIMM RAS
Yasunori Goto
Similar a Embedded Storage Management
(20)
建構嵌入式Linux系統於SD Card
建構嵌入式Linux系統於SD Card
Presentation sparc m6 m5-32 server technical overview
Presentation sparc m6 m5-32 server technical overview
Towards Software Defined Persistent Memory
Towards Software Defined Persistent Memory
Memory Management in Android
Memory Management in Android
Memory Management in Android
Memory Management in Android
Mobile Hacking using Linux Drivers
Mobile Hacking using Linux Drivers
Cheap vs High End PC
Cheap vs High End PC
LCE13: Android Graphics Upstreaming
LCE13: Android Graphics Upstreaming
No[1][1]
No[1][1]
Memory Management in Android
Memory Management in Android
Вадим Сухомлинов _Платформы Intel(r) Atom(tm) – новые возможности для социаль...
Вадим Сухомлинов _Платформы Intel(r) Atom(tm) – новые возможности для социаль...
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Dlm ppt
Dlm ppt
Memory Management in Android
Memory Management in Android
linux trim
linux trim
Memory Management in TIZEN - Samsung SW Platform Team
Memory Management in TIZEN - Samsung SW Platform Team
Comp 129 final exam 100% correct answers
Comp 129 final exam 100% correct answers
my Windows 7 info
my Windows 7 info
Comp 129 final exam 100% correct answers
Comp 129 final exam 100% correct answers
The ideal and reality of NVDIMM RAS
The ideal and reality of NVDIMM RAS
Más de Anil Kumar Pugalia
Processes
Processes
Anil Kumar Pugalia
System Calls
System Calls
Anil Kumar Pugalia
Playing with R L C Circuits
Playing with R L C Circuits
Anil Kumar Pugalia
Shell Scripting
Shell Scripting
Anil Kumar Pugalia
References
References
Anil Kumar Pugalia
Functional Programming with LISP
Functional Programming with LISP
Anil Kumar Pugalia
Power of vi
Power of vi
Anil Kumar Pugalia
"make" system
"make" system
Anil Kumar Pugalia
Hardware Design for Software Hackers
Hardware Design for Software Hackers
Anil Kumar Pugalia
RPM Building
RPM Building
Anil Kumar Pugalia
Más de Anil Kumar Pugalia
(10)
Processes
Processes
System Calls
System Calls
Playing with R L C Circuits
Playing with R L C Circuits
Shell Scripting
Shell Scripting
References
References
Functional Programming with LISP
Functional Programming with LISP
Power of vi
Power of vi
"make" system
"make" system
Hardware Design for Software Hackers
Hardware Design for Software Hackers
RPM Building
RPM Building
Último
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Martijn de Jong
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
naman860154
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
hans926745
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Delhi Call girls
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
Sinan KOZAK
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
Paola De la Torre
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
Results
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Delhi Call girls
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
The Digital Insurer
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Gabriella Davis
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
gurkirankumar98700
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Katpro Technologies
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
Slack Application Development 101 Slides
Slack Application Development 101 Slides
praypatel2
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
The Digital Insurer
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
RTylerCroy
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
Radu Cotescu
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Igalia
Último
(20)
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Slack Application Development 101 Slides
Slack Application Development 101 Slides
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Embedded Storage Management
1.
Embedded Storage
Management © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> All Rights Reserved.
2.
What to Expect? W's
of Memory Technology Devices MTD Subsystem MTD related Drivers Flash File Systems Flash Tools © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 2 All Rights Reserved.
3.
Storage Timeline Traditionally (for
most of past 20+ years) ROM – For read-only storage NVRAM – For read-write storage Equating with today's technology Low-density Costlier Latest trend is flash technology devices More commonly referred as MTD Comes as NOR, NAND, some exotic varieties Best suited for Embedded Systems © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 3 All Rights Reserved.
4.
What are Memory Technology
Devices? Embedded Flash Memory Contains Large Erase Blocks 32KB to 128KB Maintains three main Operations Read, Write, Erase from Erase Block Bad Erase Blocks to be dealt by software Erase Blocks get worn out after some erase cycles © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 4 All Rights Reserved.
5.
NOR Flash Reading like
RAM Random Access Execute Code (XIP) Could be replacement for ROM (but slower) Manufacturers Intel, AMD, Fujitsu and Toshiba Capacity Typically from a few KBs to 64MB © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 5 All Rights Reserved.
6.
NAND Flash Reading like
Hard Disk Multiples of 512 bytes at a time No XIP Higher Density & Cheaper than NOR Highly prone to errors at the bit level Needs software to handle bad blocks Manufacturers: Samsung and Toshiba Capacity: Typically from 8MB to 1024MB. Today, even more © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 6 All Rights Reserved.
7.
Writing into Flash Same
for both NOR and NAND Flash Sequence of Steps needed Almost always involve an erase cycle As Writing of Data means Flipping a bit to "0" or leaving it as a "1" Flipping a bit to "1" needs an erase cycle © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 7 All Rights Reserved.
8.
MTD Subsystem
File I/O Raw I/O, MTD Utils User Space VFS Layer Kernel Space Individual File Systems mtdblock, FTL, NFTL mtdchar JFFS2 YAFFS2 MTD Core MTD Layer NAND Chip Drivers NOR Chip Drivers Map Drivers (CFI, JEDEC) Probe Hardware Space I/O NAND NOR © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 8 All Rights Reserved.
9.
Map Drivers Drivers to
Map Flash Memory Range for CPU access Mark the Storage Partitions in the Kernel As no partition table on flash Shows up as /dev/mtd* Example Browse the drivers/mtd/maps/ folder Data Structures struct mtd_partition (Header: <linux/mtd/partitions.h>) struct map_info (Header: <linux/mtd/map.h>) Header: <linux/mtd/mtd.h> APIs int add_mtd_partitions(struct mtd_info *, const struct mtd_partition *, int); int del_mtd_partitions(struct mtd_info *); © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 9 All Rights Reserved.
10.
NOR Chip Drivers NOR
Chip Drivers CFI specification JEDEC specification CFI Command Sets 0x01 – Intel & Sharp flash chips 0x02 – AMD & Fujitsu flash chips 0x03 – ST flash chips All three are configurable in kernel © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 10 All Rights Reserved.
11.
NAND Chip Drivers Drivers
for NAND Controller to access NAND Sources: drivers/mtd/nand/ A NAND Drive should do the following Add an entry to nand_flash_ids[] in drivers/mtd/nand/nand_ids.c Entries being Id Name, Device Id, Page Size, Erase Block Size, Chip Size, Options like Bus Width, … As, no automatic configuration support Specify its out-of-band (OOB) spare area layout through the “struct nand_ecclayout” (Header: <mtd/mtd-abi.h>) For ECCs, to implement error correction & detection Enable Error Management, in case NAND Controller doesn't do it Software ECC is implemented in drivers/mtd/nand/nand_ecc.c © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 11 All Rights Reserved.
12.
Kernel Configurations for
MTD CONFIG_MTD should be enabled And whatever required under it, should be enabled, e.g. Required NAND Driver, Or Required NOR Protocol etc © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 12 All Rights Reserved.
13.
File Systems for
Flash Typical Requirements Flash wear-levelling Less Writes / Erases Protect Data during Erase Cycles Bad Block Management (esp for NAND) Possibly compression (though preferred on read-only file systems only) File Systems handling these JFFS2 (log-structured design & garbage collection) YAFFS2 (specifically designed for NAND constraints) © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 13 All Rights Reserved.
14.
Flash Tools Useful tools
to work with MTD layer flash_erase, flash_eraseall flash_lock, flash_unlock nanddump, nandwrite sumtool ... Download from ftp://ftp.infradead.org/pub/mtd-utils Tool to construct a JFFS2 file system image mkfs.jffs2 © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 14 All Rights Reserved.
15.
What all have
we learnt? W's of Memory Technology Devices About NOR & NAND MTD Subsystem MTD related Drivers Map, NOR Chip, NAND Chip Flash File Systems Flash Tools © 2010 Anil Kumar Pugalia <email@sarika-pugs.com> 15 All Rights Reserved.
16.
Any Queries? © 2010
Anil Kumar Pugalia <email@sarika-pugs.com> 16 All Rights Reserved.