Zhihui Zhang <[EMAIL PROTECTED]> writes:
> I do not know whether it is a good idea to determine the number of open
> files of a process by enabling fdesc in the kernel. Anyway, I do the
> following:
> 
> # mount_fdesc -o union fdesc /dev
> # ls -al /dev/fd > list
> > cat list
> total 1
> crw-------  1 root  tty     12,   0 Oct 15 17:09 0
> -rw-r--r--  1 root  wheel         0 Oct 15 17:09 1
> crw-------  1 root  tty     12,   0 Oct 15 17:09 2
> drw-r--r--  5 root  wheel      1024 Oct 15 17:09 3
> dr--r--r--  2 root  wheel       512 Oct 15 16:28 4
> 
> I do not know why 3 and 4 are labeled as directory.  1 was labeled as
> character device but is changed probably by the redirection >.  I run a
> small program to open three files and run forever in the background. After
> this, I expect to see three more items under /dev/fd, but there are not.
> Can anyone explain this to me?

Each process only sees its own file descriptors. The five descriptors
you see above belong to ls. 0 (stdin) and 2 (stderr) are whichever tty
or pty you typed this into, 1 (stdout) is the file you redirected the
output from ls into, 3 is /dev and 4 is /dev/fd.

DES
-- 
Dag-Erling Smorgrav - [EMAIL PROTECTED]


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to