Un comentario sobre el sistema operativo UNIX
Comentario sobre el sistema operativo UNIX de John Lions (luego reeditado como Comentario de Lions sobre UNIX 6.ª edición ) es una publicación muy influyente de 1976 que contiene comentarios analíticos sobre el código fuente de la sexta edición del sistema operativo de computadora Unix "núcleo residente" (es decir, kernel), más una copia formateada e indexada por Lions, de dicho código fuente obtenido de los autores en AT&T Bell Labs. También se conoce comúnmente como el Libro de los Leones.
En sí mismo, un ejemplo del éxito inicial de UNIX como código portátil para una plataforma de publicación, el trabajo de Lions se compuso usando herramientas UNIX, en sistemas que ejecutan código portado en la Universidad, similar al que documentó, ver página vi.
Se consideraba comúnmente como el libro más copiado de informática. A pesar de su antigüedad, el libro de Lions todavía se considera un excelente comentario sobre código simple y de alta calidad.
El trabajo de los Leones fue reimpreso por última vez en 1996 por Peer-To-Peer Communications, y ha sido distribuido, recreado o reconstruido de diversas formas en varios medios por otras partes, p. ver página web de Greg Lehey.
Sinopsis
El nivel seis del código fuente del sistema operativo UNIX es el código fuente del kernel, ligeramente editado por Lions para separar mejor la funcionalidad: inicialización del sistema y gestión de procesos, interrupciones y llamadas al sistema, E/S básica, archivo sistemas y tuberías y dispositivos de caracteres. Todos los procedimientos y símbolos se enumeran alfabéticamente con una referencia cruzada.
El código tal como se presenta se ejecutará en un PDP-11/40 con unidad de disco RK-05, interfaz de impresora de línea LP-11, grabadora de cinta de papel PCL-11 e interfaz de terminal KL-11, o un emulador PDP-11 adecuado, como SIMH.
Un comentario sobre el sistema operativo UNIX comienza con notas sobre UNIX y otra documentación útil (las páginas del manual de UNIX, los manuales de hardware de DEC, etc.), una sección sobre la arquitectura del PDP-11 y un capítulo sobre cómo leer programas en C. El comentario de la fuente sigue, dividido en las mismas secciones que el código. El libro termina con ejercicios sugeridos para el estudiante.
Como explica Lions, este comentario complementa los comentarios en la fuente. Es posible comprender el código sin el comentario adicional, y se recomienda al lector que lo haga y solo lea las notas cuando sea necesario. El comentario también comenta cómo se podría mejorar el código.
Historia

