Bir uygulama geliştiriyorum ve istek üzerine konsola bazı çalışma zamanı istatistikleri yazdırmak istiyorum. killve sinyaller hemen aklıma geldi.
Wiki'deki Unix sinyallerini okumak , SIGINFOgitmek için bir yol gibi görünüyor çünkü:
- Bu amaçlar için tasarlanmıştır
- Sinyal işleyici uygulanmazsa işlemi sonlandırmaz (aksine
SIGUSRx- buraya bakın )
Ancak, çıktısını inceleyerek, kill -lsunucumda bu sinyalin uygulanmadığı anlaşılıyor.
Sorularım:
SIGINFOSistemimde neden eksik? Tüm GNU Linux sistemlerinde mevcut değil mi?- Bu sinyali etkinleştirmenin kolay (yani çekirdek / glibc yeniden derlemesi yok) yolu var mı? Yoksa, zor yol ne olurdu?
- Hedef süreç tarafından ele alınmazsa herhangi bir yan etkiye neden olmayacak amaçlarım için hangi alternatif sinyali kullanabilirim ? ( Glibc'in el kitabında başka uygun bir sinyal bulamadığım için zaten yok sanıyorum )
Linux metainfo:
Linux whatever 3.18.2-2-ARCH #1 SMP PREEMPT Fri Jan 9 07:37:51 CET 2015 x86_64 GNU/Linux
Güncelleme: Hala bu sinyalin neden BSD'den başka sistemlerden şartlı olarak dışlandığına dair daha fazla bilgi arıyorum (aşağıdaki yorumlara bakın). Sinyal birçok amaç için oldukça yararlı görünüyor, bu yüzden bunun bir heves meselesi olduğuna inanmak zor - bu yüzden bu sinyalin Linux'ta mevcut olması için gerçek showtopper nedir?
dd. yürütme ^Tsırasında ddLinux makinesinde hiçbir şey yapmaz - soruyu buna göre güncelleyeceğim.
^Tgörünüyor mustty -a?