¿Por qué se decidió llamar al killcomando "matar"?
Quiero decir, sí, esta utilidad a menudo se usa para terminar procesos, pero en realidad se puede usar para enviar cualquier señal.
¿No es un poco confuso? Tal vez hay algunas razones históricas.
Todo lo que sé es man killque este comando apareció en la Versión 3 de AT&T UNIX.
terminology
history
unix
shabunc
fuente
fuente

cdsolía llamarsechdir, lo que definitivamente es una locura. ¿5 caracteres para una operación tan común? Conozco personas que aliaslsal;-)assassinatecada vez que lo usabanRespuestas:
Originalmente, el
killcomando solo podía matar un proceso, solo más tarde sekillmejoró para permitirle enviar cualquier señal.Desde la versión 7 de Unix (1979), el valor predeterminado ha sido señalar el proceso de una manera que se pueda atrapar y manejar con gracia o ignorar (enviando una señal SIGTERM ), pero también se puede usar para sacar la alfombra de debajo un proceso (a
kill -9envía una señal SIGKILL que no se puede capturar y, por lo tanto, no se puede ignorar).Antecedentes
La informática, y Unix en particular, está plagada de metáforas.
La metáfora principal de los procesos es la de un ser vivo que nace, vive y muere.
En Unix, todos los procesos excepto init tienen padres , y cualquier proceso que genera otros procesos tiene hijos . Los procesos pueden quedar huérfanos (si sus padres mueren) e incluso pueden convertirse en zombis , si se quedan después de su muerte.
Por lo tanto, el
killcomando encaja con esta metáfora.Arqueología de Unix
En la página del manual de la versión 4 de Unix (la versión donde
killse introdujo, junto conps) encontramos:Me gusta especialmente la sección final de esta página de manual:
Cuando llegó la quinta edición, el
killcomando ya se había sobrecargado para permitir que se enviara cualquier señal.Del Manual de Programadores de Unix, Quinta Edición (p70):
Sin embargo, el valor predeterminado era enviar una señal 9, ya que la señal 15 aún no existía (ver p150).
Con la versión 6, la
killpágina de manual ya no menciona la misma máquina de escribir error de .Fue solo con la versión 7 de Unix que se introdujo la señal 15 (consulte las páginas de manual de la señal (2) y kill (1) para v7) y se
killcambió a eso en lugar de usar la señal 9.fuente
Este es Unix.
killes capaz de no matar un proceso.mves capaz de cambiar el nombre y no solo mover archivos de un lugar a otro.touches capaz de crear un archivo y no solo cambiar su última hora de modificación.odsignifica volcado octal, pero puede realizar muchos más tipos de volcados.yeses capaz de dar salida no.Más exótico:
greplleva el nombre deledcomando que realiza la misma operación:g/re/pawklleva el nombre de sus autores: Aho, Weinberger y Kernighan.yaccsignifica otro compilador compilador. Tenga en cuenta quebisones el GNU yacc.fuente
La página de manual de kill de Unix versión 7 dice:
y
No habría ningún motivo para no llamar a ese comando kill, que sin duda es la mejor metáfora disponible.
fuente