Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 19 Jan 2006 08:43:55 +0900
From:      "Shin,Hee-Sub" <>
Subject:   About VFS locking strategy...
Message-ID:  <000001c61c89$0da481a0$>

Next in thread | Raw E-Mail | Index | Archive | Help
Hi all. 


I'm speluking with source code of FreeBSD now, comparing VFS of FBSD and
the linux's. 


I have a question related with concurrent accesses to the file system. It
is seemed that VFS locks and unlocks each VNODEs before calling VNODE OPS
provided by underlying FS. For example, it calls vn_lock(vp, ...) before
jumps to VOP_READ() in vn_read(). 


WindowsCE kernel also has a component that is responsible for switching FS
requests to appropriate file-system underlying and similar with VFS of many
UNIX variants, but it's not perfectly same. In WindowsCE world, file system
driver code can be called on re-entry and file system programmer should
keep this in mind. The manager does not manage any synchronization problems
that can be occurred when multiple threads access to the file system. It
has only a few locks for protecting its own data structures. 


How does it manage synchronization problems in the VFS of FreeBSD? 


Please give me a detailed description about lock strategy the FreeBSD uses. 



Thanks in advance. 


Want to link to this message? Use this URL: <$0da481a0$19a5580a>