04-02-2008
If your flavor of Unix supports /proc filesystem then it should be pretty easy to get a little bit of information.
do "cd /proc" and if it works, do an "ls" you should see a bunch of folders, one per running pid. You can read this directory in c like any other (see man page for opendir).
If the flavor of Unix you are using doesn't support this, then you are hosed and back to either a popen for "ps" or looking up the source for it.
Last edited by DreamWarrior; 04-02-2008 at 05:25 PM..
10 More Discussions You Might Find Interesting
1. AIX
Okay, I am trying to come up with a multi-platform script to report top ten CPU and memory hog processes, which will be run by our enterprise monitoring application as an auto-action item when the CPU and Memory utilization gets reported as higher than a certain threshold
I use top on other... (5 Replies)
Discussion started by: thenomad
5 Replies
2. SuSE
Hi there,
I've install a testserver with SLES 11.0! I'll install/test XEN + WebServer not all things at the moment!
In a first time, I'd like to stop all unuse processes... but I don't understand all processes!
As someone a list of all processes with his signification and which should/could... (3 Replies)
Discussion started by: hiddenshadow
3 Replies
3. Shell Programming and Scripting
ps -xfu <user name> this command line will list all the process currently running for <user name>.
I need to filter this output. I need all the process which are running for more than 3 days(excluding demon/sys process) . The list should include PID, PPID, STIME, process/command.
I am using... (20 Replies)
Discussion started by: Sriranga
20 Replies
4. Shell Programming and Scripting
Hi All
I'm currently trying to develop a script which will find the child processes of a process ID already passed to the script.
I then need the script to look for spawned processes of these child processes and so on until it can't find any more.
For example
At the moment, I have to... (6 Replies)
Discussion started by: huskie69
6 Replies
5. UNIX for Dummies Questions & Answers
Hi,
I need your help to understand about different processes(tty1,tty2,tty3...) running as root as shown below .What exactly these processes do?
root@bisu-desktop:~# ps -eaf | grep -e tty -e UID
UID PID PPID C STIME TTY TIME CMD
root 761 1 0 10:30 tty5 ... (4 Replies)
Discussion started by: crazybisu
4 Replies
6. UNIX for Dummies Questions & Answers
Hi:
How to list processes from all hosts, as opposed to the one you are working at?
"ps ux" appears to list processes of the user on a single host only.
Thanks.
N.B Phil (5 Replies)
Discussion started by: phil518
5 Replies
7. Solaris
Hello All
I am trying to get a list of process or applications runninging on the network only. I should emphasize that im not interested in the application or process if its not using the network.
I tried the good old netstat comand, but im not able to figure out how to list the running... (8 Replies)
Discussion started by: busi386
8 Replies
8. UNIX for Advanced & Expert Users
I am trying to kill a list of processes. I have found these two ways to list a group of process id's on a single line. How would I go about killing all of these processes all on one line?
$ ps aux | grep 6243 | grep "a.out" | awk '{printf "%s ",$2}'ps aux | grep 6243 | grep "a.out" | awk... (8 Replies)
Discussion started by: cokedude
8 Replies
9. UNIX for Advanced & Expert Users
How do I list the process in a Unix based system which are running in background?
The following are options that I'm aware of, but they may not be appropiate.
a. using ps -ef , and getting records of processes for which STATUS='S'(uninterruptible sleep)
b. using jobs -l, and filtering... (5 Replies)
Discussion started by: kumarjt
5 Replies
10. Shell Programming and Scripting
Here is the output of top command
So you see 99% of memory is in use -> Mem: 66005468k total, 65662548k used,
How can I find out all processes consuming this 99% memory in descending order of consumption i.e. starting with processes eating more memory.
I need the total of the output to... (3 Replies)
Discussion started by: mohtashims
3 Replies
LEARN ABOUT MOJAVE
curlopt_unix_socket_path
CURLOPT_UNIX_SOCKET_PATH(3) curl_easy_setopt options CURLOPT_UNIX_SOCKET_PATH(3)
NAME
CURLOPT_UNIX_SOCKET_PATH - set Unix domain socket
SYNOPSIS
#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_UNIX_SOCKET_PATH, char *path);
DESCRIPTION
Enables the use of Unix domain sockets as connection endpoint and sets the path to path. If path is NULL, then Unix domain sockets are dis-
abled. An empty string will result in an error at some point, it will not disable use of Unix domain sockets.
When enabled, curl will connect to the Unix domain socket instead of establishing a TCP connection to a host. Since no TCP connection is
created, curl does not need to resolve the DNS hostname in the URL.
The maximum path length on Cygwin, Linux and Solaris is 107. On other platforms it might be even less.
Proxy and TCP options such as CURLOPT_TCP_NODELAY(3) are not supported. Proxy options such as CURLOPT_PROXY(3) have no effect either as
these are TCP-oriented, and asking a proxy server to connect to a certain Unix domain socket is not possible.
The application does not have to keep the string around after setting this option.
DEFAULT
Default is NULL, meaning that no Unix domain sockets are used.
PROTOCOLS
All protocols except for file:// and FTP are supported in theory. HTTP, IMAP, POP3 and SMTP should in particular work (including their
SSL/TLS variants).
EXAMPLE
Given that you have an nginx server running, listening on /tmp/nginx.sock, you can request a HTTP resource with:
curl_easy_setopt(curl_handle, CURLOPT_UNIX_SOCKET_PATH, "/tmp/nginx.sock");
curl_easy_setopt(curl_handle, CURLOPT_URL, "http://localhost/");
If you are on Linux and somehow have a need for paths larger than 107 bytes, you could use the proc filesystem to bypass the limitation:
int dirfd = open(long_directory_path_to_socket, O_DIRECTORY | O_RDONLY);
char path[108];
snprintf(path, sizeof(path), "/proc/self/fd/%d/nginx.sock", dirfd);
curl_easy_setopt(curl_handle, CURLOPT_UNIX_SOCKET_PATH, path);
/* Be sure to keep dirfd valid until you discard the handle */
AVAILABILITY
Since 7.40.0.
RETURN VALUE
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
SEE ALSO
CURLOPT_OPENSOCKETFUNCTION(3), unix(7),
libcurl 7.54.0 December 21, 2016 CURLOPT_UNIX_SOCKET_PATH(3)