Re: Direct access to hardware

From: James Sutherland (jas88@cam.ac.uk)
Date: Tue Jul 25 2000 - 05:01:24 EST


On Mon, 24 Jul 2000, Horst von Brand wrote:

> > IOW, pass the buck to every app that runs? Let's go one better, shall we,
> > and put file access controls in userspace too? And network protocol
> > handling, scheduling, etc. In fact, let's just remove the whole OS and go
> > with an MS DOS clone, and leave EVERYTHING up to userspace! :-)
>
> Yep. Already done, from day one even: All file access checks for *root* are
> userspace only, and we are talking about root-only stuff here.

Since when did root bypass every access control in the file system? Root
is almost always permitted access by the access control mechanism, that's
all.

> > One of the functions of an OS is to act as the interface between hardware
> > and applications. The approach being advocated here by some is "just leave
> > the unmarked minefield sitting in the penguin enclosure - we'll squeegee
> > Tux off the walls later". I'd rather keep the munitions somewhere else.
>
> Use another system then. Unix/Linux _is_ dangerous, it has little safety
> net built in. And I like it exactly because of this, it allows me to boldly
> go where no other system I've seen lets me go even near.

That's a bug, not a feature.

> To get what you are asking for would give a kernel source of a gigabyte or
> so (just add up all the funny things you might want to send to a random
> IDE, SCSI, FireWire, USB, ... device, consider that downloadable firmware
> is becomming the norm, and devices are proliferating like never before),
> and _that_ doesn't scale at all.

A gigabyte? Hardly. It's an if statement we need, that's all. OK, a couple
of if statements per subsystem will add up to quite a few Kb - but that'll
hardly break the bank.

James.

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



This archive was generated by hypermail 2b29 : Mon Jul 31 2000 - 21:00:18 EST