This is the mail archive of the ecos-patches@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Bug 1001466] /dev/null serial driver


On 2012-02-16, bugzilla-daemon@bugs.ecos.sourceware.org <bugzilla-daemon@bugs.ecos.sourceware.org> wrote:

>> As you can see /dev/null is not some terminal line (serial device).
>> Well, eCos != *nix, but, I would avoid the ability to configure the
>> /dev/null as a serial device under eCos.
>
> Opengroup says (http://pubs.opengroup.org/onlinepubs/000095399/basedefs/xbd_chap10.html):
>
> /dev/null An infinite data source and data sink. Data written to
> /dev/null shall be discarded. Reads from /dev/null shall always
> return end-of-file (EOF).

That makes no sense.  It not an infinite data source if a read always
EOF.

> AFAIK there is no specific requirements regarding the implementation,
> only the name and the result it must provide. Using the serial
> abstraction seemed fine to me since most often /dev/null is used to
> sink data coming from a byte stream.

The issue is that "byte stream" and "serial device" are not
equivalent.  A "serial device" supports read/write like a byte stream,
but it also includes another API that.  On Unix, /dev/null isn't a
serial device, and that's why using that name for a serial device on
eCos is a possible source of confusion.  Historically, there has never
been a "null" serial device on Unix systems (that I know of).

> I suppose that serial devices are embedded in all targets, at least
> for diag_printf(), that why I placed it here so there is no need to
> bring other components.

I don't think anybody is arguing that a null serial device is a bad
idea, just that it might be better to use a name other than /dev/null.

>> Mess #3
>> 
>>   IMO, if anyone will see those words together in CDL (I mean 'serial'
>>   and 'null'), under eCos dev/serial/null, then he would think, Great!
>>   There is 'nullmodem' device in eCos! Come check my guess
>> 
>>     http://www.google.com/search?q=%2Bserial+%2Bnull 
>> 
>>   And after reading your documentation, they will think, Nope! They
>>   provide something very special (special null device :-)
>
> Well the name '/dev/null' is known for decades and for any *nix
> developer this name tells what it does, as posix/opengroup use this
> name.

Except on Unix, /dev/null is not a serial device (it's not a tty). 
It's a plain vanilla character device.

> I just need to sink data, I don't need a FIFO that copies data
> between two points, I don't need a cross-over serial cable. I need
> /dev/null :-)

If all you need is /dev/null, why the extra work to make it a serial
device?

-- 
Grant Edwards               grant.b.edwards        Yow! I'm totally DESPONDENT
                                  at               over the LIBYAN situation
                              gmail.com            and the price of CHICKEN
                                                   ...


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]