在开发linux嵌入式项目时,经常会遇到同一块区域会被不同的程序使用,这会导致数据混乱发生不可预知的结果。因此需要对区域进行区别以避免冲突的发生。
例如:/etc/log和/etc/plugin两个目录分别用来存放log和插件相关的东西,但它们都共用flash同一块区域,终于会互相影响。这里给出解决方案:
在设备空间flash划分两块未分配的区域存放log和插件
对于不同的flash或者不同厂商的设备,分配分式可能有差异,这里就不做具体说明。分配完之后区域还需要挂载之后才可以使用。
文件系统挂载
mount 命令用来挂载文件系统。其基本命令格式为:
mount -t type [-o options] device dir
device:指定要挂载的设备,比如磁盘、光驱等。
dir:指定把文件系统挂载到哪个目录。
type:指定挂载的文件系统类型,一般不用指定,mount 命令能够自行判断。可通过读/proc/filesystems文件查看设备支持的文件系统类型
options:指定挂载参数,比如 ro 表示以只读方式挂载文件系统, rw 表示以可读可写方式挂载文件系统
因此,我们可以使用命令
mount -t jffs2 -o rw /dev/blockXX /etc/plugin/
mount -t jffs2 -o rw /dev/blockYY /etc/log/
如果命令执行失败,需要检查文件系统类型是否不支持,或者挂载的设备没有分配好
通过以上操作,/etc/log存放区域为blockXX,/etc/plugin存放区域为blockYY,互不影响。