12-18-2002
First, there are no user wide settings on fds. Each process can use the hard-limit of fds.
Too many open files can be a problem with same versions of unix since there is only one file table for everybody. If it fills on HP-UX, open() calls will fail. A command like "sar -v 1 4" can be used to see the table size. But sun dynamically expands the file table. The sar command will make you think it is full. But it will expand as needed.
10 More Discussions You Might Find Interesting
1. 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
2. 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
3. Shell Programming and Scripting
I have a script that creates a KSH co-process for Oracle sqlplus and I am presently interacting with it via print -p and read -p.
I also need to interact with another Oracle database what isn't permitted to have any direct connection to the first. Presently, I simply disconnect from the first... (10 Replies)
Discussion started by: tmarikle
10 Replies
4. 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
5. UNIX for Advanced & Expert Users
Hi All,
This thread is going to be a discussion basically bringing out more information from the experts on cron jobs and the associated file handles.
So, here is the question.
There is definitely a constant ' n ' as the maximum number of file handles alloted to a process ' p '.
Will... (7 Replies)
Discussion started by: matrixmadhan
7 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
Is it possible to write to file descriptor 0 and read from 1 or 2? How could this be implemented? (3 Replies)
Discussion started by: machshev
3 Replies
8. HP-UX
Hi,
I speak and write english more or less, so I hope my asking be clear.
:)
In the company I am working, they are using control-m software to lunch
shell scripts.
So i put this command in all shell scripts:
export LOGFILE_tmp=$PRODUC_DATA/tmp/${SCRIPT}_${PAIS}_`date... (0 Replies)
Discussion started by: anamcara
0 Replies
9. 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
10. Shell Programming and Scripting
Hi, I'm playing with KSH
I entered following command in terminal
{ echo "stdout" >&1; echo "stderr" >&2; } > out
And I get only stoud in a new file out.
My question is: Where did my stderr vanish ? (5 Replies)
Discussion started by: solaris_user
5 Replies
LEARN ABOUT DEBIAN
xpagetfd
xpagetfd(3) SAORD Documentation xpagetfd(3)
NAME
XPAGetFd - retrieve data from one or more XPA servers and write to files
SYNOPSIS
#include <xpa.h>
int XPAGetFd(XPA xpa,
char *template, char *paramlist, char *mode,
int *fds, char **names, char **messages, int n);
DESCRIPTION
Retrieve data from one or more XPA servers whose class:name identifier matches the specified template and write it to files associated with
one or more standard I/O fds (i.e, handles returned by open()).
A template of the form "class1:name1" is sent to the XPA name server, which returns a list of at most ABS(n) matching XPA servers. A con-
nection is established with each of these servers and the paramlist string is passed to the server as the data transfer request is initi-
ated. If an XPA struct is passed to the call, then the persistent connections are updated as described above. Otherwise, temporary connec-
tions are made to the servers (which will be closed when the call completes).
The XPAGetFd() routine then retrieves data from the XPA servers, and write these data to the fds associated with one or more fds (i.e.,
results from open). Is n is positive, then there will be n fds and the data from each server will be sent to a separate fd. If n is nega-
tive, then there is only 1 fd and all data is sent to this single fd. (The latter is how xpaget is implemented.)
A string containing the class:name and ip:port is stored in the name array. If a given server returned an error or the server callback
sends a message back to the client, then the message will be stored in the associated element of the messages array. NB: if specified, the
name and messages arrays must be of size n or greater.
The returned message string will be of the form:
XPA$ERROR error-message (class:name ip:port)
or
XPA$MESSAGE message (class:name ip:port)
Note that when there is an error stored in an messages entry, the corresponding bufs and lens entry may or may not be NULL and 0 (respec-
tively), depending on the particularities of the server.
The return value will contain the actual number of servers that were processed. This value thus will hold the number of valid entries in
the bufs, lens, names, and messages arrays, and can be used to loop through these arrays. In names and/or messages is NULL, no information
is passed back in that array.
The mode string is of the form: "key1=value1,key2=value2,..." The following keywords are recognized:
key value default explanation
------ -------- -------- -----------
ack true/false true if false, don't wait for ack from server (after callback completes)
The ack keyword is not very useful, since the server completes the callback in order to return the data anyway. It is here for completion
(and perhaps for future usefulness).
Example -
#include <xpa.h>
#define NXPA 10
int i, got;
int fds[NXPA];
char *names[NXPA];
char *messages[NXPA];
for(i=0; i<NXPA; i++)
fds[i] = open(...);
got = XPAGetFd(NULL, "ds9", "file", NULL, fds, names, messages, NXPA);
for(i=0; i<got; i++){
if( messages[i] != NULL ){
/* error processing */
fprintf(stderr, "ERROR: %s (%s)
", messages[i], names[i]);
}
if( names[i] )
free(names[i]);
if( messages[i] )
free(messages[i]);
}
SEE ALSO
See xpa(7) for a list of XPA help pages
version 2.1.14 June 7, 2012 xpagetfd(3)