Re: Device Treiber... (OT?)

From: J Wunsch <j(at)uriah.heep.sax.de>
Date: Tue, 4 Jul 2000 00:01:34 +0200

As Yves Jaeger wrote:

> 1. wenn ich einen tsleep() im Treiber mache (nicht im Interrupt
> Kontext), schlaeft dann mein gesamter Prozess oder nur der
> Thread, der den Treiber aufruft ?

Der gesamte Prozeß. Threads in FreeBSD leben (im Moment) innerhalb
eines Prozesses.

tsleep() wird übrigens ohnehin nicht aus einem Interruptkontext
gerufen, das wäre eine _sehr_ schlechte Idee (ein Interruptkontext
besitzt nämlich keinen Prozeßkontext, den er schlafen legen kann).
wakeup() wird dafür häufig aus einem Interruptkontext heraus gerufen.

> 2. Gibt es irgendwo eine Beschreibung wie man eine scatter/gather
> Bus-master DMA macht, bzw. ein _GUT_ (und vorallen durchgaengig)
> dokumentiertes Beispiel dazu ?

``All documentation files usually end up in .c.''

SCSI-Treiber und Treiber einiger Ethernetkarten machen sowas...

> Muss dabei die Version beruecksichtigt werden (gibt es also einen
> Unterschied zwischen FreeBSD 3.x und 4.x) ?

Wüßte ich für diese Fragen erstmal keinen, allerdings haben sich die
Treiberframeworks mal geändert (also die Einbindung in den Kernel
insgesamt).

> PS: Ist das fuer de-bsd-questions ok, oder sollte das in de-bsd-hackers
> diskutiert werden?

de-bsd-hackers scheint eine ziemlich tote Liste zu sein.

-- 
cheers, J"org               .-.-.   --... ...--   -.. .  DL8DTL
http://www.sax.de/~joerg/                        NIC: JW11-RIPE
Never trust an operating system you don't have sources for. ;-)
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Tue 04 Jul 2000 - 00:20:32 CEST

search this site