Apa yang dimaksud ESRCH?

12

Keluar dari: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/errno.h.html

Itu selalu cukup jelas mengapa kode errno dinamai dengan cara tertentu kecuali yang ini. Bagaimana SRCH terkait dengan Tidak ada proses seperti itu ?

PSkocik
sumber
Mungkin grepatau pgrepmengembalikannya karena kegagalan untuk mencari daftar proses.
kucing
IDE saya, Atom , mengembalikan ESRCH ketika mencari daftar paket jika tidak ada koneksi internet. Anekdotal murni, dan mungkin dengan sengaja daripada mungkin.
kucing

Jawaban:

11

POSIX killmendokumentasikan konotasi "pencarian":

[ESRCH]
Tidak ada proses atau grup proses yang dapat ditemukan sesuai dengan yang ditentukan oleh pid.

Masalah sebelumnya (2004) memberikan alasan lebih banyak informasi:

Beberapa implementasi menyediakan ekstensi semantik ke fungsi kill () ketika nilai absolut pid lebih besar dari beberapa nilai maksimum, atau khusus. Nilai negatif adalah bendera untuk dibunuh (). Karena sebagian besar implementasi mengembalikan [ESRCH] dalam kasus ini, perilaku ini tidak termasuk dalam volume ini IEEE Std 1003.1-2001, meskipun implementasi yang sesuai dapat memberikan ekstensi seperti itu.

Thomas Dickey
sumber
4

String ESRCH terlihat samar, tetapi setelah melihat kesalahan lain dan string mereka: (diambil dari http://pubs.opengroup.org/onlinepubs/9699919799/functions/kill.html )

  • [EINVAL] Nilai argumen sig adalah nomor sinyal yang tidak valid atau tidak didukung.
  • [EPERM] Proses ini tidak memiliki izin untuk mengirim sinyal ke proses penerimaan apa pun.

Tampaknya logis bahwa E berarti kesalahan, INVAL untuk tidak valid dan PERM untuk izin. Pada baris logis yang sama, SRCH adalah singkatan dari search.

Galat mencari grup pid / pid.

Loco
sumber
Selamat datang di U&L! Saya melihat bahwa Anda telah mereferensikan fungsi kill dan dua kesalahan lainnya , tetapi saya belum melihat bukti pendukung untuk Pertanyaan: Bagaimana "SRCH" berhubungan dengan "Tidak ada proses seperti itu"?
Jeff Schaller