02-27-2012
fork in perl
Hi,
I have a file which has some 50 hosts, I want to login to each host using ssh and execute any command. I am using fork function in perl. I am able to login to each host and execute the command in the hosts paralelly, but it spawing/forking 50 processes at a time.
It will consume the cpu utilization if so many processes open at a time. Can someone tell me how to limit the number of process.
For example, open 10 processes and execute the command on 10 hosts, after completion of those 10 hosts, open next 10 processes and so on.
I know that there is a perl module "Parallel::ForkManager" to limit the number of processes.
But I dont want to use it, as that module is not there in my system and I cannot install it.
Hence, I am looking how to do it using fork in perl.
Can someone help me please..
10 More Discussions You Might Find Interesting
1. Programming
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#define MAX_COUNT 200
#define BUF_SIZE 100
void main(void)
{
pid_t pid;
int i;
char buf;
fork();
pid = getpid();
for (i = 1; i <= MAX_COUNT; i++) {
sprintf(buf,... (2 Replies)
Discussion started by: MKSRaja
2 Replies
2. Programming
Hello all.
I'm developing a filetransfer application, which is supposed to work sort of like dcc, with multiple transfers etc. Now i wonder what the best way to manage the transfers is. Should i fork() for each new transfer, hogging loads of memory or use pthreads? Maybe I can use select to see... (0 Replies)
Discussion started by: crippe
0 Replies
3. Programming
hi all
About this code
for (i = 1; i < n; i++)
if ((childpid = fork()) <= 0)
break;
I really can't understand the output .
and the way fork () return the value .
how about the process Id ,the child process Id and the parent ID
in this case
so please answer me soon (5 Replies)
Discussion started by: iwbasts
5 Replies
4. Programming
Hi everybody,
I wanna write a code to understand how fork works.
my target
--------------
-Parent creates a file(called temp) and writes into this file "1".Then it closes the file.
-Then parent creates a child and wait until execution of this child ends.
-Then child opens the same... (3 Replies)
Discussion started by: alexicopax
3 Replies
5. Shell Programming and Scripting
I have never coded in perl before (just started today morning :). I need to write a perl program to automate a task.
Here is how I do it manually:
Start a program in my home dir. Now if I want to execute another program while this one is still running, what I would do is go to another... (6 Replies)
Discussion started by: the_learner
6 Replies
6. Shell Programming and Scripting
Hi, I want to exec three different functions in perl one per fork();
How can I determine that this it the third fork and I should use third function in it.
if ($pid = 0) { first();}
else (
#parent
second();
)
How to run third function? (1 Reply)
Discussion started by: mirusnet
1 Replies
7. UNIX for Dummies Questions & Answers
I'm trying to run a simple test on how to use fork(), i'm able to execute the child process first then the parent, but how can I execute parent then child..?
Thanks! (1 Reply)
Discussion started by: l flipboi l
1 Replies
8. Shell Programming and Scripting
Can someone tell me perl fork example please. I tried online but could not get proper documentation. (2 Replies)
Discussion started by: Anjan1
2 Replies
9. Programming
I understand that fork create a child but I need very simple example that make child useful....
I mean how will make the program faster anyone explain with code plz
using C plz (2 Replies)
Discussion started by: fwrlfo
2 Replies
10. Shell Programming and Scripting
Hi,
I am breaking my head to understand the below line of code in perl:
next if $pid = fork; # Parent goes to next server.
die "fork failed: $!" unless defined $pid;
Can anyone please explain me in detail as I am a slow learner?
Thanks,
Ali. (2 Replies)
Discussion started by: liyakathali
2 Replies
LEARN ABOUT HPUX
cdsclerk
cdsclerk(1m) cdsclerk(1m)
NAME
cdsclerk - Manages the interface between clients and the CDS server
SYNOPSIS
cdsclerk [-D] [-w route]
OPTIONS
For debugging use only. Causes the cdsadv clerk process not to fork. Routes serviceability messages.
DESCRIPTION
The cdsclerk command manages the interface between clients and the CDS server.
Privilege Required
You must log in as superuser (root).
NOTES
This command is used by the advertiser on the system where the CDS clerk is running. You should use this command interactively only to do
diagnostic work on the host system.
EXAMPLE
Before you run the following process, make sure that other clerks are not running. To start the cdsclerk process, follow these steps:
Make sure that a CDS server is already running somewhere within the cell. Log in to the system as superuser (root). Log in to DCE as the
machine principal of the local host. Enter the principal name in the format /hosts/hostname/self as shown in the following example command
for a host named orion whose password is smith: # dce_login hosts/orion/self smith Enter the following command to see if the dced process
is already running: # ps
If the dced process appears on the list of active processes, proceed to step 5. If the dced process does not appear on the list of active
processes, enter the following command to start the process: # dced Enter the following command to start the cdsadv process: # cdsadv Enter
the following command with the appropriate arguments to start the cdsclerk process: # cdsclerk
RELATED INFORMATION
Books: OSF DCE Administration Guide
cdsclerk(1m)