SORU
27 Mart 2009, Cuma


Unıx PID doğru kullanım dosyası için başvuru

Nerede bir bulabilirimsaygın bir referansUnix üzerinde PID dosyaları doğru kullanımı detay var mı?

Unıx işletim sistemlerinde, “” bir program (genellikle bir daemon) özel bir kilit dosyası kullanarak: PİD dosyası. kilitlemek için yaygın bir uygulamadır

Bu tahmin edilebilir bir yer, genellikle ‘/var/run/foo.bir dosyadır’. pid Programın PİD dosyası var olup olmadığını yeniden başlatıldığında kontrol etmek lazım, eğer dosya varsa, bir hata ile çıkmak. Danışma, işbirliği kilitleme mekanizması bir tür.

Dosyayı içeren tek bir metin satırı olmak sayısal işlem KİMLİĞİ (bu nedenle adı “PİD dosyası”) süreci şu anda tutan kilit; bu sağlar kolay bir şekilde otomatize sinyal gönderdi işlemi tutar kilidi.

Ben iyi bir referans olması bekleniyor ya da “pratik” PID dosyalarını işlemeye yönelik davranışlar. en iyi bulabilirsiniz. Çeşitli nüansları vardır: aslında dosyayı kilitlemek için (nasıl rahatsız etmiyor mu? çekirdek kullanımı? ne platformu hakkında uyumsuzluklar?), bayat kilitleri (onları silmek sessizce mi hallediyorsun kontrol etmek için mi?), tam ve kilidi serbest bırakmak için, ve benzeri.

Nerede bir bulabilirimen yetkili saygın bir referans(W. Richard Stevens seviyesi) ideal bu küçük konu?

CEVAP
27 Mart 2009, Cuma


Öncelikle, tüm modern Unix /var/run yeniden doğmuş genelinde kalıcı değil.

PID bu dosyayı işlemek için genel yöntem, başlatma sırasında oluşturmak ve herhangi bir çıkış, normal veya sinyal işleyicisi ya da silebilirsiniz.

/Dosyayı kontrol atomik oluşturmak için iki standart yolu vardır. Eğer dosya zaten varsa, çağrı başarısız olur. bu gün O_EXCL bayrağı açmak için ana bir: Eski yol (O_EXCL olmayan sistemlerde zorunlu) rasgele bir adla oluşturmak ve bağlamak için. Bağlantı hedefi varsa başarısız olur.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Justin Davis

    Justin Davis

    14 Ocak 2008
  • megablueblaster

    megablueblas

    23 HAZİRAN 2006
  • Michael Lummio

    Michael Lumm

    25 Mayıs 2007