Dear Adam,
Thank You very much for the response. Do You mean that the l4shmnet can be used as a communication channel between two (or more ?) instances of l4linux over TCP/IP?
By the way, how should then the start scripts seem? Would it be again like a client - server type interaction between both instances? For instance would it work with the following set up and would I see for example a ping request and response of each side?
local my_channel = l:new_channel();
local linux_caps1 = { log = L4.Env.log:m("rws"); vbus = io_caps.linux_bus1, rtc = rtc_caps.rtc, rom = L4.Env.rom, myL4shm = my_channel:svr(), };
l:start( { caps = linux_caps1, }, "rom/vmlinuz1 mem=512M console=ttyLv0 l4shmnet.add=test_l4shm,macpart=01 ramdisk=rom/ramdisk1 root=1:0 ramdisk_size=5000 l4x_rd=rom/ramdisk1 init=/sbin/init");
local linux_caps2 = { log = L4.Env.log:m("r"); vbus = io_caps.linux_bus1, rtc = rtc_caps.rtc, rom = L4.Env.rom, myL4shm = my_channel, };
l:start( { caps = linux_caps2, }, "rom/vmlinuz2 mem=512M console=ttyLv0 l4shmnet.add=test_l4shm,macpart=02 ramdisk=rom/ramdisk2 root=1:0 ramdisk_size=5000 l4x_rd=rom/ramdisk2 init=/sbin/init");
Many thanks in advance,
Regards,
On Thu Feb 06, 2014 at 17:44:58 +0100, Ajith Whowe wrote:
- I coincidentally met the ankh server in the mail archives and could not
*>* figure out well what the ankh exactly does. Is it an ethernet server for *>* more than one application running on the fiasco? * Yes, basically a software network switch with an (optional) network driver.
- By the way it is not existing for the newer versions of l4linux. Was it
*>* replaced with the l4shmnet? * No, l4shmnet is only between two partners. The driver is there but disabled because it's not working.
Adam
Hi,
Am 07.02.2014 15:22, schrieb Ajith Whowe:
Dear Adam,
Thank You very much for the response. Do You mean that the l4shmnet can be used as a communication channel between two (or more ?) instances of l4linux over TCP/IP?
Yes, never tried with more, but two instances are working fine.
By the way, how should then the start scripts seem? Would it be again like a client - server type interaction between both instances? For instance would it work with the following set up and would I see for example a ping request and response of each side?
The l4shmnet negotiates client and server automatically.
l4shmnet needs some namespace to find the other side:
- local my_channel = l:new_channel(); + local test_l4shm = l:create_namespace({test_l4shm = "shmns_1"});
local linux_caps1 = { log = L4.Env.log:m("rws"); vbus = io_caps.linux_bus1, rtc = rtc_caps.rtc, rom = L4.Env.rom,
- myL4shm = my_channel:svr(), + test_l4shm = test_l4shm:mode("rw");
};
l:start( { caps = linux_caps1, }, "rom/vmlinuz1 mem=512M console=ttyLv0 l4shmnet.add=test_l4shm,macpart=01 ramdisk=rom/ramdisk1 root=1:0 ramdisk_size=5000 l4x_rd=rom/ramdisk1 init=/sbin/init");
local linux_caps2 = { log = L4.Env.log:m("r"); vbus = io_caps.linux_bus1, rtc = rtc_caps.rtc, rom = L4.Env.rom,
- myL4shm = my_channel, + test_l4shm = test_l4shm:mode("rw");
};
l:start( { caps = linux_caps2, }, "rom/vmlinuz2 mem=512M console=ttyLv0 l4shmnet.add=test_l4shm,macpart=02 ramdisk=rom/ramdisk2 root=1:0 ramdisk_size=5000 l4x_rd=rom/ramdisk2 init=/sbin/init");
Do not forget to enable CONFIG_L4_NET_L4SHM
Martin
l4-hackers@os.inf.tu-dresden.de