原创 vxworks--文件系统(1)

2006-12-21 22:23 5964 9 9 分类: MCU/ 嵌入式

   看文件系统的时候随手记下了点东西。


    文件系统是IO系统的扩展。文件系统与具体的设备关系不大。文件系统通过IO的标准接口访问文件系统;文件系统和字符设备一样挂接在 IO系统上;块设备通过文件系统被访问,而不直接归IO系统管理;同样的块设备可以选择不同的文件系统来管理,如dosFs或rawFs。
   作为块设备的网络和串行设备可以支持远程的文件系统。stdio和fioLib库位应用提供了丰富的操作接口。
   块设备和字符设备最本质的区别是字节传输的单位,块设备是以块为单位传输数据。另一个较大的区别是块设备不能直接与IO系统打交道,在其与IO系统之间必须有文件系统,如dosFs,rt11Fs,rawFs或tapeFs等,这种层次关系允许在同一块设备上使用不同的文件系统。。块设备的函数入口不在驱动表种注册(上层文件系统的函数入口在驱动表中注册),块设备的描述符也不进入设备链表(文件系统的描述符进入设备链表)。因为设备本质的区别,块设备的实现不同于字符设备的实现,对上层抽象接口的规范也不同。
   为了实现上层软件的设备无关性,所有块设备驱动都遵循统一的接口规范。该接口不以单独的软件层存在,而是体现在一个统一的数据结构上(BLK_DEV)。该结构由具体的设备实例化,用来代表该设备。对于上层软件来说,于块设备的接口就是一个统一的函数结构,通过具体的结构实例来操作对应的设备。该结构中包含了统一的函数接口,函数具体的实现由各块设备驱动程序完成。
   新版的dosFs或rawFs都需要一个新的抽象层CBIO[Cached Block Input Output]用于块设备缓冲管理。对于不同情况,vxworks提供多种CBIO库的支持,都遵循类似的标准。

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
9
关闭 站长推荐上一条 /3 下一条