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