[pso] [tema2]win - contrazicere in cazul SMP

Octavian Purdila tavi at cs.pub.ro
Thu Apr 19 20:42:00 EEST 2007


On Thursday 19 April 2007 20:10, omar Chouydary wrote:
> Din windows internals:
> "On a multiprocessor system, however, because a driver can execute on two or more  processors at once, this technique isn't enough to block other accessors.  Therefore, another mechanism, a spinlock, is used to lock a structure for  exclusive access from a particular CPU"
> 

Citatul e out of context, si nu inteleg care este "this technique".

> Din laborator (lab5)
> "Ca şi în Linux, există situaţii în care device driverele trebuie să se sincronizeze cu rutina de întrerupere. Cum nu se pot folosi spinlock-uri pentru aceasta (altfel există pericolul de deadlock-uri)..."
> 
> Dintr-un mesaj aici pe lista se zicea ca trebuie sa ne protejam si pt SMP.
> Ce sa intelegem pana la urma?
> 
> Eu cred ca trebuie folosit atat un spinlock(sau semafor) pt protejarea SMP si KeSynchronizeExecution pt protejarea fata de intreruperi. In ISR am putea sa punem un spinlock (tot pt protejarea de intreruperi de la alt procesor). E corect asa? > Sau mergem pe varianta ca avem un singur procesor si nu ne intereseaza (ceea ce mi se pare cam aiurea). 
> 

KeSynchronizeExecution foloseste la randul ei un spinlock, deci nu ar trebui sa existe probleme pe SMP. Vezi detaliile in MSDN.

tavi


More information about the pso mailing list