What SHOULD go in the kernel

Gil Pilz@Eng@Banyan gil at banyan.UUCP
Tue Oct 31 08:47:15 AEST 1989


In article <3718 at altos86.Altos.COM> dtynan at altos86.Altos.COM (Dermot Tynan) writes:
>Another reason for not paging the kernel, is instruction restart within a
>device driver.  A classic example is a UART with a FIFO.  Allowing
>instruction restart after a page-fault, when the driver is reading from the
>UART, and writing to (pageable) memory will create havoc.  Intel products
>are insulated from this, because they have a separate I/O bus, which means
>that I/O can only be done to an on-chip register.  However, memory-mapped
>I/O will fail horribly.

So page in (if necessary) and lock down the target page(s) *before*
starting the I/O, then unlock them on I/O completion.  What's the
problem ?

"forty orange cookies, some are black some are white
 what would it take to make 'em all turn *just* *right* ?
 forty orange cookies sitting on the bed
 one took off, the others followed
 went straight for my head"
	- house of large sizes

Gilbert W. Pilz Jr.       gil at banyan.com



More information about the Comp.unix.wizards mailing list