stringtranslate.com

El entorno de programación Unix

El entorno de programación Unix , publicado por primera vez en 1984 por Prentice Hall , es un libro escrito por Brian W. Kernighan y Rob Pike , ambos de Bell Labs y considerado un documento temprano e importante del sistema operativo Unix .

Filosofía Unix

El libro aborda la filosofía Unix de pequeñas herramientas cooperativas con entradas y salidas estandarizadas. Kernighan y Pike dan una breve descripción del diseño y la filosofía de Unix: [1]

Aunque el sistema UNIX introduce una serie de programas y técnicas innovadores, ningún programa o idea lo hace funcionar bien. En cambio, lo que lo hace efectivo es el enfoque de la programación, una filosofía de uso de la computadora. Aunque esa filosofía no se puede escribir en una sola frase, en el fondo está la idea de que el poder de un sistema proviene más de las relaciones entre programas que de los programas mismos. Muchos programas UNIX hacen cosas bastante triviales de forma aislada, pero, combinados con otros programas, se convierten en herramientas generales y útiles.

Los autores escriben además que su objetivo para este libro es "comunicar la filosofía de programación UNIX". [1]

Contenido y temas

El libro comienza con una introducción a Unix para principiantes. A continuación, se analizan los conceptos básicos del sistema de archivos y el shell . El lector es guiado a través de temas que van desde el uso de filtros hasta cómo usar C para programar aplicaciones Unix robustas y los conceptos básicos de grep , sed , make y AWK . El libro cierra con un tutorial sobre cómo crear un analizador de lenguaje de programación con yacc y cómo usar troff con ms y mm para formatear documentos, los preprocesadores tbl , eqn y pic , y cómo crear páginas de manual con el conjunto de macros man. Los apéndices cubren el editor ed y el lenguaje de programación mencionado anteriormente, denominado hoc , que significa "calculadora de alto orden".

Contexto histórico

Aunque Unix todavía existe décadas después de la publicación de este libro, el libro describe un Unix ya maduro: en 1984, Unix ya había estado en desarrollo durante 15 años (desde 1969), había sido publicado en una revista revisada por pares 10 años antes. ( SOSP , 1974, "The UNIX Timesharing System"), y se habían publicado al menos siete ediciones oficiales de sus manuales (ver Versión 7 Unix ). En 1984, ya existían varias variantes comerciales y académicas de UNIX (por ejemplo, Xenix , SunOS , BSD , UNIX System V , HP-UX ), y un año antes Dennis Ritchie y Ken Thompson ganaron el prestigioso Premio Turing por su trabajo en UNIX. El libro no se escribió cuando UNIX recién comenzaba, sino cuando ya era lo suficientemente popular como para ser digno de un libro publicado para las masas de nuevos usuarios que estaban llegando.

En retrospectiva, 1984 no sólo no fue una etapa temprana de la evolución de Unix, sino que en algunos aspectos fue el final de la evolución de Unix, al menos en los laboratorios Bell : las variantes importantes de UNIX ya se habían bifurcado anteriormente del Research Unix de AT&T : System V se publicó en En 1983, BSD se basó en la séptima edición de Unix de 1979 , y la mayoría de las variantes comerciales de Unix se basaron en System V, BSD o alguna combinación de ambos. La octava edición de Unix salió justo después de este libro, y el desarrollo posterior de UNIX en los Laboratorios Bell (la Novena y Décima Edición) nunca salió de los Laboratorios Bell, hasta que su esfuerzo evolucionó hasta convertirse en el Plan 9 de los Laboratorios Bell .

estilo de programación c

El libro fue escrito antes de que se redactara por primera vez ANSI C ; Los programas que contiene siguen el estilo antiguo de K&R . Sin embargo, el código fuente disponible en el sitio web del libro se ha actualizado para cumplir con ANSI C.

Recepción de la crítica

El editor técnico Ben Everard de Linux Voice elogió el libro por proporcionar documentación relevante a pesar de tener 30 años y por ser un buen libro para un aspirante a programador que no sabe mucho sobre Linux . [2]

Ediciones

Notas

  1. ^ ab Kernighan, Brian W.; Pike, Rob (1984). El entorno de programación UNIX . pag. viii.
  2. ^ "Linux Voice - Número 6" (PDF) . Linux Voice: el blog y podcast para un tipo muy diferente de revista Linux . Voz de Linux. Septiembre de 2014. pág. 52. ISSN  2054-3778.