Semaphores

Поділитися
Вставка
  • Опубліковано 23 січ 2025

КОМЕНТАРІ • 171

  • @bagos1997
    @bagos1997 3 роки тому +535

    If anyone is confused from the word Semaphore know that in Greek the word Σημαφόρος (Semaphoros) means Signal-bearer. Hope that helps.

    • @omardumet120
      @omardumet120 3 роки тому +37

      we call traffic lights "semaforos" in Spanish lol

    • @shivamxsingla
      @shivamxsingla 2 роки тому +2

      @@omardumet120 lol

    • @sasankv9919
      @sasankv9919 2 роки тому +5

      Thanks, this opened up lot more meaning to this concept

    • @manuelconte2127
      @manuelconte2127 2 роки тому +6

      in italian "SEMAFORO"

    • @189Blake
      @189Blake 2 роки тому +2

      @@omardumet120 Yeah, my language is Spanish and when I heard the concept it was rather logical to know what it does

  • @murshedaziz3742
    @murshedaziz3742 2 роки тому +102

    This channel is a blessing. During my undergrad, I used to refer to your videos to clear out my doubts. Now doing the same in my postgrad. Why on earth teachers can not teach like this.

    • @yajie7756
      @yajie7756 2 роки тому +3

      Some teachers just try to talk for how long a lecture lasts...

    • @shreyanshgupta1587
      @shreyanshgupta1587 Рік тому +2

      Capitalized Education 👍

    • @shamveerapan2875
      @shamveerapan2875 Рік тому

      Cause they want to complete the portion.... they too want to make the students clear. ..but some can't because they dont know.. and many can't because they dont have much time.. they can give you only a outline...what to do???. Its out fate.. 😅😅😇😊😉

  • @elmass3662
    @elmass3662 3 роки тому +59

    NESO academy really be pulling through. Thank you so much sir!

  • @abdelghanimoumen2524
    @abdelghanimoumen2524 2 роки тому +189

    This perfect mini-course is better than my college's 10 hours course

  • @alokendughosh7013
    @alokendughosh7013 2 роки тому +18

    This presentation is too good.
    Understood it perfectly. Thank you so much sir❣️

  • @tanish_mavi
    @tanish_mavi 2 роки тому +4

    Best explaintion of semaphoros on the entire Internet. Thank you so much sir

  • @nojoodothmanal-ghamdi1026
    @nojoodothmanal-ghamdi1026 3 роки тому +15

    Thank you so much the idea is clear now, I cannot express how much you helped me

  • @rupambiswas953
    @rupambiswas953 2 роки тому +3

    Became a fan of this channel, it saved my degree 🙏🙏💙💙

  • @hetaeramancer
    @hetaeramancer 3 роки тому +56

    Wow a new video on OS, finally I can continue my learning on OS that has begun since 2018 LOL

  • @surajbhardwaj1200
    @surajbhardwaj1200 Рік тому +2

    Best explanation on UA-cam.

  • @mihneapostoaca5044
    @mihneapostoaca5044 2 роки тому +14

    You are a master,sir!Great job!

  • @farahmohamed2104
    @farahmohamed2104 Рік тому +2

    The session is too good. and precise Helps to understand very clearly. Thank you

  • @rohitkandula8493
    @rohitkandula8493 Рік тому +1

    One an only king for Operating Systems🔥🔥🙏🙏

  • @himanshusoni1512
    @himanshusoni1512 2 роки тому +3

    Djiktra himself explaining the Semaphore. Thanks

  • @dharanyuvi6951
    @dharanyuvi6951 3 роки тому +7

    Legendary explanation .., thank you champ

  • @sheikharooj5762
    @sheikharooj5762 Місяць тому

    I read it in book did not get any of the concepts but the way you have made the concepts easy for me..cant explain in words thank you❤

  • @kerematasen399
    @kerematasen399 3 роки тому +4

    Best explanation ever.

  • @medhananjay9099
    @medhananjay9099 3 роки тому +3

    what an amazing explanation thankyou so much neso academy it is very heplfull !! thankyou again

  • @ahmedrateb5867
    @ahmedrateb5867 9 місяців тому +1

    Outstanding, makes it so easy and the way it s presented is great

  • @stickkh4083
    @stickkh4083 День тому

    I just understood clearly by watching your video thanks you

  • @divyasrisatyavada965
    @divyasrisatyavada965 2 роки тому +2

    Wow what a explanation sir .I am very cleared about this topic after watching your video thank you so much for such a valuable information sir

  • @abdi.
    @abdi. 3 роки тому +1

    thx dawg, gotta exam this morning. this really helped

  • @jaikishank
    @jaikishank 2 роки тому +1

    Excellent and crisp explanation. Thank you.

  • @adilmughal2251
    @adilmughal2251 2 роки тому +1

    one of the best explanation.

  • @goldenarmer6363
    @goldenarmer6363 2 роки тому +1

    God level explanation💥👌

  • @coding_unicorn2
    @coding_unicorn2 Рік тому +2

    Well explained 🧡

  • @captureit4410
    @captureit4410 3 роки тому +7

    saviors for engineering students

  • @wizardop2100
    @wizardop2100 Рік тому +1

    very well explained sir.Thank you so much

  • @nguyeninhan8542
    @nguyeninhan8542 Рік тому +2

    this is absolutely better than my university's course

  • @avishkarkurkute4753
    @avishkarkurkute4753 6 місяців тому

    neso, you are saviour🙌

  • @tanzimhasan4464
    @tanzimhasan4464 3 роки тому +3

    Thanks for this valuable video 💗

  • @darshil-oh2le
    @darshil-oh2le Рік тому +1

    Nicely Explained 👌👌

  • @kailas813
    @kailas813 2 роки тому +4

    The session is too good. Helps to understand very clearly. Thank you

  • @Account-fi1cu
    @Account-fi1cu 3 роки тому +4

    Thank you!

  • @puneethj9920
    @puneethj9920 3 роки тому +5

    Great video🙂

  • @Ragehunter
    @Ragehunter 3 місяці тому

    it is now clear to me, thank you so much!

  • @mriduljain6809
    @mriduljain6809 2 роки тому +1

    Amazing Explanation Sir..
    Thank you so much 💓💓🥰🥰

  • @fullstackcourse
    @fullstackcourse 9 місяців тому +1

    You're the best!!

  • @mohammadadrees5263
    @mohammadadrees5263 2 роки тому +2

    Thank you sir. explained very well.

  • @abrargadelrab8093
    @abrargadelrab8093 3 роки тому +5

    well explained.

  • @DopetheKid
    @DopetheKid 2 роки тому +2

    SIR YOU ARE GREAT

  • @nehasv7913
    @nehasv7913 3 роки тому +3

    really awesome.

  • @aboudejeber1976
    @aboudejeber1976 3 роки тому +6

    Thank you sir , that's the explanation i was looking for 🌹

  • @khangpiano549
    @khangpiano549 2 роки тому +2

    Thank you

  • @aiqabusov6926
    @aiqabusov6926 2 роки тому +2

    Great Content

  • @MatheusSilva-dragon
    @MatheusSilva-dragon 2 роки тому +1

    Damn! THANK YOU!
    You guys always help me!

  • @huhhzy
    @huhhzy Рік тому +1

    i really appreciate you

  • @jackeyboy6508
    @jackeyboy6508 3 місяці тому

    Thank you Neso

  • @dnyaneshvarsalve2984
    @dnyaneshvarsalve2984 2 роки тому +1

    very good explanation

  • @Bearded_Dragon_Sir
    @Bearded_Dragon_Sir 2 роки тому +2

    Thanks!

  • @MiniduPunsara
    @MiniduPunsara 9 місяців тому +1

    always the best

  • @amanprajapati6301
    @amanprajapati6301 11 місяців тому

    very valuable lacture for us thanks you 🤩

  • @YuganNimsara
    @YuganNimsara 4 місяці тому

    was really helpful. thank you very much.

  • @klaik30
    @klaik30 3 роки тому +8

    The point of mutex is to lock a critical section so that it is thread safe but the call for P() itself is not, right? If two processes each read the check for S they will both see that S > 0 and continue to both run S--. How is this accounted for? I dont think the video talked about this specific scenario?

    • @luciddebz9510
      @luciddebz9510 3 місяці тому +1

      The atomicity of P() ensures that race conditions do not occur when multiple processes/threads attempt to decrement the semaphore simultaneously.

  • @balaganeshn4442
    @balaganeshn4442 3 роки тому +5

    Thanks a lot for your clear explanation , Is there any
    video for MUTUX?

  • @Lawleit_L
    @Lawleit_L Рік тому +2

    But what is the different between locks / semaphores and the other algorithms that we have seen like FCFS, RR and SJF , because all of them are synchronize and arrange the prosses.

  • @ashishchawla9035
    @ashishchawla9035 2 роки тому +7

    But as the critical section can only be accessed by one process at a time so how two processes are entering the critical section at the same time and using it in counting semaphore?

    • @ahmedrateb5867
      @ahmedrateb5867 9 місяців тому

      Counting semaphores are a generalisation of binary semaphores, whereas binary allows a maximum of 1 process to enter the critical section, counting allows up to n where n is a positive integer

    • @SOWProgramming
      @SOWProgramming 8 місяців тому

      Counting semaphores are used when processes need to access a resource which has n instances, so N processes can access that resource.

  • @eswarpethraj9099
    @eswarpethraj9099 3 роки тому +7

    In counting semaphores, if S is set to 4, then 4 processes enter the critical section at the same point of time, how it's possible because only one process can access the critical section. And what do you mean by an instance of a resource? Any example with c++ 20 code using counting semaphores.

    • @subbumotepalli
      @subbumotepalli 3 роки тому

      Same doubt .if you know plz explain

    • @apurvkumar1808
      @apurvkumar1808 3 роки тому

      S is set to 4 means there are 4 instances of the resource so 4 processes can enter in critical section at once.

    • @wasalawyer.1179
      @wasalawyer.1179 7 місяців тому

      does that violate Mutual Exclusion principle?​@@apurvkumar1808

  • @bakersisters7
    @bakersisters7 Рік тому

    Best explanation ever🤌🤌

  • @theomniking7856
    @theomniking7856 Рік тому +1

    ive learnt more things from neso academy (and other youtube tutorials ) than in UNI

  • @GilbertJackob
    @GilbertJackob 3 місяці тому +4

    A lot Better than Gate Smashers

  • @ripudamansingh6928
    @ripudamansingh6928 2 роки тому

    sir you are the best

  • @mohammedparwes9760
    @mohammedparwes9760 Рік тому

    Hats off boss!!!❤

  • @himansushaw4938
    @himansushaw4938 2 роки тому

    very nicely explained. Thanks

  • @venkataswamykadiyam977
    @venkataswamykadiyam977 3 роки тому +6

    Sir, please upload remaining videos in youtube. We can't be able to take screenshots of the lectures in neso app to revise them whenever we want...

  • @DonaldMurf
    @DonaldMurf 2 роки тому

    Thank you so much for this video.

  • @leducphuclong
    @leducphuclong Рік тому

    Thank you so much !!

  • @aribiali3574
    @aribiali3574 3 роки тому

    I luv u dude 💙

  • @patiencechiripanyanga7385
    @patiencechiripanyanga7385 2 роки тому

    Well elaborated

  • @shifankphoulad
    @shifankphoulad 2 роки тому +1

    Nice 😊☺️👍👍

  • @iyadassaadnekka329
    @iyadassaadnekka329 2 роки тому

    Very very amazing thank you

  • @amrrelsheikh
    @amrrelsheikh 2 роки тому

    You didn't need to repeat "enter the critical section or use the resource" a hundred times, it was extremely disturbing, just pick one of them. But thank you, I finally understood the concept after I failed to in 2 different subjects at the uni.

    • @BLG120
      @BLG120 10 місяців тому

      it wasnt disturbing for me. it helped me to understand thoroughly.

  • @kavyabanka4482
    @kavyabanka4482 3 роки тому +12

    Please send memory management in you tube not only in neso fuel please release in u tube

  • @Whymysolutions
    @Whymysolutions Рік тому

    Really it's awesome

  • @KarouiFulla-m6e
    @KarouiFulla-m6e 2 місяці тому

    thank you so much brooooooooooooooooo

  • @kusalaphameya3421
    @kusalaphameya3421 Рік тому

    so amazing

  • @Makerelax444
    @Makerelax444 4 місяці тому +1

    IN COUNTING SEMAPHORE :
    Two processes goes to critical section at same time then it disobey mutual exclusion.
    How it is a solution

  • @bishnubhusal5999
    @bishnubhusal5999 2 роки тому +1

    All the videos are great, only the lacking thing is coding part.

  • @samarthtandale9121
    @samarthtandale9121 2 роки тому +3

    To prevent/protect a shared resource from being accessed by multiple processes at the same time we use Semaphore S, and wait() and signal() operations. But for wait() and signal(), again, the Semaphore is shared resource and they have critical section in them, so we have to again implement mutex for Semaphore S and so on. So, If you got what I just said, to solve a problem of mutex, we are generating another problem of mutex and that will recursively generate another and so on... So how do you solve this problem or where exactly did I go wrong?

    • @Mehraj_IITKGP
      @Mehraj_IITKGP Рік тому +2

      You are correct that using a semaphore to protect a shared resource can introduce its own synchronization issues, particularly if multiple threads or processes need to access the semaphore itself. This can lead to a problem known as "semaphore contention," where threads or processes contend for the semaphore itself, rather than the shared resource it is protecting.
      To address this issue, it is important to carefully design the critical sections for the semaphore and ensure that they are as small and simple as possible. In particular, the critical section for the semaphore should be limited to the code that directly modifies the semaphore's value, such as the wait() and signal() operations.
      One common approach to minimizing semaphore contention is to use a variant of the semaphore known as a "spinlock." A spinlock is a type of lock that repeatedly checks the value of the semaphore in a loop until it becomes available, rather than blocking the thread or process. This can reduce the overhead of context switching and thread synchronization, particularly in high-concurrency environments.
      Another approach to reducing semaphore contention is to use techniques such as "reader-writer locks" or "lock-free algorithms," which are designed to allow multiple threads or processes to access a shared resource in a more fine-grained and efficient manner, without relying on traditional locks or semaphores.

    • @samarthtandale9121
      @samarthtandale9121 Рік тому

      @@Mehraj_IITKGP Thank You very much for taking time to resolve my doubt !!!

    • @samratpatel8060
      @samratpatel8060 Рік тому

      @@Mehraj_IITKGP wow , wrote an long ass para for solving a strangers doubt

  • @vinayak186f3
    @vinayak186f3 3 роки тому +3

    Why is there no while loop in signal's def. i mean if it's a binary semaphore and is already 1 won't it overflow ?

    • @diptabose7187
      @diptabose7187 3 роки тому +2

      S never exceeds one in binary semaphore , because to access the critical section wait operation is done. And after accessing signal operation is used . As signal and wait operations are used indivisibly , Semaphore value doesn't overflow , it remains between 0 and 1.

  • @MrAmalthejus
    @MrAmalthejus 3 роки тому +4

    How can a Resource have multiple instances?! What kind of Resources are you talking about?

  • @HabibiTau
    @HabibiTau 3 місяці тому

    Best way to cover syllabus in less time is to watch your videos.

  • @LL-oj3cs
    @LL-oj3cs 3 роки тому +3

    Truly thanks from an OS final headache person

  • @chhajedji
    @chhajedji 6 місяців тому

    What if s=1, hence both P and V execute simultaneously and during s++ and s-- we face the original producer consumer problem and instead of s being 1, takes value 0 or 2?

  • @mughatoamugha9029
    @mughatoamugha9029 3 роки тому

    🙂 hi.. holaaa... Good to be here again 😇

  • @harshmishra9008
    @harshmishra9008 6 місяців тому

    Is there any platform to get the notes of the lectures?

  • @muhammadmaawaz1221
    @muhammadmaawaz1221 Рік тому

    Thanks

  • @uditish5531
    @uditish5531 2 роки тому

    Just perfect!!!!

  • @MrMaschine999
    @MrMaschine999 Рік тому

    Why is it possible for different processes to be in the critical section for counting semaphores? I thought you sad we only want one process at a time in the critical section. Did I misunderstood something?

  • @rohith2758
    @rohith2758 2 роки тому

    Worthy video

  • @nilou-bt
    @nilou-bt 2 роки тому

    Are sem_signal and sem_post the same thing? I’m a bit confused

  • @heysisteronion
    @heysisteronion 2 роки тому

    thank you^^

  • @somethingnew3654
    @somethingnew3654 2 роки тому

    In counting semephore..mutual exclusion is not followed..then how is it solving critical section problem?

  • @lowerbound4803
    @lowerbound4803 3 роки тому +3

    How could we ensure that S will never be altered from different sources simultaneously?

    • @raaj7256
      @raaj7256 3 роки тому +2

      It's because they're atomic. I guess they're internally atomized using test_and_set or compare_and_set, and my faculty told test_and_set and compare_and_set cannot be called at the same time, there for you can't really call them at the same time (Don't know if the "cannot be altered part" is correct though).

    • @lowerbound4803
      @lowerbound4803 3 роки тому

      ​@@raaj7256 Thank you for your answer!! I have to learn how atomic works.

  • @dodsa247
    @dodsa247 2 роки тому +1

    I think the definition of wait() is
    Wait(S){
    while s>= 0;
    s--;
    }
    in the video it is
    Wait(s){
    while s

  • @sriharika4573
    @sriharika4573 Рік тому

    What problem is there in critical section problem?

  • @Pokehunter-t2f
    @Pokehunter-t2f 2 роки тому

    Plz upload all lectures on youTube 🙏

  • @eylulmood4830
    @eylulmood4830 2 роки тому +1

    why test and lock is a hardware solution? we also used a variable Lock, whereas semaphore is software solution

  • @sudhakannan4746
    @sudhakannan4746 3 роки тому +2

    Thank you sir..

  • @Ragehunter
    @Ragehunter 3 місяці тому

    12:09 thank you))