10 More Discussions You Might Find Interesting
1. Programming
I have an input file with contents like:
5785690|68690|898809
7960789|89709|789789
7669900|87865|659708
7869098|65769|347658
so on..
I need to pass this file to 10 parallely running processes (forking)so that each line is processed by a process and no line is processed twice and write the... (1 Reply)
Discussion started by: rkrish
1 Replies
2. Shell Programming and Scripting
Hi everyone
i am very new to linux , working on bash shell.
I am trying to solve the given problem
1. Create a process and then create children using fork
2. Check the Status of the application for successful running.
3. Kill all the process(threads) except parent and first child... (2 Replies)
Discussion started by: vizz_k
2 Replies
3. Shell Programming and Scripting
Keep in mind that I haven't done Perl scripting for a LONG time, so I'm quite rusty.
This is what I would like to do:
- using fork, create 3 or 4 processes to read 3 or 4 different text documents containing server names or IP addresses
- in each of those processes, Perl will ping each of those... (7 Replies)
Discussion started by: kooshi
7 Replies
4. UNIX for Advanced & Expert Users
hi,
I want my program to fork a new process and then I want to kill the parent process. The parent program before dying will issue a SIGTERM to all its childs. Which eventually kills all Children.
I cant handle the SIGTERM at the child level.:(
What I was thinking of was the Parent... (3 Replies)
Discussion started by: tyler_durden
3 Replies
5. Shell Programming and Scripting
hi experts(novice people can stay away as it is no child's game),
i am developing a script which works like recycle bin of windows.
the problem i am facing is that when ever i am trying to delete a file which is situated in parent directory or parent's parent directory i am unable to... (1 Reply)
Discussion started by: yahoo!
1 Replies
6. Programming
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
int main()
{
pid_t pID;
int i;
for (i = 0; i < 3; i++)
{
pID = fork ();
if (pID == 0)
{
printf ("Value of i --> %d... (2 Replies)
Discussion started by: kymthasneem
2 Replies
7. Programming
Hi
I'm currently working with C on UNIX (HPUX) and need to be able to fork a seperate Java process from within a running C process.
I can run the following code from the command line via a script but am having difficulty getting it to work from within the code.
I am trying to use execl. Is... (4 Replies)
Discussion started by: themezzaman
4 Replies
8. UNIX for Dummies Questions & Answers
Hi everybody,
I'm having some problems wiriting a program in UNIX using the "fork" and "kill" system calls.
I have to create a C program P0, which creates 9 other processes
P1, P2, ..., P9, where P0 is the father of P1, P1 the father of P2, and so on.
All the processes contain an infinite... (0 Replies)
Discussion started by: davewilliams20
0 Replies
9. UNIX for Advanced & Expert Users
When I compile this C programme I get different outputs each time I run it
Please explain to me whats happening in the code if you can give me a detailed explanation with the schedular functionality it will help a lot. Because I am stuck with this.
#include <stdio.h>
main(){... (3 Replies)
Discussion started by: manjuWicky
3 Replies
10. Programming
When I compile this C programme I get different outputs each time I run it
Please explain to me whats happening in the code if you can give me a detailed explanation. Because I am stuck with this.
#include <stdio.h>
main(){
int i = 0;
printf("I am the... (1 Reply)
Discussion started by: manjuWicky
1 Replies
FORK(2) BSD System Calls Manual FORK(2)
NAME
fork -- create a new process
SYNOPSIS
#include <unistd.h>
pid_t
fork(void);
DESCRIPTION
fork() causes creation of a new process. The new process (child process) is an exact copy of the calling process (parent process) except for
the following:
o The child process has a unique process ID.
o The child process has a different parent process ID (i.e., the process ID of the parent process).
o The child process has its own copy of the parent's descriptors. These descriptors reference the same underlying objects, so that,
for instance, file pointers in file objects are shared between the child and the parent, so that an lseek(2) on a descriptor in the
child process can affect a subsequent read or write by the parent. This descriptor copying is also used by the shell to establish
standard input and output for newly created processes as well as to set up pipes.
o The child processes resource utilizations are set to 0; see setrlimit(2).
RETURN VALUES
Upon successful completion, fork() returns a value of 0 to the child process and returns the process ID of the child process to the parent
process. Otherwise, a value of -1 is returned to the parent process, no child process is created, and the global variable errno is set to
indicate the error.
ERRORS
fork() will fail and no child process will be created if:
[EAGAIN] The system-imposed limit on the total number of processes under execution would be exceeded. This limit is configuration-
dependent.
[EAGAIN] The system-imposed limit MAXUPRC (<sys/param.h>) on the total number of processes under execution by a single user would
be exceeded.
[ENOMEM] There is insufficient swap space for the new process.
LEGACY SYNOPSIS
#include <sys/types.h>
#include <unistd.h>
The include file <sys/types.h> is necessary.
SEE ALSO
execve(2), sigaction(2), wait(2), compat(5)
HISTORY
A fork() function call appeared in Version 6 AT&T UNIX.
CAVEATS
There are limits to what you can do in the child process. To be totally safe you should restrict yourself to only executing async-signal
safe operations until such time as one of the exec functions is called. All APIs, including global data symbols, in any framework or library
should be assumed to be unsafe after a fork() unless explicitly documented to be safe or async-signal safe. If you need to use these frame-
works in the child process, you must exec. In this situation it is reasonable to exec yourself.
4th Berkeley Distribution June 4, 1993 4th Berkeley Distribution