|
因为这个更改涉及的内容有些宽,所以发一个公告。现在还不能确定是否会应用这个补丁到0.3.1版本中(STM32 radio会考虑在这个分支支持超过4G的SDHC卡?)。
更改内容:支持超过4G大小的文件系统,块设备驱动读写接口,偏移和缓冲大小单位更改为块设备中一个块大小的单位。
更改原因:原来的块设备操作方式是以字节为单位的,在32位无符号变量上,当超过4G大小时,这个变量将溢出。
涉及代码:所有块设备驱动。
具体更改:(假设块设备的大小是512字节)
static rt_size_t rt_msd_read(rt_device_t dev, rt_off_t pos, void* buffer, rt_size_t size)
static rt_size_t rt_msd_write (rt_device_t dev, rt_off_t pos, const void* buffer, rt_size_t size)
更改前:pos以字节为单位;size以字节为单位;
更改后:pos以512字节为单位;size以512字节为单位;
在0.4.x各个移植中,块设备相应的驱动都需要进行修改。 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|