From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-Version: 1.0 In-Reply-To: <13426df10904271740x193e2987r86cd11ca840c2080@mail.gmail.com> References: <13426df10904271740x193e2987r86cd11ca840c2080@mail.gmail.com> Date: Mon, 27 Apr 2009 19:00:35 -0600 Message-ID: <14ec7b180904271800v27b53b28u3a18bcf96e7297b@mail.gmail.com> From: andrey mirtchovski To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [9fans] just in case anyone has written this Topicbox-Message-UUID: f3930816-ead4-11e9-9d60-3106f5b1d025 the p9p version of xcpu used to do something similar, but the old svn repository is gone now so i can't verify. i see an old version of rx.c in 9grid:/usr/andrey/src/xcpu/rx.c which does something similar to what you want with threads, channels and procs but doesn't combine the input. it doesn't look finished, so it may be useless. it creates a proc for each remote host :( it does something like this (from a perfunctory look, it's been a while): --- # shared between all procs create input chan create output chan for each node create a proc that: connects to node and set up a session creates proc for stdout creates proc for stderr waits on input chan for commands to send to the node stdout and stderr procs do: read from remote host write to output chan --- the aggregator part you want can be inserted between read the output chan and whatever you need to output to, but that logic doesn't exist in rx.c, i think :)