* remote system call
@ 2016-03-03 11:12 Nitin Varyani
2016-03-03 16:37 ` Mulyadi Santosa
0 siblings, 1 reply; 5+ messages in thread
From: Nitin Varyani @ 2016-03-03 11:12 UTC (permalink / raw)
To: kernelnewbies
Hi,
I want to migrate user context of a process to a remote machine (i.e.
registers, code, data, virtual memory and program counter) and when it
makes a system call or file i/o, I want to send that request to its home
node.
That is, the user process executing at remote node will copy desired system
call number to %eax of home node and will execute 'int 0x80'. This will
generate interrupt 0x80 which should be sent to home node and an interrupt
service routine at home node will be called. This routine will execute in
ring 0 of home node.
A portion of process context which is system dependent has to be kept at
the home node.
That is, link to open files and link to kernel stack.
For eg: the following portion of the task_struct has to be kept at home node
/* filesystem information */
struct fs_struct *fs;
/* open file information */
struct files_struct *files;
Is it feasible? Can someone show some more light into it?
Nitin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20160303/892eabc6/attachment.html
^ permalink raw reply [flat|nested] 5+ messages in thread
* remote system call
2016-03-03 11:12 remote system call Nitin Varyani
@ 2016-03-03 16:37 ` Mulyadi Santosa
2016-03-05 10:28 ` Nitin Varyani
0 siblings, 1 reply; 5+ messages in thread
From: Mulyadi Santosa @ 2016-03-03 16:37 UTC (permalink / raw)
To: kernelnewbies
On Thu, Mar 3, 2016 at 6:12 PM, Nitin Varyani <varyani.nitin1@gmail.com>
wrote:
> Hi,
> I want to migrate user context of a process to a remote machine
> (i.e. registers, code, data, virtual memory and program counter) and when
> it makes a system call or file i/o, I want to send that request to its home
> node.
>
> That is, the user process executing at remote node will copy desired
> system call number to %eax of home node and will execute 'int 0x80'. This
> will generate interrupt 0x80 which should be sent to home node and an
> interrupt service routine at home node will be called. This routine will
> execute in ring 0 of home node.
>
> A portion of process context which is system dependent has to be kept at
> the home node.
>
> That is, link to open files and link to kernel stack.
>
> For eg: the following portion of the task_struct has to be kept at home
> node
> /* filesystem information */
> struct fs_struct *fs;
> /* open file information */
> struct files_struct *files;
>
>
>
> Is it feasible? Can someone show some more light into it?
>
> Nitin
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
>
Feasible, yes.
Try to check the source code of MOSIX/OpenMosix or OpenSSI.
Kerrighed is another project which done similar thing too.
--
regards,
Mulyadi Santosa
Freelance Linux trainer and consultant
blog: the-hydra.blogspot.com
training: mulyaditraining.blogspot.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20160303/8061dd13/attachment-0001.html
^ permalink raw reply [flat|nested] 5+ messages in thread
* remote system call
2016-03-03 16:37 ` Mulyadi Santosa
@ 2016-03-05 10:28 ` Nitin Varyani
2016-03-05 21:58 ` Valdis.Kletnieks at vt.edu
0 siblings, 1 reply; 5+ messages in thread
From: Nitin Varyani @ 2016-03-05 10:28 UTC (permalink / raw)
To: kernelnewbies
Codes are huge and documentation is negligible. How can I separate whay I
want to achieve from that big code?
On Thu, Mar 3, 2016 at 10:07 PM, Mulyadi Santosa <mulyadi.santosa@gmail.com>
wrote:
>
>
> On Thu, Mar 3, 2016 at 6:12 PM, Nitin Varyani <varyani.nitin1@gmail.com>
> wrote:
>
>> Hi,
>> I want to migrate user context of a process to a remote machine
>> (i.e. registers, code, data, virtual memory and program counter) and when
>> it makes a system call or file i/o, I want to send that request to its home
>> node.
>>
>> That is, the user process executing at remote node will copy desired
>> system call number to %eax of home node and will execute 'int 0x80'. This
>> will generate interrupt 0x80 which should be sent to home node and an
>> interrupt service routine at home node will be called. This routine will
>> execute in ring 0 of home node.
>>
>> A portion of process context which is system dependent has to be kept at
>> the home node.
>>
>> That is, link to open files and link to kernel stack.
>>
>> For eg: the following portion of the task_struct has to be kept at home
>> node
>> /* filesystem information */
>> struct fs_struct *fs;
>> /* open file information */
>> struct files_struct *files;
>>
>>
>>
>> Is it feasible? Can someone show some more light into it?
>>
>> Nitin
>>
>> _______________________________________________
>> Kernelnewbies mailing list
>> Kernelnewbies at kernelnewbies.org
>> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>>
>>
> Feasible, yes.
>
> Try to check the source code of MOSIX/OpenMosix or OpenSSI.
>
> Kerrighed is another project which done similar thing too.
>
>
> --
> regards,
>
> Mulyadi Santosa
> Freelance Linux trainer and consultant
>
> blog: the-hydra.blogspot.com
> training: mulyaditraining.blogspot.com
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20160305/a316914f/attachment.html
^ permalink raw reply [flat|nested] 5+ messages in thread
* remote system call
2016-03-05 10:28 ` Nitin Varyani
@ 2016-03-05 21:58 ` Valdis.Kletnieks at vt.edu
2016-03-12 17:00 ` Nicholas Mc Guire
0 siblings, 1 reply; 5+ messages in thread
From: Valdis.Kletnieks at vt.edu @ 2016-03-05 21:58 UTC (permalink / raw)
To: kernelnewbies
On Sat, 05 Mar 2016 15:58:13 +0530, Nitin Varyani said:
> Codes are huge and documentation is negligible. How can I separate whay I
> want to achieve from that big code?
Why do you think that's possible?
It's a lot more complicated problem to solve than you think. Maybe
that huge code is necessary to achieve what you are trying to do.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 848 bytes
Desc: not available
Url : http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20160305/4ada2ae2/attachment.bin
^ permalink raw reply [flat|nested] 5+ messages in thread
* remote system call
2016-03-05 21:58 ` Valdis.Kletnieks at vt.edu
@ 2016-03-12 17:00 ` Nicholas Mc Guire
0 siblings, 0 replies; 5+ messages in thread
From: Nicholas Mc Guire @ 2016-03-12 17:00 UTC (permalink / raw)
To: kernelnewbies
On Sat, Mar 05, 2016 at 04:58:07PM -0500, Valdis.Kletnieks at vt.edu wrote:
> On Sat, 05 Mar 2016 15:58:13 +0530, Nitin Varyani said:
> > Codes are huge and documentation is negligible. How can I separate whay I
> > want to achieve from that big code?
>
> Why do you think that's possible?
>
> It's a lot more complicated problem to solve than you think. Maybe
> that huge code is necessary to achieve what you are trying to do.
>
check bproc - it was a relatively simple solution (with some limitations)
far simpler than MOSIX - for 2.6.X kernels it worked really nicely
but Im not aware of the status http://bproc.sourceforge.net/
seems to be a bit dated.
thx!
hofrat
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2016-03-12 17:00 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-03 11:12 remote system call Nitin Varyani
2016-03-03 16:37 ` Mulyadi Santosa
2016-03-05 10:28 ` Nitin Varyani
2016-03-05 21:58 ` Valdis.Kletnieks at vt.edu
2016-03-12 17:00 ` Nicholas Mc Guire
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).