On 26-Jun-99 Jesus Monroy wrote:
>      The part I'm lost on is "can change things from under it".
>      From under what? I assume the statement means "it" as being
>      the code or driver. So the question begs, what things can 
>      change?

The assumption that changes is that your code assumes (well mine does :) that
it can only have one processor running at at once for routines like open, read,
etc.. So no locking is done to protect those routines.

Like what happens if CPU 0 is running your drivers open code, then CPU 1 starts
running it (because a user program did an open call) then your driver will be
confused because it assumes that the open call is only being executed by one
CPU.

To protect against it you'd need to grab a mutex when you enter open (or block
waiting for the other CPU to release it)

---
Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
  -- Andrew Tanenbaum


Attachment: pgpgT2P6qWtwk.pgp
Description: PGP signature

Reply via email to