On Mon, May 14, 2007 at 11:13:34PM +0900, Michal Suchanek wrote:
> Of course, the FDs are only to organize your IO. You can use TCP ans
> the OS provided sockets, or you can use a single UDP socket and
> maintain the connection state yourself.

If you want to run your own TCP stack you'll need to open a raw socket, and
you can't do that unless you're root, because of the security implications
(e.g. ordinary users could masquerade as privileged services such as SMTP on
port 25)

> Similarly the FDs to open files give you organized access to space on
> a disk drive, and you can always open the partition device and manage
> the storage yourself.

Similarly, only root can have direct access to the raw device. Otherwise,
any user would be able to read any other user's files, modify any file at
whim, totally corrupt the filesystem etc.