01-31-2009
hmm.. OK, so for a descriptor, it must be opened by a process.....
well then, what about the inode number, when you run ls -li ?
can that be used for anything?
all in all, I'm just curious about these things, I was fascinated to think that in Linux you can access a file other ways than writing its name..
kind of like kill [PID] is.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi
I need to access files from a specific folder of a Linux system from an another Linux System Remotely.
I know how to, Export a folder on One SCO System & can access the same by using Import via., NFS in the Sco Unix SVR4 System using the scoadmin utility.
Also, I know to use mount -t ... (2 Replies)
Discussion started by: S.Vishwanath
2 Replies
2. Programming
Hi,
I have written a daemon process, to perform certain operations in the background.
For this I have to close, the open file descriptors,
Does anybody know how to find out the number of open file descriptors ?
Thanks in Advance,
Sheetal (2 Replies)
Discussion started by: s_chordia
2 Replies
3. UNIX for Advanced & Expert Users
Hello all,
A few questions on file descriptors ...
scenario : Sun Ultra 30 with Sun OS 5.5.1 , E250 with Solaris 2.6
In one of my servers, the file descriptor status from the soft limit and hard limits are 64 and 1024 respectively for root user.
Is the soft limit (64) represents the... (3 Replies)
Discussion started by: shibz
3 Replies
4. UNIX for Dummies Questions & Answers
i m trying to learn processes in unix and i've been reading this but i don't quite get it. its regarding file descriptors. : each is a part of file pointers, they point to another area. indexes into an Operating system maintained table called "file descriptor table". one table per process. may... (3 Replies)
Discussion started by: a25khan
3 Replies
5. Programming
I am in a Systems programming class this semester, and our current project is to write a program utilizing sockets and fork. For the project, I decided to make my own instant messaging program. I have the code completed, but I have a problem that keeps old clients from communicating with new... (3 Replies)
Discussion started by: gstlouis
3 Replies
6. UNIX for Dummies Questions & Answers
hello,
I have written a script named listall.sh with the following codes init.
#!/bin/bash
PATH="/proj/cmon/$1"
echo $PATH
if ; then
echo "Usage: $0 ***"
exit 1
else
ls -l $PATH/*.sc
fi
Here there are 3 subdirectories (namely - src, data and jobs)under /proj/cmon, so... (2 Replies)
Discussion started by: shyjuezy
2 Replies
7. UNIX for Dummies Questions & Answers
What is the difference between a file descriptor and a semaphore?
My basic understanding is:
- a file descriptor is a small positive integer that the system uses instead of the file name to identify an open file or socket.
- a semaphore is a variable with a value that indicates the... (1 Reply)
Discussion started by: Mr_Webster
1 Replies
8. UNIX for Dummies Questions & Answers
hi all,
i want to know y kernel is giving access for multiple users to access a file when one user may be the owner is executing that file. Because other user can manipulate that file when the other user is executing that file, it will give the unexpected result to owner . plz help me... (1 Reply)
Discussion started by: jimmyuk
1 Replies
9. Shell Programming and Scripting
Hi,
I want to access files from different directories (for example: /home/dir1/file1 , /home/dir2/file2 ...) Like this i have to access these files(file1, file2...). (3 Replies)
Discussion started by: bangarukannan
3 Replies
10. Shell Programming and Scripting
What I would like to do is read each line in the atdinfile:
A sample atdinfile would look like this:
651
652
653
654
655
656
657
658
659
660
661
664
665
666
667
668 (5 Replies)
Discussion started by: woodson2
5 Replies
LEARN ABOUT FREEBSD
pdkill
PDFORK(2) BSD System Calls Manual PDFORK(2)
NAME
pdfork, pdgetpid, pdkill, pdwait4 -- System calls to manage process descriptors
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <sys/procdesc.h>
pid_t
pdfork(int *fdp, int flags);
int
pdgetpid(int fd, pid_t *pidp);
int
pdkill(int fd, int signum);
int
pdwait4(int fd, int *status, int options, struct rusage *rusage);
DESCRIPTION
Process descriptors are special file descriptors that represent processes, and are created using pdfork(), a variant of fork(2), which, if
successful, returns a process descriptor in the integer pointed to by fdp. Processes created via pdfork() will not cause SIGCHLD on termina-
tion. pdfork() can accept the flags:
PD_DAEMON Instead of the default terminate-on-close behaviour, allow the process to live until it is explicitly killed with kill(2).
This option is not permitted in capsicum(4) capability mode (see cap_enter(2)).
pdgetpid() queries the process ID (PID) in the process descriptor fd.
pdkill() is functionally identical to kill(2), except that it accepts a process descriptor, fd, rather than a PID.
pdwait4() behaves identically to wait4(2), but operates with respect to a process descriptor argument rather than a PID.
The following system calls also have effects specific to process descriptors:
fstat(2) queries status of a process descriptor; currently only the st_mode, st_birthtime, st_atime, st_ctime and st_mtime fields are
defined. If the owner read, write, and execute bits are set then the process represented by the process descriptor is still alive.
poll(2) and select(2) allow waiting for process state transitions; currently only POLLHUP is defined, and will be raised when the process
dies. Process state transitions can also be monitored using kqueue(2) filter EVFILT_PROCDESC; currently only NOTE_EXIT is implemented.
close(2) will close the process descriptor unless PD_DAEMON is set; if the process is still alive and this is the last reference to the
process descriptor, the process will be terminated with the signal SIGKILL.
RETURN VALUES
pdfork() returns a PID, 0 or -1, as fork(2) does.
pdgetpid() and pdkill() return 0 on success and -1 on failure.
pdwait4() returns a PID on success and -1 on failure.
ERRORS
These functions may return the same error numbers as their PID-based equivalents (e.g. pdfork() may return the same error numbers as
fork(2)), with the following additions:
[EINVAL] The signal number given to pdkill() is invalid.
[ENOTCAPABLE] The process descriptor being operated on has insufficient rights (e.g. CAP_PDKILL for pdkill()).
SEE ALSO
close(2), fork(2), fstat(2), kill(2), poll(2), wait4(2), capsicum(4), procdesc(4)
HISTORY
The pdfork(), pdgetpid(), pdkill() and pdwait4() system calls first appeared in FreeBSD 9.0.
Support for process descriptors mode was developed as part of the TrustedBSD Project.
AUTHORS
These functions and the capability facility were created by Robert N. M. Watson <rwatson@FreeBSD.org> and Jonathan Anderson
<jonathan@FreeBSD.org> at the University of Cambridge Computer Laboratory with support from a grant from Google, Inc.
BUGS
pdwait4() has not yet been implemented.
BSD
April 7, 2014 BSD