Lennart Poettering wrote:
On Tue, 23.09.08 10:54, Dominik 'Rathann' Mierzejewski
(dominik(a)greysector.net) wrote:
>>> Do you mean Open Source Software or Open Sound System? In case of OSS,
>>> it's realy a shame, because it was (and still is) a great piece of
software
>>> with nice API and doesn't require any external libraries like ALSA.
>>> But you can't compare console/X to OSS/ALSA. The latter provide
functionality
>> I must correct you: the OSS API sucks. And ALSA is certainly a far
>> greater piece of software than OSS ever was, and among the reasons is
>> precisely the fact that it is a proper library instead of some fucked up kernel
>> interface based on ioctls().
>>
>> Everyone hates ioctl()s. The kernel people do. The userspace people
>> too. An API for application usage that is based around ioctl()s is
>> thus mandatorily a big failure.
> The people whose opinion I value disagree. I have no strong opinion
> of my own, because I never wrote code to interface with either ALSA
> or OSS.
Oh my. So you know someone who thinks that ioctl()s are ingenious API
design? You probably should choose your friends more carefully, then. ;-)
They are nicely minimalistic in that they permit device-specific
operations to be passed to a driver without waiting for some
overly-bulky generalized intermediate API that thinks it knows what
every device/driver might ever need to do. The down side is that it is
very hard to subsequently decouple the application from the device - for
example to let it use a remote device on a machine with different
bit/byte ordering.
--
Les Mikesell
lesmikesell(a)gmail.com