Vad är grundläggande skillnaden mellan semafor och monitor i operativsystemet?

Vänta och signal verksamheter på skick variabler i en monitor liknar P och V operationer på räknar semaforer. Ett vänta uttalande kan blockera en process execution, medan en signal uttalande kan orsaka en annan process vara spärrad. Det finns dock vissa skillnader dem emellan. När en process avrättar en P operation, blockerar den inte nödvändigtvis denna process eftersom den cykliska semaphore kan vara större än noll. Däremot när instruktionen vänta er utförat, blockerar den alltid processen. När en aktivitet körs en V -operation på en semafor, det antingen unblocks en uppgift som väntar på att semafor eller justerar semafor räknaren om det finns någon uppgift att låsa upp. Å andra sidan, om en process körs en signal uttalande när det finns ingen annan process avblockera, finns det ingen effekt på variabeln skick. En annan skillnad mellan semaforer och monitorer är att användarna vaknar av en V drift kan återuppta utförande utan dröjsmål. I motsatts användare vakna av en signal drift startas om när bildskärmen är olåst. En monitor lösning är dessutom mer strukturerad än en med semaforer eftersom de uppgifter och förfaranden är inkapslade i en enda modul och som ömsesidigt uteslutande tillhandahålls automatiskt av genomförandet.
(utdrag från http://ei.cs.vt.edu/~cs5204/sp99/monitor.html) Svara de vänta och signal operationer på skick variabler i en monitor liknar P och V operationer på räknar semaforer. Ett vänta uttalande kan blockera en process execution, medan en signal uttalande kan orsaka en annan process vara spärrad. Det finns dock vissa skillnader dem emellan. När en process avrättar en P operation, blockerar den inte nödvändigtvis denna process eftersom den cykliska semaphore kan vara större än noll. Däremot när instruktionen vänta er utförat, blockerar den alltid processen. När en aktivitet körs en V -operation på en semafor, det antingen unblocks en uppgift som väntar på att semafor eller justerar semafor räknaren om det finns någon uppgift att låsa upp. Å andra sidan, om en process körs en signal uttalande när det finns ingen annan process avblockera, finns det ingen effekt på variabeln skick. En annan skillnad mellan semaforer och monitorer är att användarna vaknar av en V drift kan återuppta utförande utan dröjsmål. I motsatts användare vakna av en signal drift startas om när bildskärmen är olåst. En monitor lösning är dessutom mer strukturerad än en med semaforer eftersom de uppgifter och förfaranden är inkapslade i en enda modul och som ömsesidigt uteslutande tillhandahålls automatiskt av genomförandet.
(utdrag från http://ei.cs.vt.edu/~cs5204/sp99/monitor.html)