El código fuente y el comentario se imprimieron en forma de libro en 1977, luego de compilarse por primera vez en mayo de 1976, como un conjunto de notas de clase para los cursos de informática de Lions (6.602B y 6.657G, mencionados en la introducción del libro) en la Universidad de Nueva Gales del Sur.
UNSW había obtenido el código fuente de UNIX en 1975, en respuesta a una consulta de 1974 a Dennis Ritchie en Bell. Bell Labs era una subsidiaria de AT&T, sujeta a restricciones debido a su naturaleza monopólica como proveedor nacional de infraestructura de telecomunicaciones, y no se le permitía realizar negocios en ningún otro campo, por lo que no tenía la libertad de beneficiarse de la venta de software, sin embargo, UNIX estaba siendo proporcionado bajo licencia por otra subsidiaria de AT&T, Western Electric al menos en 1977.
El grupo de usuarios de UNIX, el boletín informativo de USENIX, UNIX News, de marzo de 1977, anunció la disponibilidad del libro para los licenciatarios de UNIX. Tenga en cuenta que el propio aviso de restricción de circulación redactado enérgicamente en el boletín, solo podría haberse aplicado dentro del marco de las licencias existentes a los licenciatarios con acuerdos celebrados con las organizaciones mencionadas, no a los no licenciatarios, como una cuestión de contrato civil. el boletín no muestra evidencia de autoridad gubernamental del tipo que podría permitir la supresión general de la circulación, como la clasificación de alto secreto de seguridad nacional).
La dificultad para seguir el ritmo de la popularidad del libro hizo que en 1978 solo estuviera disponible en AT&T Bell Labs.
Durante muchos años, el libro Lions fue la única documentación del kernel de UNIX disponible fuera de Bell Labs. Aunque la licencia de la sexta edición permitía el uso del código fuente en el aula, la licencia de la séptima edición excluía específicamente dicho uso, por lo que, posteriormente, el libro, basado en la versión con licencia más liberal, se difundió ampliamente a través de reproducciones en fotocopiadoras, realizadas posiblemente bajo varias excusas, que incluyen (¡pero no se limitan a!) generosos términos de licencia educativa otorgados a la institución editorial por el propietario del código fuente, así como varias exenciones de derechos de autor que protegen la discusión del trabajo matemático, aunque a la sombra de la creciente presión política para erosionar tales derechos, como medio tecnológico para 'autocopiarse', e incluso autoeditarse, las obras se volvieron más baratas, más eficientes y más prolíficas. UNIX mismo, fue uno de ellos, habiendo sido una innovación exitosa financiada por Bell para facilitar la publicación de manuales técnicos internamente.
Cuando AT&T anunció la versión 7 de UNIX en USENIX en junio de 1979, la licencia académica/de investigación dejó de permitir automáticamente el uso en el aula.
Sin embargo, miles de estudiantes de informática de todo el mundo difunden fotocopias. Como no se les enseñaba en clase, a veces se reunían fuera de horario para discutir el libro. Muchos pioneros de UNIX y de código abierto tenían una fotocopia de múltiples generaciones atesorada.
Otros efectos posteriores al cambio de licencia incluyeron a Andrew S. Tanenbaum creando Minix. Como escribió Tanenbaum en Operating Systems (1987):
Cuando ATLT lanzó la versión 7, comenzó a darse cuenta de que UNIX era un producto comercial valioso, por lo que emitió la versión 7 con una licencia que prohibió que el código fuente fuera estudiado en cursos, para evitar poner en peligro su estatus como secreto comercial. Muchas universidades cumplieron simplemente bajando el estudio de UNIX, y enseñando sólo teoría.
Varias personas de UNIX, en particular Peter H. Salus, Dennis Ritchie y Berny Goodheart, presionaron a los diversos propietarios de Unix (AT&T, Novell, la Operación Santa Cruz) durante muchos años para que permitieran la publicación oficial del libro.. En 1996, la Operación Santa Cruz finalmente autorizó el lanzamiento del código fuente de la sexta edición de veinte años de antigüedad (junto con el código fuente de otras versiones de "Ancient UNIX"), y el código completo más el 1977 La versión del comentario fue publicada por Peer-To-Peer Communications (ISBN 1-57398-013-7). La reedición incluye comentarios de Michael Tilson (SCO), Peter Salus, Dennis Ritchie, Ken Thompson, Peter Collinson, Greg Rose, Mike O'Dell, Berny Goodheart y Peter Reintjes.
"No se espera que usted entienda esto"
El infame comentario del programa "No se espera que entiendas esto" aparece en la línea 2238 del código fuente (Comentario de Lions, p. 22) al final de un comentario que explica el mecanismo de intercambio de procesos. Hace referencia a la línea 325 del archivo slp.c. El código fuente dice:
/* * Si el nuevo proceso se detuvo porque era * swapped out, set the stack level to the last call * a savu(u_ssav). Esto significa que el regreso * que se ejecuta inmediatamente después de la llamada a aretu * realmente regresa de la última rutina que hizo * el savu. * * No se espera que entienda esto. */ si()rp-p_flag"SSWAP) {} rp-p_flag = ~SSWAP; aretu()u.U_Ssav); }
Una de las principales razones por las que este fragmento de código era difícil de entender era que dependía de una peculiaridad de la forma en que el compilador C para el PDP-11 guardaba los registros en las llamadas a procedimientos. Este código falló cuando se transfirió a otras máquinas y tuvo que ser rediseñado en la versión 7 de UNIX. Dennis Ritchie luego explicó el significado de este comentario:
"No se espera que entiendas esto" fue pensado como un comentario en el espíritu de "Esto no estará en el examen", en lugar de como un desafío impulsivo.
Contenido relacionado
Unidad de memoria RAM
Wikipedia: nota al pie 1
Regla del noventa y noventa