confusion on fopen()/falloc()
Yan Yu
yanyu at CS.UCLA.EDU
Sat Feb 26 09:10:47 GMT 2005
Hello, all,
I have a user program as below:
FILE *fd;
while (1)
{
fd= fopen( "tmp", "r" );
if ( fd == NULL )
break;
}
from my understanding, since i open the same file to read, my process
should create a new file descriptor each time when fopen is called.
Therefore, inside the kernel, fdalloc() should be called, NOT falloc()
(since falloc() allocates a new FILE * struct in addition to a new file
descriptor),
BUT based on what i observed (i instrumented falloc() function), it seems
that falloc() is called each time when fopen() is called.
I am wondering where i missed?
Any hints is appreciated!
Best,
yan
More information about the freebsd-hackers
mailing list