İşlem grubu - Process group

İçinde POSIX uyumlu işletim sistemi, bir süreç grubu bir veya daha fazla koleksiyonu gösterir süreçler.[1]Diğer şeylerin yanı sıra, bir işlem grubu, bir işlem grubunun dağıtımını kontrol etmek için kullanılır. sinyal; bir sinyal bir proses grubuna yönlendirildiğinde, sinyal grubun bir üyesi olan her prosese iletilir.[2]

Benzer şekilde, bir oturum, toplantı, celse bir veya daha fazla işlem grubunun bir koleksiyonunu belirtir.[3]Bir süreç, başka bir oturuma ait olan bir süreç grubu yaratmayabilir; ayrıca, bir sürecin başka bir oturumun üyesi olan bir süreç grubuna katılmasına izin verilmez - yani, bir sürecin bir oturumdan diğerine geçmesine izin verilmez.

Bir işlem görüntüsünü yeni bir görüntüyle değiştirdiğinde (aşağıdakilerden birini çağırarak exec fonksiyonlar ), yeni görüntü, eski görüntü ile aynı süreç grubu (ve dolayısıyla oturum) üyeliğine tabidir.

Başvurular

Sinyallerin süreç gruplarına dağıtılması, iş kontrolü tarafından işe alınan kabuk programları.The TTY cihazı sürücü bir kavram içerir ön plan süreç grubutarafından üretilen sinyalleri gönderdiği klavye kesintileri özellikle SIGINT ("kesmek", Kontrol+C), SIGTSTP ("Terminal durdurma", Kontrol+Z), ve SIGQUIT ("Çık", Kontrol+Ayrıca, SIGTTIN ve SIGTTOU terminalden okuma veya terminalden yazma girişiminde bulunan ve değil ön planda işlem grubunda. Kabuk sırayla komutu bölümler boru hatları süreç grupları halinde oluşturduğunu ve hangi süreç grubunun kendi süreçlerinin ön plan süreç grubu olduğunu kontrol ettiğini kontrol terminali, böylece hangi işlemlerin (ve dolayısıyla hangi komut boru hatlarının) herhangi bir zamanda terminale ve terminalden G / Ç gerçekleştirebileceğini belirler.

Ne zaman kabuk çatals hem ana kabuk süreci hem de komut ardışık düzeni için yeni bir alt süreç çocuk süreç alt süreci hemen komut kanalı için süreç grubunun lideri haline getirin. Bu şekilde, gerek ebeveyn gerekse çocuk bu duruma güvenmeden, çocuğun süreç grubunun lideri olması sağlanır.

Burada bir metinsel kullanıcı arayüzü Unix benzeri bir sistemde kullanılıyorsa, oturumlar uygulamak için kullanılır oturum açma oturumlarıTek bir süreç, oturum lideri, bir kullanıcı terminal bağlantısını "kapattığında" tüm programların sonlandırıldığından emin olmak için kontrol terminali ile etkileşime girer. (Bir oturum liderinin olmadığı durumlarda, terminalin ön plan işlem grubundaki işlemlerin hatalara müdahale etmesi beklenir.)

Burada bir grafiksel kullanıcı arayüzü kullanılıyor, oturum kavramı büyük ölçüde kayboldu ve çekirdek ’In oturum kavramı büyük ölçüde göz ardı edildi. Grafik kullanıcı arayüzleri, örneğin X görüntü yöneticisi kullanılırsa, oturum açma oturumlarını uygulamak için farklı bir mekanizma kullanın.

Detaylar

sistem çağrısı Setsid tek (yeni) bir süreç grubu içeren yeni bir oturum oluşturmak için kullanılır, hem oturum lideri hem de mevcut süreç süreç grubu lideri bu tek süreç grubunun.[4]Süreç grupları pozitif bir tamsayı ile tanımlanır, işlem grubu kimliği, hangisi işlem tanımlayıcı Süreç gruplarının lideri olan (veya önceydi) Süreç gruplarının her zaman bir liderle başlasa da, mutlaka liderleri olması gerekmez. Oturumlar, oturum liderinin süreç grubu kimliği ile tanımlanır. POSIX, süreç grubunun değiştirilmesini yasaklar Oturum liderinin kimliği.

Sistem çağrısı setpgid bir sürecin süreç grubu kimliğini ayarlamak, böylece süreci mevcut bir süreç grubuna katmak ya da sürecin yeni oluşturulan grubun süreç grubu lideri haline gelmesiyle sürecin oturumunda yeni bir süreç grubu oluşturmak için kullanılır.[5]POSIX, bu tanımlayıcıya sahip bir süreç grubunun hala mevcut olduğu (yani, bir süreç grubunun liderinin çıktığı, ancak gruptaki diğer süreçlerin hala mevcut olduğu) bir süreç kimliğinin yeniden kullanılmasını yasaklar. Böylece süreçlerin kazara olmayacağını garanti eder süreç grubu liderleri.

sistem çağrısı öldürmek sinyalleri ya bireysel süreçlere ya da süreç gruplarına yönlendirebilir.[2]

Ayrıca bakınız

Referanslar

  1. ^ IEEE ve Açık Grup (2018). "3. Tanımlar". Açık Grup Temel Özellikleri Sayı 7. § 296. Alındı 2020-08-30. İlgili işlemlerin sinyalizasyonuna izin veren bir süreçler koleksiyonu.
  2. ^ a b öldürmek - Sistem Arayüzleri Referansı, Tek UNIX Spesifikasyonu, Sayı 7 Açık Grup
  3. ^ IEEE ve Açık Grup (2018). "3. Tanımlar". Açık Grup Temel Özellikleri Sayı 7. § 343. Alındı 2020-08-30. Süreç gruplarının bir koleksiyonu […]. Her süreç grubu bir oturumun üyesidir.
  4. ^ Setsid - Sistem Arayüzleri Referansı, Tek UNIX Spesifikasyonu, Sayı 7 Açık Grup
  5. ^ setpgid - Sistem Arayüzleri Referansı, Tek UNIX Spesifikasyonu, Sayı 7 Açık Grup

daha fazla okuma