Skip site navigation (1)Skip section navigation (2)
Date:      11 Jun 2002 02:32:06 +0400
From:      "Vladimir B. " Grebenschikov <vova@sw.ru>
To:        Poul-Henning Kamp <phk@critter.freebsd.dk>
Cc:        Maksim Yevmenkin <m_evmenkin@yahoo.com>, "current@freebsd.org" <current@freebsd.org>
Subject:   Re: Device cloning
Message-ID:  <1023748326.595.69.camel@vbook.express.ru>
In-Reply-To: <29346.1023743719@critter.freebsd.dk>
References:  <29346.1023743719@critter.freebsd.dk>

next in thread | previous in thread | raw e-mail | index | archive | help
=F7 Tue, 11.06.2002, =D7 01:15, Poul-Henning Kamp =CE=C1=D0=C9=D3=C1=CC:
> In message <20020610211347.71117.qmail@web13305.mail.yahoo.com>, Maksim Y=
evmenk
> in writes:
> >Hackers,
> >
> >The project i'm working on might require some sort of
> >device cloning. The current way of cloning, i.e. use
> >DEVFS and allocate unique minor numbers, is not very
> >good for my purpose.
> >
> >The idea is simple: the same device(major,minor) can
> >be opened several times by different processes (or
> >possibly threads within the same process) and each
> >process (thread) will have unique device instance.=20
>=20
> Sorry, but this wont work for a large number of reasons.
>=20
> For one thing none of the  dup(2) or fork(2) like systemcalls
> report what happens to the filedescriptors down to the
> device drivers so you have no way to correctly track which
> process or which instance you are working on.

As far as I understand _key_ word is "open", each new instance appears
on open(), but fork() and dup() only do regular work. dup'ed or fork'ed
descriptors will be same from driver's point of view, but each new
open() will create new instance.


> Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
> phk@FreeBSD.ORG         | TCP/IP since RFC 956
> FreeBSD committer       | BSD since 4.3-tahoe   =20
> Never attribute to malice what can adequately be explained by incompetenc=
e.
=20
--=20
Vladimir B. Grebenschikov
vova@sw.ru, SWsoft, Inc.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1023748326.595.69.camel>