classical problem of synchronization in hindi

Classical problem of synchronization in hindi

आज हम इस पोस्ट में classical synchronization problem के बारें में पढेंगे तो चलिए शुरू करते है:-

classical synchronization problem निम्न प्रकार है।

  1. The bounded buffer problem
  2. The readers writers problem
  3. The dining philosophers problem
  4. Sleeping Barber problem

bounded buffer problem in hindi

इसे producer- consumer problem भी कहते हैं। हमारे पास दो process है producer process तथा consumer process ।ये दोनो process एक buffer को share करती है जिसमें slots होते हैं। producer process प्रोडक्ट generate करती है ताकि उसे consumer use कर सके। Consumer, process producer द्वारा generate किए product को use करती है।

Bounded buffer problem in hindi

Producer और consumer दोनो process एक साथ काम नही कर सकती है। Producer process तब तक काम नहीं करती जब तक की Buffer में कम से कम एक slot खाली न हो और consumer process तब तक कोई product consume नहीं कर सकती जब तक की buffer में कम से कम एक slot भरा हुआ नहीं हो।

हम इस synchronization problem को semaphore से solve कर सकते है।
semaphore क्या है?
mutex क्या है?

Semaphore empty=N, full=0, mutex=1;

process producer

{

while (true) {

empty.acquire();

mutex.acquire();

produce();

mutex.release();

full.release();

}}

process consumer

{

while (true) {

full.acquire();

mutex.acquire();

consume ();

mutex.release();

empty.release();

}}

Readers writers problem in hindi

हम data items जैसे file or database आदि कुछ process के बीच share करते हैं। ये process है reader process and writer process. Readers process मे reader file को read करते हैं जबकि writer process मे writer file मे content लिखते है।

यदि कोई readers process read कर रही है तो कोई writers process write नहीं कर सकती हैं लेकिन दुसरी readers process read कर सकती हैं।

यदि कोई writer process write कर रही है तो किसी भी दुसरी process readers या writer read या write नहीं कर सकती हैं उन्हें process के पूरा होने तक wait करना होगा।

Readers writers problem in hindi

Readers writers problem को solve करने के लिए lock system use किया जा सकता है।

  • इसमें एक reader writer lock होता है।
  • यहां पर दो mode होंगे read mode and write mode.
  • कोई Readers process जो है वह reader writer lock से read mode मे डेटा read करने की permission ले सकती है
  • बहुत सी readers process, read mode में read की permission ले सकती है जबकि केवल एक write process जो है वह write mode में write की permission ले सकती है। synchronization problem

Semaphore mutex = 1;

Semaphore db = 1;

int readerCount = 0;

process writer {

db.acquire();

// write

db.release();}

process reader {

// protecting readerCount

mutex.acquire();

++readerCount;

if (readerCount == 1)

db.acquire();

mutex.release();

// read

// protecting readerCount

mutex.acquire();

–readerCount;

if (readerCount == 0)

db.release;

mutex.release();}

dining philosophers problem in hindi

Dining Philosophers problem in hindi

माना कि पांच philosophers एक circular table में बैठे हैं सबके पास अपनी एक कुर्सी है प्रत्येक philosopher के एक पास अपनी एक चाउमीन की प्लेट है और प्रत्येक प्लेट के दायी तरफ एक chopstick है जब एक philosopher दोनो तरफ वाली chopstick ले तो एक philosopher ऐसा होगा जिसके पास एक भी chopstick नहीं होगी। एक समय पर एक साथ दो philosopher खा सकते हैं और तीनों philosopher सिर्फ बैठ कर सोच सकते हैं। यहां एक issue यह है कि अगर प्रत्येक philosopher अपनी एक chopstick उठा ले तो कोई भी philosopher खा नहीं सकता है।

इसमें हम एक solution ले सकते हैं कि circular table को चार लोग share करे और वो सब एक दूसरे के सामने बैठे हो। हम चारों की numbering करें फिर even number वाले को पहले दायी फिर बायी chopstick उठाए और odd number वाले पहले बायी और फिर दायी chopstick उठाए। एक philosopher तब ही chopstick उठाए जब उसके लिए दोनों chopstick available हो।synchronization problems

Semaphore chopstick[] = new Semaphore[5]; // all = 1 initially

process philosopher_i{

while (true)

{

chopstick[i].acquire();

chopstick[(i+1) % 5].acquire();

//Eat

chopstick[i].release();

chopstick[(i+1) % 5].release();

// think

}}

Barber’s shop problem in hindi

माना कि एक barber की shop है जिसमें एक barber एक barber chair और customer के लिए कुछ waiting chair है। Barber barber’s chair पर सोया हुआ हो सकता है जब customer shop पर आए । Customer shop पर आकर Barber को नींद से उठाकर barber chair पर बैठ जाएगा।

अगर barber अपना काम कर रहा है तो customer waiting chair पर बैठ सकता है यदि chair खाली हो और अगर chair खाली नहीं हो तो customer वापस जा सकता है.

निवेदन:- अगर आपको classical synchronization problem की यह पोस्ट अच्छी लगी हो तो मुझे कमेंट के द्वारा बताइए तथा इसे अपने दोस्तों के साथ share करें. धन्यवाद.

Leave a Comment