I am trying to create a distributed pid space. 0 to 2000 Computer 1 2001 to 4000 Computer 2 4001 to 6000 Computer 3
and so on... I am running a master user-level process at Computer 1 which sends a process context like code, data, registers, PC, etc as well as *"pid"* to slave processes running at other computers. The responsibility of the slave process is to fork a new process on order of master process and attach *"pid" *given by the master to the new process it has forked. Any system call on slave nodes will have an initial check of " Whether the process belongs to local node or to the master node?". That is, if kernel at Computer 2 pid of the process is 1500 On Mon, Mar 21, 2016 at 12:23 PM, <valdis.kletni...@vt.edu> wrote: > On Mon, 21 Mar 2016 10:33:44 +0530, Nitin Varyani said: > > > Sub-task 1: Until now, parent process cannot control the pid of the > forked > > child. A pid gets assigned as a sequential number by the kernel at the > time > > the process is forked . I want to modify kernel in such a way that parent > > process can control the pid of the forked child. > > What does controlling the pid gain you? To what purpose? > > > Sub-task 2: On Linux, you can find the maximum PID value for your system > > with the following command: > > > > $ cat /proc/sys/kernel/pid_max > > > > Suppose pid_max=2000 for a system. I want that the parent process should > be > > able to assign a pid which is greater that 2000 to the forked child. > > Again, why would you want to do that? > > Anyhow... > > echo 3000 > /proc/sys/kernel/pid_max > fork a process that gets a pid over 2000. > > Done. > > Note that on 32 bit systems, using a pid_max of over 32768 will cause > various things in /proc to blow up. > > I suspect that you need to think harder about what problem you're actually > trying to solve here - what will you do with a controlled child PID? Why > does > it even matter? >
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies