9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Ronald G Minnich <rminnich@lanl.gov>
To: Fans of the OS Plan 9 from Bell Labs <9fans@cse.psu.edu>
Subject: Re: [9fans] 9p and how can I know when a write is finished
Date: Wed,  1 Mar 2006 10:22:24 -0700	[thread overview]
Message-ID: <4405D850.4080709@lanl.gov> (raw)
In-Reply-To: <82c890d00603010921l4d284202t3c9883c83b139946@mail.gmail.com>

Gabriel Diaz wrote:
> Hello
>
> Using "normal" files is quite easy to do like ramfs does,
> but if you write commands to a file that should be parsed,
> you should choose when will your parser run, just
> in the fswrite call? if you receive multiple writes, may be
> you end with a split command and your parser returning error.

So you might need a state machine in the thing that handles write for
your ctl file.

If you're worried about conflicting writes from different writers, maybe
you can set the '1' attribute and then only one person gets to open it
and write to it?

We've had this problem in other circumstances (servers hanging off a TCP
line, integral commands not guaranteed) and it's pretty easy to handle
it. Also, take a look at, e.g., the TCL command interpreter -- same
exact problem: you get bits and pieces of a command, and you don't want
to fire until you get the whole thing. It's just a state machine approach.

ron


  reply	other threads:[~2006-03-01 17:22 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-01 14:29 Gabriel Diaz
2006-03-01 14:49 ` Sape Mullender
2006-03-01 15:14 ` [9fans] " Gabriel Diaz
2006-03-01 15:15 ` [9fans] " Anselm R. Garbe
2006-03-01 15:20   ` uriel
2006-03-01 15:29     ` Anselm R. Garbe
2006-03-01 15:49       ` Gabriel Diaz
2006-03-01 15:57       ` C H Forsyth
2006-03-01 16:31         ` jmk
2006-03-01 16:47     ` Russ Cox
2006-03-01 22:55       ` Dave Eckhardt
2006-03-01 22:59         ` rog
2006-03-01 23:06           ` Ronald G Minnich
2006-03-01 16:58     ` Ronald G Minnich
2006-03-01 17:21       ` uriel
2006-03-01 17:19         ` Ronald G Minnich
2006-03-03  1:49           ` uriel
2006-03-03  2:34             ` Ronald G Minnich
2006-03-03 21:26             ` David Leimbach
2006-03-01 17:29         ` Russ Cox
2006-03-01 17:41           ` Paul Lalonde
2006-03-01 19:48             ` Ronald G Minnich
2006-03-01 19:58               ` "Nils O. Selåsdal"
2006-03-01 20:16               ` uriel
2006-03-02  1:45                 ` erik quanstrom
2006-03-01 18:50         ` Latchesar Ionkov
2006-03-01 18:55           ` uriel
2006-03-01 17:21       ` Gabriel Diaz
2006-03-01 17:22         ` Ronald G Minnich [this message]
2006-03-01 18:10           ` rog
2006-03-01 19:49             ` Ronald G Minnich
2006-03-01 20:15               ` rog
2006-03-01 17:59         ` Skip Tavakkolian

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4405D850.4080709@lanl.gov \
    --to=rminnich@lanl.gov \
    --cc=9fans@cse.psu.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).