Devices and Volumes
5-7-2 OTHER CACHING & BUFFERING MECHANISMS
Volume cache is just one of several important caching mechanisms, which should be
balanced for optimal performance within the bounds of platform resources. The second
important software mechanism is the file buffer (see section 7-1-3 “Configuring a File
Buffer” on page 101), which makes file accesses more efficient by buffering data so a full
sector’s worth will be read or written.
Individual devices or drivers may also integrate a cache. Standard hard drives overcome
long seek times by buffering extra data upon read (in anticipation of future requests) or
clumping writes to eliminate unnecessary movement. The latter action can be particularly
powerful, but since it may involve re-ordering the sequence of sector writes will eliminate
any guarantee of fail-safety of most file systems. For that reason, write cache in most storage
devices should be disabled.
A driver may implement a buffer to reduce apparent write latency. Before a write can occur
to a flash medium, the driver must find a free (erased) area of a block; occasionally, a block
will need to be erased to make room for the next write. Incoming data can be buffered
while the long erase occurs in the background, thereby uncoupling the application’s wait
time from the real maximum flash write time.
The ideal system might use both volume cache and file buffers. A volume cache is most
powerful when confined to the sector types most subject to repeated reads: management
and directory. Caching of files, if enabled, should be limited to important (often-read) files.
File buffers are more flexible, since they cater to the many applications that find small reads
and writes more convenient than those of full sectors.
82
相关PDF资料
AD-UCOS3-SPRD PRD LIC UCOS3 RTOS CORE CCES SGL
AD-UCUSBD-SPRD PRD LIC UCUSB DEV CORE CCES SGL
AD637-EVALZ BOARD EVALUATION FOR AD637
AD736-EVALZ BOARD EVALUATION FOR AD736
AD737-EVALZ BOARD EVALUATION FOR AD737
AD8007AKS-EBZ BOARD EVAL FOR AD8007AKS
AD8018ARU-EVAL BOARD EVAL FOR AD8018
AD8034ART-EBZ BOARD EVAL FOR AD8034ART
相关代理商/技术参数
ADuC-H7020 功能描述:开发板和工具包 - ARM HDR BRD FOR ADUC7020 ARM7 RoHS:否 制造商:Arduino 产品:Development Boards 工具用于评估:ATSAM3X8EA-AU 核心:ARM Cortex M3 接口类型:DAC, ICSP, JTAG, UART, USB 工作电源电压:3.3 V
ADuC-IO7020 功能描述:开发板和工具包 - ARM DEV BRD FOR ADUC7020 ARM7 RoHS:否 制造商:Arduino 产品:Development Boards 工具用于评估:ATSAM3X8EA-AU 核心:ARM Cortex M3 接口类型:DAC, ICSP, JTAG, UART, USB 工作电源电压:3.3 V
ADUCM3027BCBZ-R7 功能描述:LOWPWR CORTEXM3W/128KKEMBEDDED F 制造商:analog devices inc. 系列:* 零件状态:在售 标准包装:1,500
ADUCM3027BCBZ-RL 功能描述:LOWPWR CORTEXM3W/128KKEMBEDDED F 制造商:analog devices inc. 系列:* 零件状态:在售 标准包装:5,000
ADUCM3027BCPZ 功能描述:IC MCU 32BIT 128KB FLASH 64LFCSP 制造商:analog devices inc. 系列:ADuCM 包装:托盘 零件状态:在售 核心处理器:ARM? Cortex?-M3 核心尺寸:32-位 速度:26MHz 连接性:I2C,SPI,UART/USART 外设:DMA,POR,PWM,WDT I/O 数:44 程序存储容量:128KB(128K x 8) 程序存储器类型:闪存 EEPROM 容量:- RAM 容量:96K x 8 电压 - 电源(Vcc/Vdd):1.74 V ~ 3.6 V 数据转换器:A/D 8x12b 振荡器类型:内部 工作温度:-40°C ~ 85°C(TA) 封装/外壳:64-WFQFN 裸露焊盘 供应商器件封装:64-LFCSP(9x9) 标准包装:1
ADUCM3027BCPZ-R7 功能描述:IC MCU 32BIT 128KB FLASH 64LFCSP 制造商:analog devices inc. 系列:ADuCM 包装:剪切带(CT) 零件状态:在售 核心处理器:ARM? Cortex?-M3 核心尺寸:32-位 速度:26MHz 连接性:I2C,SPI,UART/USART 外设:DMA,POR,PWM,WDT I/O 数:44 程序存储容量:128KB(128K x 8) 程序存储器类型:闪存 EEPROM 容量:- RAM 容量:96K x 8 电压 - 电源(Vcc/Vdd):1.74 V ~ 3.6 V 数据转换器:A/D 8x12b 振荡器类型:内部 工作温度:-40°C ~ 85°C(TA) 封装/外壳:64-WFQFN 裸露焊盘 供应商器件封装:64-LFCSP(9x9) 标准包装:1
ADUCM3027BCPZ-RL 功能描述:IC MCU 32BIT 128KB FLASH 64LFCSP 制造商:analog devices inc. 系列:ADuCM 包装:带卷(TR) 零件状态:在售 核心处理器:ARM? Cortex?-M3 核心尺寸:32-位 速度:26MHz 连接性:I2C,SPI,UART/USART 外设:DMA,POR,PWM,WDT I/O 数:44 程序存储容量:128KB(128K x 8) 程序存储器类型:闪存 EEPROM 容量:- RAM 容量:96K x 8 电压 - 电源(Vcc/Vdd):1.74 V ~ 3.6 V 数据转换器:A/D 8x12b 振荡器类型:内部 工作温度:-40°C ~ 85°C(TA) 封装/外壳:64-WFQFN 裸露焊盘 供应商器件封装:64-LFCSP(9x9) 标准包装:2,500
ADUCM3029BCBZ-R7 功能描述:LOWPWR CORTEX M3W/256KEMBEDDED F 制造商:analog devices inc. 系列:* 零件状态:在售 标准包装:1,500