internel implemention of file operation
horserivers at gmail.com
Thu Jan 10 17:01:34 EST 2013
On Fri, Jan 11, 2013 at 12:39:26PM +0530, Rajat Sharma wrote:
> Default read/write inerfaces are better suited for sequential read/write
> within your program. Although you can seek to any location within the file,
> you still have overhead to issue system calls to get data. However mmap
> allows you to map a section of file into program address space.
Default read/write inerfaces does not move file's data to process address space ?
when r/w a file descript which returnd by open() , how do the file data move from one place to another place ?
For each time the write function being called , will kernel call filesystem's driver's write to respond ??
In my opinion,kernel will passed a buffer's head address which is passed form user-layer into driver,then driver will fill this buffer with file's
data which is got by filesystem's read operation ?
Am I right?
> On Fri, Jan 11, 2013 at 2:44 AM, horseriver <horserivers at gmail.com> wrote:
> > hi:
> > these two wayes of operating one file :
> > 1.use open/write interface call .
> > 2.mmap this file into memory , then access this memory area and do r/w .
> > what is the essential difference between this teo wayes?
> > thanks!
More information about the Kernelnewbies