Semafor vs. Mutex
İçerik
- İçerik: Semafor ve Mutex Arasındaki Fark
- Karşılaştırma Tablosu
- Semafor
- Karşılıklı dışlama
- Sonuç
- Açıklayıcı Video
Semafor ve muteks arasındaki fark, semaforun bir sinyal mekanizması olduğu halde mutex kilitleme mekanizmasıdır.
İşletim sistemi bilgisayar bilimlerinde en önemli kavramdır, işletim sisteminde iki ana kavram semafor ve muteks'tir. Bir semafor ile bir muteks arasında çok fazla fark vardır. Ana farktan bahsedersek, o zaman semafor ve muteks arasındaki temel fark, semaforun bir sinyal mekanizması olduğu halde mutex kilitleme mekanizmasıdır.
Semafor ve muteks arasındaki fark süreçlerde gelir; semafor wait () ve signal () işlemini gerçekleştirir, bu fonksiyon kazanıp kazanmadıklarını veya kaynağı serbest bıraktıklarını bilmekle sorumludur. Öte yandan, eğer muteks hakkında konuşursak, muteks kilitleme mekanizmasıdır.
Semafor bir tamsayı değişkeni S'dir; semafor bir sinyal mekanizmasıdır. Bir işletim sisteminde, bir senkronizasyon aracına ihtiyaç vardır ve işletim sistemindeki bu araç bir semafor olarak bilinir. Semaforun bekleyen (), signal () işlevinin iki ana işlevi vardır. Semafor değeri bekleyen () ve signal () işlevleriyle değiştirilir. Bir işlem bir kaynak kullanıyorsa, semafor beklemede () ve işlem kaynağı kullandığında ve bu kaynak serbest olduğunda, semafor sinyal () öğesini verir. Wait () ve signal () işlevi, bunlar bir kerede yalnızca bir işlem kaynağı kullanabildiği için kullanılır. Bir kaynak iki sürece verilemez. İşletim sisteminde ikili semafor ve semafor sayan iki tür semafor vardır. Semafor sayımında başlangıç değeri mevcut kaynakların sayısıdır. Bir işlem bir kaynak kullanıyorsa, wait () ile karşı karşıya kalır ve bu kaynağı beklemesi gerekir. Semafor değerinin sayımı birer birer azalır. Bir işlem bir kaynak kullandığında, bu kaynağı serbest bırakır ve signal () öğesini serbest bırakır, böylece başka bir işlem için ücretsiz olması gerekir. Kaynak sayısı 0 olduğunda, gelecek işlem için kaynak bulunmadığı anlamına gelir. İkili semaforda, 0 ve 1 olan iki değer vardır. İşlem, ikili semaforun bir kaynak değerini kullanırken, 1 ila 0 arasında ve bir kaynak kaynağı kullandığında, ikili semaforun değeri 1 ila 0 arasındadır.
Mutex, karşılıklı dışlama nesnesi olarak da bilinir. Bir seferde yalnızca bir işlemin bir kaynağı kullanabileceğini biliyoruz. Kilitleme sistemi olmasının nedeni budur ve kilit sistemi muteks olarak bilinir. Mutex lock, bir işlem bir kaynak kullanırken bir işleme verilir. Mutex nesnesinin benzersiz bir adı ve kimliği vardır. Muteks kilidine ihtiyaç duyulduğunda bir programda mutex kilidinin adı ve kimliği ile çağrılır. Mutex kodunu görürsek, mutex kilidinin uygulanması ve kullanımı hakkında net bir anlayışa sahip olacağız.
İçerik: Semafor ve Mutex Arasındaki Fark
- Karşılaştırma Tablosu
- Semafor
- Karşılıklı dışlama
- Sonuç
- Açıklayıcı Video
Karşılaştırma Tablosu
temel | Semafor | Karşılıklı dışlama |
anlam | Semafor bir sinyal mekanizmasıdır | Mutex bir kilitleme mekanizmasıdır. |
Değer, kıymet | Semafor bir tamsayıdır. | Bir muteks bir nesnedir. |
Operasyon | Semafor işlemleri wait () ve signal (). | Mutex'in işlemleri kilitlendi ve kilidi açıldı |
Türleri | İki semafor türü semafor ve ikili semafor saymaktadır. | Bir mutex kilidi türü yoktur. |
Semafor
Semafor bir tamsayı değişkeni S'dir; semafor bir sinyal mekanizmasıdır. Bir işletim sisteminde, bir senkronizasyon aracına ihtiyaç vardır ve işletim sistemindeki bu araç bir semafor olarak bilinir. Semaforun bekleyen (), signal () işlevinin iki ana işlevi vardır. Semafor değeri bekleyen () ve signal () işlevleriyle değiştirilir. Bir işlem bir kaynak kullanıyorsa, semafor beklemede () ve işlem kaynağı kullandığında ve bu kaynak serbest olduğunda, semafor sinyal () öğesini verir. Bir wait () ve signal () işlevi olan bu işlevler, bunlar bir kerede yalnızca bir işlem kaynağı kullanabildiği için kullanılır.
Bir kaynak iki sürece verilemez. İşletim sisteminde ikili semafor ve semafor sayan iki tür semafor vardır. Semafor sayımında başlangıç değeri mevcut kaynakların sayısıdır. Bir işlem bir kaynak kullanıyorsa, wait () ile karşı karşıya kalır ve bu kaynağı beklemesi gerekir. Semafor değerinin sayımı birer birer azalır. Bir işlem bir kaynak kullandığında, bu kaynağı serbest bırakır ve signal () öğesini serbest bırakır, böylece başka bir işlem için ücretsiz olması gerekir. Kaynak sayısı 0 olduğunda, gelecek işlem için kaynak bulunmadığı anlamına gelir. İkili semaforda, 0 ve 1 olan iki değer vardır. İşlem, ikili semaforun bir kaynak değerini kullanırken, 1 ila 0 arasında ve bir kaynak kaynağı kullandığında, ikili semaforun değeri 1 ila 0 arasındadır.
Karşılıklı dışlama
Mutex, karşılıklı dışlama nesnesi olarak da bilinir. Bir seferde yalnızca bir işlemin bir kaynağı kullanabileceğini biliyoruz. Kilitleme sistemi olmasının nedeni budur ve kilit sistemi muteks olarak bilinir. Mutex lock, bir işlem bir kaynak kullanırken bir işleme verilir. Mutex nesnesinin benzersiz bir adı ve kimliği vardır. Muteks kilidine ihtiyaç duyulduğunda bir programda mutex kilidinin adı ve kimliği ile çağrılır. Mutex kodunu görürsek, mutex kilidinin uygulanması ve kullanımı hakkında net bir anlayışa sahip olacağız.
Anahtar Farkı
- Semafor bir sinyalleşme mekanizmasıdır, Mutex ise kilitlemedir.
- Semafor bir tamsayıdır, Mutex ise bir nesnedir.
- Semafor işlemleri beklemek () ve sinyal () iken mutex işlemleri kilitlenir ve kilidi açılır.
- İki semafor türü semafor ve ikili semafor saymakla birlikte, hiçbir muteks türü yoktur.
Sonuç
Yukarıdaki bu makalede, semafor ile muteks arasındaki açık farkları uygun bir şekilde uyguladıklarını görüyoruz.