[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RTEMS Driver Interface for Microwindows --- Proposal



Joel Sherrill wrote:
> 
> Eric Norum wrote select and the termios code.  I would like to get his
> opinion
> on this proposal.  I know Eric is never short on ideas. :)

Ideas 'R' us reporting for duty.....

Actually, I don't have many ideas, but I've got some questions and
comments.

1) I think it would be better to just make select() work with any
device/socket.  Not that I have any ideas right now on how to implement
this, but I do think that we should try to conform to `standard' API's
wherever possible.  Could someone have a look at the RTEMS socket select
code and the `real' select code from FreeBSD and see if it could be
crammed into RTEMS? 
 
Personally, I think that most or all uses of select are better handled
in a multithreaded system by writing the code to use one thread per
blocking descriptor, but I also realize that the existence of select
would make porting third-party code easier.

Or, since we've already added a non-standard API for I/O event reporting
to the network code (SO_SNDWAKEUP and SO_RCVWAKEUP) could we add similar
callbacks to the termios code?  This would be much less desirable since
it adds even more non-standard calls to RTEMS, but might be simpler to
implement than the full select operation.

2) Since the network code is already using a couple of events, and the
select() code (or reasonable facsimile thereof) might use more, should
there be some kind of official statement that events 24 to 31 are
reserved for RTEMS internals? 

-- 
Eric Norum                                 eric at cls.usask.ca
Canadian Light Source                      Phone: (306) 966-6308
University of Saskatchewan                 FAX:   (306) 966-6058
Saskatoon, Canada.