paul@308 | 1 | -- vim:set ft=lua: |
paul@308 | 2 | |
paul@308 | 3 | local L4 = require("L4"); |
paul@308 | 4 | |
paul@308 | 5 | local l = L4.default_loader; |
paul@308 | 6 | |
paul@308 | 7 | local pipe_server = l:new_channel(); |
paul@308 | 8 | |
paul@308 | 9 | l:startv({ |
paul@308 | 10 | caps = { |
paul@507 | 11 | pipeserver = pipe_server:svr(), |
paul@519 | 12 | jdb = L4.Env.jdb, -- to set the server name |
paul@308 | 13 | }, |
paul@308 | 14 | log = { "pipes", "r" }, |
paul@308 | 15 | }, |
paul@394 | 16 | "rom/pipe_server", "10"); |
paul@308 | 17 | |
paul@308 | 18 | local block_server = l:new_channel(); |
paul@308 | 19 | |
paul@308 | 20 | l:startv({ |
paul@308 | 21 | caps = { |
paul@507 | 22 | fsserver = block_server:svr(), |
paul@519 | 23 | jdb = L4.Env.jdb, -- to set the server name |
paul@308 | 24 | }, |
paul@483 | 25 | log = { "blocks", "r" }, |
paul@308 | 26 | }, |
paul@394 | 27 | "rom/block_server", "10"); |
paul@308 | 28 | |
paul@507 | 29 | local ext2server = l:new_channel(); |
paul@308 | 30 | |
paul@308 | 31 | l:startv({ |
paul@308 | 32 | caps = { |
paul@507 | 33 | blockserver = block_server, |
paul@507 | 34 | pipeserver = pipe_server, |
paul@507 | 35 | fsserver = ext2server:svr(), |
paul@519 | 36 | jdb = L4.Env.jdb, -- to set the server name |
paul@308 | 37 | }, |
paul@483 | 38 | log = { "ext2", "y" }, |
paul@308 | 39 | }, |
paul@507 | 40 | "rom/ext2_server", "blockserver", "rom/e2test.fs", "20", "fsserver"); |
paul@308 | 41 | |
paul@308 | 42 | -- Obtain user filesystems with umask 0022 (18). |
paul@308 | 43 | |
paul@308 | 44 | local open_for_user = 6; |
paul@507 | 45 | local ext2server_paulb = L4.cast(L4.Proto.Factory, ext2server):create(open_for_user, 1000, 1000, 18); |
paul@308 | 46 | |
paul@483 | 47 | local process_server = l:new_channel(); |
paul@483 | 48 | |
paul@308 | 49 | l:startv({ |
paul@308 | 50 | caps = { |
paul@507 | 51 | fsserver = ext2server_paulb, |
paul@507 | 52 | prserver = process_server:svr(), |
paul@519 | 53 | jdb = L4.Env.jdb, -- to set the server name |
paul@483 | 54 | }, |
paul@483 | 55 | log = { "process", "y" }, |
paul@483 | 56 | }, |
paul@483 | 57 | "rom/process_server", "home/paulb/exec_region_mapper"); |
paul@483 | 58 | |
paul@483 | 59 | l:startv({ |
paul@483 | 60 | caps = { |
paul@507 | 61 | fsserver = ext2server_paulb, |
paul@507 | 62 | prserver = process_server, |
paul@308 | 63 | }, |
paul@308 | 64 | log = { "client", "g" }, |
paul@308 | 65 | }, |
paul@513 | 66 | "rom/dstest_exec", "home/paulb/dstest_exec_payload", "home/paulb/LICENCE.txt", "21"); |