12-31-2015
Thank you very much ! However I have to do this part of work with signals.. next chapter will be pipe... Anyhow I will trying to clean code just a little bit, remove printf - unsafe method, write code associated with read and we will see.
Thx one more time and Happy 2016 mate !
9 More Discussions You Might Find Interesting
1. Programming
Hi Everybody,
I have gone through man of sigwait and new to UNIX signals. Could anyone explain me about the following lines mentioned in sigwait man help ?
"The selection of a signal in set is independent of the signal
mask of the calling thread or LWP. This means a thread or
LWP can ... (1 Reply)
Discussion started by: md7ahuja
1 Replies
2. Programming
Hello,
Can anyone, please, guide me on the use of nanosleep. I'm learning threads. I want to introduce a delay (not nested for loops, something more customizable). Nanosleep looked useful (or any other form of customizable and easy-to-use delay). Sleep is too long. :) (2 Replies)
Discussion started by: ameya
2 Replies
3. UNIX for Advanced & Expert Users
Hi,
Ho do I differentiate system call from library call?
for example if I am using chmod , how do I find out if it is a system call or library call?
Thanks
Muru (2 Replies)
Discussion started by: muru
2 Replies
4. Programming
Hi,
I have encountered the following problem on Solaris 10:
I have a thread that is asleep on nanosleep (set to 24 hours).
Something that happens on another thread, causes the nanosleep to exit, even though the time has not elapsed.
The returned value is 0 (so it doesn't look like it... (1 Reply)
Discussion started by: MeMyself
1 Replies
5. Programming
Hi,
I have a daq program that runs in an infinite loop until it receives SIGINT. A handler catches the signal and sets a flag to stop the while loop. After the loop some things have to be cleaned up.
The problem is that I want my main while loop to wait until the next full second begins, to... (2 Replies)
Discussion started by: soeckel
2 Replies
6. Infrastructure Monitoring
Hello,
I have a problem with package and name space.
require "/Mehran/DSGateEngineLib/general.pl";
use strict;
sub System_Status_Main_Service_Status_Intrusion_Prevention
{
my %idpstatus;
my @result;
&General_ReadHash("/var/dsg/idp/settings",\%idpstatus);
#print... (4 Replies)
Discussion started by: Zaxon
4 Replies
7. UNIX for Dummies Questions & Answers
Why do I need to call make if I call gcc ?
I thought gcc already compiles the sources.
thanks (1 Reply)
Discussion started by: aneuryzma
1 Replies
8. Programming
I use nanosleep under solaris10,like follows:
#include <pthread.h>
#include <time.h>
#include <sys/time.h>
struct to_info{
void (*to_fn)(void *);
void *to_arg;
struct timespec to_wait;
};
void *timeout_helper(void *arg){
struct to_info *tip;
nanosleep(&tip->to_wait,NULL);... (1 Reply)
Discussion started by: konvalo
1 Replies
9. Programming
Application runs on both solaris 6 and 10.
solaris 6 having only posix4.so library, solaris 10 having libposix4.so and librt.so
Can we link application to lposix4 instead of lrt for nanosleep, sothat application will run in both machines? (2 Replies)
Discussion started by: satish@123
2 Replies
KILL(2) BSD System Calls Manual KILL(2)
NAME
kill -- send signal to a process
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <sys/types.h>
#include <signal.h>
int
kill(pid_t pid, int sig);
DESCRIPTION
The kill() system call sends the signal given by sig to pid, a process or a group of processes. The sig argument may be one of the signals
specified in sigaction(2) or it may be 0, in which case error checking is performed but no signal is actually sent. This can be used to
check the validity of pid.
For a process to have permission to send a signal to a process designated by pid, the user must be the super-user, or the real or saved user
ID of the receiving process must match the real or effective user ID of the sending process. A single exception is the signal SIGCONT, which
may always be sent to any process with the same session ID as the sender. In addition, if the security.bsd.conservative_signals sysctl is
set to 1, the user is not a super-user, and the receiver is set-uid, then only job control and terminal control signals may be sent (in par-
ticular, only SIGKILL, SIGINT, SIGTERM, SIGALRM, SIGSTOP, SIGTTIN, SIGTTOU, SIGTSTP, SIGHUP, SIGUSR1, SIGUSR2).
If pid is greater than zero:
The sig signal is sent to the process whose ID is equal to pid.
If pid is zero:
The sig signal is sent to all processes whose group ID is equal to the process group ID of the sender, and for which the process has
permission; this is a variant of killpg(2).
If pid is -1:
If the user has super-user privileges, the signal is sent to all processes excluding system processes (with P_SYSTEM flag set),
process with ID 1 (usually init(8)), and the process sending the signal. If the user is not the super user, the signal is sent to
all processes with the same uid as the user excluding the process sending the signal. No error is returned if any process could be
signaled.
For compatibility with System V, if the process number is negative but not -1, the signal is sent to all processes whose process group ID is
equal to the absolute value of the process number. This is a variant of killpg(2).
RETURN VALUES
The kill() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate
the error.
ERRORS
The kill() system call will fail and no signal will be sent if:
[EINVAL] The sig argument is not a valid signal number.
[ESRCH] No process or process group can be found corresponding to that specified by pid.
[EPERM] The sending process does not have permission to send sig to the receiving process.
SEE ALSO
getpgrp(2), getpid(2), killpg(2), sigaction(2), sigqueue(2), raise(3), init(8)
STANDARDS
The kill() system call is expected to conform to ISO/IEC 9945-1:1990 (``POSIX.1'').
HISTORY
The kill() function appeared in Version 7 AT&T UNIX.
BSD
March 15, 2012 BSD