The Dining Philosophers Problem

แชร์
ฝัง
  • เผยแพร่เมื่อ 11 มิ.ย. 2024
  • Operating System: The Dining Philosophers Problem
    Topics discussed:
    Classic Problems of Synchronization:
    1. The Dining Philosophers Problem.
    2. Solution to the Dining Philosophers Problem using Semaphores.
    3. Remedies to prevent Deadlocks.
    Follow Neso Academy on Instagram: @nesoacademy (bit.ly/2XP63OE)
    Follow me on Instagram: @jaiz_itech (bit.ly/2M3xyOa)
    Contribute: www.nesoacademy.org/donate
    Memberships: bit.ly/2U7YSPI
    Books: www.nesoacademy.org/recommend...
    Website ► www.nesoacademy.org/
    Forum ► forum.nesoacademy.org/
    Facebook ► goo.gl/Nt0PmB
    Twitter ► / nesoacademy
    Music:
    Axol x Alex Skrindo - You [NCS Release]
    #OperatingSystemByNeso #OperatingSystem #ProcessSynchronization #DiningPhilosophersProblem

ความคิดเห็น • 131

  • @aakashbiju.v8548
    @aakashbiju.v8548 ปีที่แล้ว +40

    I wanna be a philosopher, just spend my whole life thinking or eating.

  • @PythonisLove
    @PythonisLove 2 ปีที่แล้ว +428

    everyone should have their own fork. Using other's fork is not good practice

    • @01.abhishekkumar33
      @01.abhishekkumar33 2 ปีที่แล้ว +8

      😄😄😄😄

    • @siddharth2954
      @siddharth2954 2 ปีที่แล้ว +15

      If everyone starts taking their own fork then there will be the shortage of forks!!
      Relate it with the processess and resource allocation

    • @hungertv3988
      @hungertv3988 2 ปีที่แล้ว +2

      , 😂😂

    • @areezmuhammed
      @areezmuhammed 2 ปีที่แล้ว +21

      By that logic you could also tell that one of the philosopher could eat directly from thier hand, why the fork

    • @ounissaslimi8412
      @ounissaslimi8412 2 ปีที่แล้ว +6

      The first thing i thought about what covid 19

  • @devbhuva9798
    @devbhuva9798 ปีที่แล้ว +33

    Its really very tough to explain such complicated problems so clearly and also the explanation is so perfect and point to point. Hats offf!!!!!

  • @mdnghbrs1283
    @mdnghbrs1283 2 ปีที่แล้ว +39

    Three minutes into this video and already like your explanation. Thanks a lot for the content

    • @bowserjrsoutsidestory7125
      @bowserjrsoutsidestory7125 9 หลายเดือนก่อน

      what? but three minutes in he is still just describing the problem?
      in fact he doesnt start going into the problem until 5 minutes in

    • @caamedyyyy
      @caamedyyyy 2 หลายเดือนก่อน

      ​@@bowserjrsoutsidestory7125that's the way how clearly explained pin to pin again and again reached to our brain what he is saying right

  • @lalithav3079
    @lalithav3079 3 หลายเดือนก่อน

    Very Beautifully explained! Thanks, Neso Academy

  • @ROSHAN-bf5bj
    @ROSHAN-bf5bj 2 ปีที่แล้ว +4

    Great explanation sir. Thank you🙂🙂

  • @caamedyyyy
    @caamedyyyy 2 หลายเดือนก่อน +2

    At first entered into ur vedio i just switched to another channel but continuously wateching 3minutes i automatically liked ur way of explanation

  • @dhaneshjandhyala5685
    @dhaneshjandhyala5685 2 ปีที่แล้ว +22

    Wonderful explanation ❤️

  • @xigong3009
    @xigong3009 2 ปีที่แล้ว +14

    Thanks for the exposition! I thought this is some boring problem computer scientistis made up, but then I realize that 1) there could be a deadlock for naive implementation 2) there are many different ways to address the deadlock 3) different solutions have different pro and cons under different metrics

    • @fernandobedoyaortecho2330
      @fernandobedoyaortecho2330 6 หลายเดือนก่อน

      "There is no free lunch" is particularly relevant in this problem :)

  • @ramzeilahi7917
    @ramzeilahi7917 2 ปีที่แล้ว +2

    Thank u so much for this topic❤❤❤

  • @pranavbakare8922
    @pranavbakare8922 2 ปีที่แล้ว +1

    One of the most Important and famous problem with easiest solution

  • @barisballi70
    @barisballi70 ปีที่แล้ว

    A really clean explanation, thx

  • @theuglycat16
    @theuglycat16 ปีที่แล้ว

    thanks a lot for your videos. i just watch for one straight and already know with the problem

  • @xsilverx1198
    @xsilverx1198 5 หลายเดือนก่อน +2

    I owe my CE degree to this channel. THANK YOU!

  • @darshil-oh2le
    @darshil-oh2le 7 หลายเดือนก่อน

    Nicely explained problem

  • @balashivuduu2101
    @balashivuduu2101 11 หลายเดือนก่อน

    Great lecture sir...

  • @susmitamaity8576
    @susmitamaity8576 ปีที่แล้ว

    Really helpful...thanks

  • @brucelamb6060
    @brucelamb6060 2 ปีที่แล้ว +2

    Thank you. Very well done!

  • @mohsinkalander3986
    @mohsinkalander3986 ปีที่แล้ว

    Thank You

  • @justkflesh
    @justkflesh 2 ปีที่แล้ว

    Excellent lecture!

  • @shikarikumar
    @shikarikumar ปีที่แล้ว

    Thanks sir

  • @niteeshtechminister126
    @niteeshtechminister126 2 ปีที่แล้ว +28

    What a life
    Eating🍴&
    Thinking 🤔

  • @ujefmalek77
    @ujefmalek77 2 ปีที่แล้ว

    Thanks ❤️

  • @astrovishalthakur
    @astrovishalthakur 2 ปีที่แล้ว +24

    I think the second remedy was best in a deadlock condition. Because in the first remedy, we are just decreasing the processes and in the last remedy, 1 and 5 sit adjacent but both are odd numbers, so it still creates deadlock as both will pick the left first.

    • @tienngocnguyen5567
      @tienngocnguyen5567 ปีที่แล้ว

      The pick up action is mutual exclusive, so only one philosopher can pick up the chopstick

    • @Ayush37262
      @Ayush37262 11 หลายเดือนก่อน +1

      11:10 when i = 4 then [(i+1)%5] will give 0
      How to solve this???

    • @anonymous1306
      @anonymous1306 11 หลายเดือนก่อน +1

      @@Ayush37262 Why would you mod by 5 when the no. of philosophers are 4 ?

    • @ruzreuben9755
      @ruzreuben9755 5 หลายเดือนก่อน +1

      Why? If philosipher 1 and 5 pick up left at same time philosipher 1 will be blocked because of it's right chopstick is used by philosipher 5. Philosipher 5 chopstick could also be blocked but only in case philosipher 4 is eating(because philosipher 4 picks *right* first). So there is no deadlock, 4 will finish eating then 5 will eat then 1.

    • @ahmedrateb5867
      @ahmedrateb5867 2 หลายเดือนก่อน

      Even if this is true, no deadlock will occur because eventually the one holding the common fork will get to eat and then place it down for the other to eat
      To get a deadlock here all 5 philosophers have to be involved, by reducing them to 4 which the first solution does, there will always be a free fork since there are still 5 forks

  • @TheExhilaratedMan
    @TheExhilaratedMan ปีที่แล้ว

    Amazing explanation!!!

  • @hayethamez2671
    @hayethamez2671 หลายเดือนก่อน

    thnk you

  • @nutislucky4904
    @nutislucky4904 3 หลายเดือนก่อน +2

    why philosopher? why it isn't dining family or friends?

  • @wasalawyer.1179
    @wasalawyer.1179 วันที่ผ่านมา

    Can this be Solved using Graph theory and Hamiltonian Graph Conceot?

  • @BLcomicsShorts
    @BLcomicsShorts ปีที่แล้ว +2

    please give me the c program code of this dining philosopher problem

  • @deepa6332
    @deepa6332 8 หลายเดือนก่อน

    Sir, how could, if there are 5 philosophers, then if limited, how will one fork be handled with one chopstick? Do work run time ready with the elapsed time, where the relapsed time remains quicker, is that a small confusion? Do maintain the relapsed time, is that part to be kept in mind for the problem to be resolved. Thank you.

  • @ABHINDHU
    @ABHINDHU 2 ปีที่แล้ว +6

    Sir please make videos on software engineering subject sir please 🥺🥺

  • @programmer1111x
    @programmer1111x 5 หลายเดือนก่อน +2

    But if i=4. We need 5 in the 2nd wait.
    But
    (4+1) % 5 =0....
    So isn't this a problem?

  • @tadm123
    @tadm123 2 หลายเดือนก่อน

    hey man are you sure it's not a Mutex instead of a semaphore? Semaphore when initialized (available) are set to 0. And when someone enters the critical ssection to work on some shared resource the semaphore counter increases to 1. Maybe I'm wrong

  • @kavyabanka4482
    @kavyabanka4482 2 ปีที่แล้ว +3

    When will u complete DBMS lectures in neso fuel

  • @simaobonvalot9141
    @simaobonvalot9141 ปีที่แล้ว +2

    I would like to see the same problem solved with threads. Any plans on making it happen ?

    • @Ayush37262
      @Ayush37262 11 หลายเดือนก่อน

      11:10 when i = 4 then [(i+1)%5] will give 0
      How to solve this???

  • @feritcan5992
    @feritcan5992 2 ปีที่แล้ว +3

    i like the way Indians talking in English. And, thanks for the explanation.

  • @DSA_Coding
    @DSA_Coding 4 หลายเดือนก่อน

    perfect

  • @shawazonfire
    @shawazonfire ปีที่แล้ว +2

    i don't understand how you can specify the parameters of the problem at the beginning, for over 5 minutes, and then change those parameters at the end. yes, you can allow at most 4 philosophers to sit at the table, but that changes the actual problem you're being asked to solve. if you can reduce the maximum philosophers allowed at the table to solve this problem, then why can't you just increase the maximum forks allowed at the table to solve this problem? how is changing the parameters of the problem to solve it an acceptable solution?

    • @m4ack4n
      @m4ack4n ปีที่แล้ว

      I'm guessing that the processes and resources vary but it was not clear in this video.
      Sometimes the problem occurs(but not always), and when it does one way is avoid the problem all together by seting a max allowed "philosophers"(processes). Tho adding more "chopsticks"(resources) is not always possible.
      What I can not understand is why a "mutex" solution isn't used here. It has been the go to sollution for other problems.

  • @priyadharzhini4181
    @priyadharzhini4181 ปีที่แล้ว +5

    is one fork not enough to eat noodles??

  • @VishalBhagat1
    @VishalBhagat1 12 วันที่ผ่านมา

    Best ❤

  • @thecodeshala
    @thecodeshala 29 วันที่ผ่านมา

    That's why a famous quote is famous in India "अपना हाथ जगन्नाथ" 😂

  • @archer8629
    @archer8629 ปีที่แล้ว +1

    great video! I hope the philosophers washed their hands before sitting down to eat.

  • @abhilashk4607
    @abhilashk4607 หลายเดือนก่อน

    Naattil evida sire veed

  • @miracle3825
    @miracle3825 2 ปีที่แล้ว +1

    Thank you sir. I am new to your channel and currently I am watching your videos about digital electronics. Sir can you please suggest me a channel about optics , electricity and magnetism (English medium) . Thank you sir once again.

  • @user-wm6qf3ek1n
    @user-wm6qf3ek1n 3 หลายเดือนก่อน

    if chopstick[i] is the left chopstick then how chopstick[i+1] is the right chopstick....in @13:18

  • @mohammedirfan8651
    @mohammedirfan8651 ปีที่แล้ว +2

    Guys better eat with ur hands problem solve 💯

  • @Ayush37262
    @Ayush37262 11 หลายเดือนก่อน

    11:10 when i = 4 then [(i+1)%5] will give 0
    How to solve this???

  • @mr.game_over1170
    @mr.game_over1170 ปีที่แล้ว +1

    so, when i=4 , 4+1=5 then 5 mod 5 will be 0 right ? is there a 0 copstick?

    • @tushman278
      @tushman278 ปีที่แล้ว

      the first chopstick corresponds to chopstick[0]. Array indexing starts with 0.

    • @himahelmy6206
      @himahelmy6206 ปีที่แล้ว

      @@tushman278 he initialized it as semaphore chopstick [5], so in that case the array has 6 elements tho

    • @aryanbasu8686
      @aryanbasu8686 6 หลายเดือนก่อน

      ​@@himahelmy6206No. It has 5 elements. But the numbering will be from 0 to 4. Will declaring the array, it will be chopstick[5] however while accessing the last variable later in the code, it will be chopstick[4]

  • @SuyashGaurav
    @SuyashGaurav 3 หลายเดือนก่อน

    Why don't they eat with just one fork? Do they think forks have separation anxiety?

  • @helenmachelen4200
    @helenmachelen4200 16 วันที่ผ่านมา

    So is it rice or noodles? Forks or chopsticks?

  • @AliMurtaza-ew3lh
    @AliMurtaza-ew3lh หลายเดือนก่อน

    for those of you looking for the code that's deadlock free look up the Tannenbaum's solution.

  • @rohannaidubadarla280
    @rohannaidubadarla280 6 หลายเดือนก่อน

    If I am there in place of philosopher, I would have eaten without even thinking about deadlock 🤣

  • @serhii-ratz
    @serhii-ratz 2 ปีที่แล้ว +1

    And what about chopstick[0]?

    • @nooreldali7432
      @nooreldali7432 2 ปีที่แล้ว

      The algorithm would be correct if you start counting from zero [0,1,2,3,4] for both forks and philosophers. Philosopher #4 will execute wait(4) and wait (1+4%5) = wait(0) which is correct in this case.

  • @TT-xg7qd
    @TT-xg7qd 6 หลายเดือนก่อน +1

    Second scenario is good I think, to allow philosopher to pick the chopsticks only if both chopsticks are free....

    • @ayahamad5931
      @ayahamad5931 6 หลายเดือนก่อน

      But I think the third scenario is better

  • @pavanfernandes9329
    @pavanfernandes9329 ปีที่แล้ว

    Noodles should have been yellow colored 🤣🤣

  • @alenko2682
    @alenko2682 2 หลายเดือนก่อน

    You only need one fork for spaghetti! :)

  • @soccerforu9530
    @soccerforu9530 ปีที่แล้ว

    💪💪

  • @vishuagarwal2820
    @vishuagarwal2820 2 ปีที่แล้ว +1

    Another solution: Can't we just start with 1 to 5, 1 will eat and give back the chopstick, and then 2 will eat, and so on.

    • @usaball9193
      @usaball9193 2 ปีที่แล้ว

      That's what the second remedy is saying

  • @pranzz30
    @pranzz30 8 หลายเดือนก่อน

    🙏🏻🙏🏻🙏🏻💯

  • @rushikeshsable3437
    @rushikeshsable3437 6 หลายเดือนก่อน

    I think every body must have hand practice eating

  • @loydvincentbutron4345
    @loydvincentbutron4345 ปีที่แล้ว

    Magkinamot nalang tag kaun uy HAHAHAHA

  • @animeshmaru16
    @animeshmaru16 2 ปีที่แล้ว +3

    chopstick[4] will call chopstick[(4+1)%5] ie. chopstick[0] that is not correct..😥

    • @sandeept7114
      @sandeept7114 ปีที่แล้ว +1

      its an array -indexing starts at zero. so its correct, first chopstick is labeled chopstick[0].

  • @tonystark1552
    @tonystark1552 6 หลายเดือนก่อน

    I'm still confused what are the philosophers eating.. 😂

  • @CHETHANgaming16
    @CHETHANgaming16 11 หลายเดือนก่อน

    But one fork is enough know😂

  • @edanuryardm8252
    @edanuryardm8252 6 หลายเดือนก่อน

    adamsin

  • @studystuff51
    @studystuff51 ปีที่แล้ว +3

    haha, I'm better than these philosophers, I need just one fork to eat!

  • @therobinx20
    @therobinx20 5 หลายเดือนก่อน

    it actually is chopsticks instead of folks. 2 folks won't make much sense.

  • @pranavmuthige427
    @pranavmuthige427 ปีที่แล้ว +1

    Isiliye ham Hindustani haath se khate hain

  • @ruzreuben9755
    @ruzreuben9755 5 หลายเดือนก่อน

    lol it makes more sense with chopsticks, why would a philosipher need 2 forks

  • @wildweroam2581
    @wildweroam2581 2 ปีที่แล้ว

    Lovelelyyyyy

  • @sidarkilinc1291
    @sidarkilinc1291 2 ปีที่แล้ว +1

    computer science degree check

  • @ARFLASHYT
    @ARFLASHYT 3 หลายเดือนก่อน

    just so let u know u can also eat noodles with one fork thank me later xd

  • @hitblank2320
    @hitblank2320 ปีที่แล้ว

    they shouldn't share the fork its unhealthy lol

  • @ashwin5562
    @ashwin5562 3 วันที่ผ่านมา

    Are hath se khalo yaar 😑

  • @hueydo3522
    @hueydo3522 2 ปีที่แล้ว +1

    This is a naive solution. This is not the right solution for dining philosopher

    • @Ananasbleu
      @Ananasbleu 2 ปีที่แล้ว +2

      what do you mean by "this" ? he goes through many different subtopics (avoid deadlock, using semaphores...) which one are you talking about?

  • @kozavr
    @kozavr ปีที่แล้ว

    O my god, it's not "tinking" it's "thinking" :)))

  • @co2_os
    @co2_os 8 หลายเดือนก่อน

    very unhygienic imho

  • @ARFLASHYT
    @ARFLASHYT 3 หลายเดือนก่อน

    and also noodles with out soup is really unhealthy to eat take care of your health thank me later :)

  • @bionic20
    @bionic20 ปีที่แล้ว +1

    You talk silly too much....same thing repeats

  • @ramyap9110
    @ramyap9110 2 หลายเดือนก่อน

    Even i was listening to this topic in my class I was thinking that chopsticks 🥢 r of 2 but y they hv kept one for each how can they eat with one chopstick 😂