[so] so Digest, Vol 65, Issue 5
    Razvan Deaconescu 
    razvan.deaconescu at cs.pub.ro
       
    Sat Sep 17 17:17:26 EEST 2011
    
    
  
On Sat, 2011-09-17 at 04:20 -0700, Razvan Pistolea wrote:
> SemaforGeneral(N){
> 
>     c = N                        // contor; lasa maxim N
>     mutex = SemaforBinar(1)        // protejeaza contorul
>     s2 = SemaforBinar(N>1?1:0)    // implementeaza "notificarea"
>     
>     wait()
>         s2.wait()
>         mutex.wait()
>         c--
>         if c > 0
>             s2.release()
>         mutex.release()
>         
>     release()
>         mutex.wait()
>         c++
>         if c == 1
>             s2.release()
>         mutex.release()
> }
Da, așa este. Mulțumim de observație.
Am găsit și pe Google[1]. Am actualizat rezolvarea[2].
[1] http://webhome.csc.uvic.ca/~mcheng/460/notes/gensem.pdf
[2] http://elf.cs.pub.ro/so/wiki/examen#lucrare-2
Răzvan
    
    
More information about the so
mailing list