Re: PATCH: cdrecord: avoiding scsi device numbering for ide devices

From: Helge Hafting
Date: Mon Aug 09 2004 - 05:53:05 EST


Joerg Schilling wrote:

From: Martin Mares <mj@xxxxxx>





It seems that you are not really interested to understand how it works :-(





I am interested, but I life is too short to read the full docs of all existing
OS's. Can you give me at least a pointer to the relevant section?



I already did! ---> "man path_to_inst"



If you behave this way, I tend to believe that you have a precasted opinion that you are not willing to change.





I think that most people around there tend to believe exactly the same about you :-)
But let's change that.



I _am_ always open to new experiences but the problem with most if not all
of the people in LKML is that they only know things about Linux while I know many different operating systems.



Most of all, I would like to know (I see I'm repeating myself, but I still
haven't seen an answer to that) what's so special about the SCSI-like devices,
that they would have to be addressed in a completely different way from the
other UNIX devices. For the classical SCSI, you might argue that addressing
by the physical topology is more realistic, but for ATAPI or USB disks,
the SCSI triplets have nothing to do with the physical topology.



I did introduce Generic SCSI in August 1986. The interface used by libscg today is exactly the same interface as it has been used in August 1986.

The problem with Linux is that the "interfaces" constantly change.
Let us talk again in October 2018 (then the /dev/hd* Interface on Linux
would have the same age as my libscg has now) and check what happened to this
interface. If the interface did not change and is still binary compatible, you _may_ be right. However this is most improbable.

From the > 20 platforms that libscg provides abstractions from, _most_
platforms do not allow the "UNIX" /dev/something method to work with
Generic SCSI:

- DOS

- Win9x

- WinNT

- VMS

- MacOS X

- AmigaOS

- Apollo DomainOS

- BeOS (uses CAM)

- FreeBSD (uses CAM)

- Next Step (Generic SCSI only works only with a special /dev/sg%d)

- OS/2

- OSF-1 / True-64 (uses CAM)

- QNX (uses CAM)

- SunOS-4.x

- Linux (all older versions)

- SCO OpenServer

- SCO UnixWare

These are the platforms where /dev/something could work:

- Linux-2.6

- AIX

- BSD-OS

- OpenBSD

- HP-UX

- SGI IRIX

- Solaris (newer versions only)

As you see, the vast majority does not allow the adressing method the
people on LKML seem to prefer recently.


People with different os'es prefer different adressing schemes. It is
that simple, they don't want to use the scheme used in another os. Not
even if you think it is better somehow. Most people don't want to deal with many os'es.

If you want to provide a multi-platform app with an acceptable user interface, then
you have to cope with the different adressing schemes. If that is too much
work, consider taking patches from volunteers similiar to how the linux kernel
and many other big projects are managed. I am sure you can get someone to
write "perfect" support for /dev/XYZ on linux for you, if you're willing to apply
such a patch. And similiar for other os'es that diverge from your own preferred way.

Helge Hafting


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/