UNIX. Implementación comercial

imagen¡Hola habitantes! Hemos enviado otra novedad " UNIX Time. Una historia y una memoria " a la imprenta . En el libro aprenderá cómo nació el sistema Unix, por qué es notable y por qué ocupa un lugar tan importante en el mundo de la informática.

He aquí un extracto de un capítulo del libro Realización comercial.



Implementación comercial



Se creía que AT&T había prohibido la distribución comercial de Unix porque, como monopolio del gobierno, competía con otros proveedores de sistemas operativos, utilizando los ingresos de los servicios de telecomunicaciones para subsidiar el

desarrollo de Unix. Lo máximo que AT&T podía hacer en esta situación era vender licencias Unix a clientes corporativos por $ 20,000 (mientras que las instituciones educativas tenían licencias en términos preferenciales), pero en cantidades limitadas y sin

ningún tipo de soporte. Esta política evitó sanciones regulatorias.



7.1. Separación



A pesar de las medidas regulatorias, en 1980 AT&T estaba bajo ataque como monopolio. En 1974, el Departamento de Justicia de EE. UU. Inició una demanda antimonopolio contra AT&T con el argumento de que la empresa obligaba a los suscriptores a usar solo teléfonos fabricados por Western Electric, que no se vendían, sino que se alquilaban, y el alquiler era una parte importante de los ingresos. El Departamento de Justicia le pidió a AT&T que escindiera la división Western Electric que fabricaba el equipo.



En cambio, AT&T propuso una escisión entre una sucursal principal que brinda servicios de larga distancia y siete compañías telefónicas regionales (Baby Bells), que brindarían servicios telefónicos locales en sus áreas geográficas. La división de Western Electric, AT&T, quería retenerlo acordando eliminar el requisito de que las compañías operativas usen solo sus equipos. Se quedó con Bell Labs para ella.



El acuerdo de conciliación con el Departamento de Justicia, por el cual AT&T abandonó las empresas operativas, se alcanzó finalmente a principios de 1982 y entró en vigor el 1 de enero de 1984.



La división fue un punto de inflexión dramático que finalmente llevó a la desaparición de AT&T. Los siguientes 20 años de errores de cálculo y malas decisiones convirtieron a Bell Labs en una apariencia patética de lo que solía ser, cuando tenía una misión clara y precisa y una financiación adecuada y estable.



En 1984, una empresa subsidiaria llamada Bellcore (Bell Communications Research) se separó de Bell Labs para proporcionar servicios de investigación para Baby Bells. Bellcore dejó a mucha gente del departamento de investigación, principalmente aquellos que se dedicaban a las comunicaciones. Entre ellos se encontraban algunos colegas de la Unidad 1127, en particular Mike Lesk y Stu Feldman. Pero en algún momento, las compañías telefónicas regionales decidieron que no necesitaban investigación, y Bellcore fue adquirida por SAIC y rebautizada como Telcordia. Terminó siendo propiedad de la empresa sueca de telecomunicaciones Ericsson.



Además, Bell Labs pasó a llamarse AT&T Bell Laboratories en 1984 porque el acuerdo de resolución no permitiría que AT&T usara el nombre Bell. Se nos animó encarecidamente a utilizar siempre solo el nombre completo.



7.2. USL y SVR4



Después de la división en la incapacidad y la falta de voluntad de AT&T para comercializar Unix, hubo intentos comerciales activos, que comenzaron a ser llevados a cabo por una parte de la empresa que estaba organizativamente lejos del departamento de investigación. Físicamente, también estaban bastante lejos de nosotros, ocupando un edificio en Summit, Nueva Jersey. Dado que estaba rodeada de carreteras muy transitadas, se la llamó informalmente Freeway Island. Esta organización se llamaba originalmente Unix Support Group (USG), pero finalmente se convirtió en Unix System Laboratories o USL. El primer USG fue creado en 1973 por Burke Tag en un intento de brindar soporte centralizado. Con el tiempo, estos grupos han ampliado sus actividades, incluidas las ventas y la publicidad.



Indudablemente, había un mercado para vender Unix. Incluso se podría decir que fue creado inadvertidamente por AT&T al entregar licencias a universidades. Después de todo, los estudiantes acostumbrados a trabajar en este sistema operativo querían continuar después de graduarse, ya que se habían establecido en empresas comerciales que podían permitirse comprar licencias por dinero. Desde 1984, la USL ha trabajado arduamente para hacer de Unix un producto comercial profesional. Esto culminó en System V Release 4, o SVR4. AT&T ha invertido importantes recursos para hacer de esta una implementación estándar y definir cuidadosamente la compatibilidad de los módulos de código y de objeto. Creo que lo importante fue la atención a los estándares y la compatibilidad.



Los detalles del desarrollo de SVR4 y las interacciones de AT&T con empleados y competidores durante los últimos diez años no son muy interesantes. Por lo tanto, no me detendré en ellos, especialmente porque en cierto sentido ya no son relevantes: el foco de atención se ha desplazado hacia Linux. El artículo de Wikipedia de System V describe la situación así:



Los analistas de la industria suelen caracterizar la versión comercial de Unix como atravesando un declive lento pero constante.


Por supuesto, esta es solo una versión comercial; Las variantes de código abierto como la familia BSD, de la que hablaremos en el próximo capítulo, viven y prosperan.



Además del sistema operativo, la línea de productos de AT&T también incluía varios programas auxiliares, incluidos compiladores para C, C ++, Fortran, Ada e incluso Pascal. Se basaron principalmente en el compilador portátil de C de Steve Johnson. Se ha dedicado mucho esfuerzo a la estandarización para garantizar la compatibilidad entre el código fuente y los formatos binarios en las bibliotecas.



Durante este período fui jefe del departamento de Björn Stroustrup, lo que significó un contacto frecuente con la USL sobre el desarrollo de C ++. En su mayor parte, resultaron ser mutuamente beneficiosos, pero también hubo casos en los que la diferencia de prioridades entre el departamento de investigación y la organización responsable de vender el producto se manifestó claramente. Por ejemplo, en 1988 tuve una acalorada discusión con un gerente de USL.



Administrador: todos los errores en el compilador de C ++ deben corregirse, pero su comportamiento debe permanecer sin cambios.



Yo: Es imposible. La corrección de un error por definición conduce a un cambio de comportamiento.



Gerente: Brian, no lo entiendes. Debe corregir el error, pero el comportamiento del compilador no puede cambiar.


Formalmente, tenía toda la razón, pero al mismo tiempo entendía perfectamente por qué el gerente me presionaba: los cambios demasiado grandes o demasiado rápidos son un problema grave para quienes desarrollan software utilizando nuevos lenguajes y herramientas.



USL abrió una subsidiaria en Japón, Unix Pacific, bajo el liderazgo de Larry Krum, quien trabajó en Bell Labs durante muchos años en el departamento de investigación. Como resultado, como parte de la cooperación técnica, visité Japón dos veces con dinero de la empresa. Durante mi viaje de intercambio con la compañía telefónica más grande de Japón, NTT, obtuve una comprensión clara de la jerarquía no oficial. Se suponía que el CEO jugaría golf con su colega de NTT. El director del Centro jugó al tenis con su colega. A los gerentes de departamento humildes como yo se les ofreció un viaje de compras a Tokio, que rechacé con gratitud.



No todos los intentos de AT&T de comercializar Unix han tenido éxito, pero la estandarización de Unix fue un gran regalo para toda la comunidad. A pesar de la controversia ocasional entre I + D y la USL, debo decir que la USL ha tenido un gran grupo de colegas talentosos que han hecho contribuciones significativas a Unix y sus sistemas de software relacionados.



7.3. UNIX



En algún momento de los primeros días de Unix, sus fideicomisarios en Bell Labs decidieron que el nombre era una marca comercial valiosa que debería protegerse, lo que, desde un punto de vista comercial, fue sin duda la decisión correcta. Intentaron evitar que este nombre se convierta en un término genérico que cualquiera pueda usar. Esto ya ha sucedido con palabras como aspirina (en Estados Unidos, aunque no en todas partes), escalera mecánica, cremallera y (más recientemente) la App Store.



Como resultado, existía un requisito para los empleados de Bell Labs: usar el nombre correctamente. En particular, no se puede utilizar como un sustantivo independiente ("Unix es un sistema operativo"). Debe identificarse como una marca comercial y aparecer como una definición en mayúsculas. Es decir, sólo se permitió la opción "Sistema operativo UNIX", lo que dio lugar a frases ridículas como "El sistema operativo UNIX es un sistema operativo". En 1984, Rob Pike y yo tuvimos que defender el título de nuestro libro The Unix Programming Environment (en la traducción rusa "UNIX. Programming Environment"), porque estaban tratando de convertirlo en The UNIX Operating System Programming Environment. Al final, llegamos a un compromiso: no habrá información adicional y una marca comercial en la portada,pero un asterisco casi invisible y una nota aparecerán en la portada.



La redacción engorrosa era un problema, especialmente para aquellos que tomaban en serio su escritura, por lo que se buscaron varias soluciones. Por ejemplo, al paquete de macros estándar para Troff ms, Mike Lesk agregó un comando de formato que agregó "UNIX" en mayúsculas y automáticamente creó una nota al pie en la primera página. Por lo general, la nota al pie se ve así:



† UNIX es una marca comercial de Bell Laboratories (UNIX es una marca comercial de Bell Labs).


Pero valió la pena usar el comando con un parámetro adicional indocumentado, el texto cambió:



† UNIX es una nota a pie de página de Bell Laboratories.


No creo que cuando usamos esta broma sorpresa de vez en cuando, alguien le prestó atención al menos una vez, pero este código todavía está presente en el paquete de macros estándar.



Al mismo tiempo, la palabra Unix se usó para bienes y servicios que no tenían nada que ver con los sistemas operativos, por ejemplo, para los bolígrafos que se muestran en la Fig. 7.1, para librerías de la fig. 7.2 y un extintor de incendios de la fig. 7.3. Todo esto, aparentemente, se produjo fuera de los Estados Unidos y, por lo tanto, no estaba sujeto a la ley de marcas estadounidense. Las librerías generalmente se remontan a 1941, es decir, aparecieron incluso antes del nacimiento de Ken y Dennis. Otro ejemplo fascinante: los pañales para bebés Unix de Drypers, que usaban Unix como abreviatura de unisex (para niños de ambos sexos).

imagen


imagen


imagen


7.4. Relaciones públicas



Bell Labs tuvo un flujo constante de visitantes, y desde mediados de la década de 1970 hasta principios de la de 1980, comenzaron las presentaciones turísticas. Un pequeño grupo se sentó en una sala de conferencias, mientras los miembros del Centro explicaban brevemente qué es Unix y por qué es importante para AT&T y el mundo. La mayoría de las presentaciones las hicimos Mike Lesk y yo. Teníamos el mismo defecto: nos quejábamos constantemente, aunque en realidad nos gustaba.



Entre los visitantes había tanto simples mortales como "destacados". Estos últimos incluían a aquellos importantes para AT&T que necesitaban estar impresionados y, a veces, solo los propietarios de grandes nombres. Por ejemplo, en 1980 le di una presentación a Walter Annenberg, fundador de la revista TV Guide. Fue con esto que ganó dinero, lo que puede haberlo ayudado a convertirse en embajador en el Reino Unido, aunque para cuando le mostré las maravillas de Unix, su carrera diplomática ya había terminado. El presidente de Bell Labs, Bill Baker, lo acompañó como un invitado muy importante. A menudo he incluido una demostración de pipelines en mi repertorio, mostrando cómo se pueden resolver rápidamente problemas urgentes conectando programas entre sí. Usé un script de shell para buscar errores ortográficos en el documento porque era un buen ejemplo de un proceso largo,ayudando a comprender cómo los programas existentes se pueden combinar de nuevas formas.



El script de revisión ortográfica fue creado por Steve Johnson. La idea principal era comparar las palabras del documento con las palabras del diccionario. Cualquier palabra que falte en el diccionario podría ser un error ortográfico. El guión se veía así:



imagen
Todos estos programas ya existían. El más inusual de estos, comm, le permitió buscar líneas que estaban presentes en dos archivos de entrada ordenados o líneas que estaban presentes en una u otra entrada, pero no en ambas. El diccionario de la carpeta / usr / dict / web2 contenía palabras de la segunda edición del diccionario Webster, una por línea.



Una vez tuve que darle una presentación a William Colby, quien en ese momento era el director de la Agencia Central de Inteligencia (CIA), es decir, sin duda, una persona importante. Él también estuvo acompañado por Bill Baker, quien, como jefe de la Junta Asesora de Inteligencia Extranjera del presidente, tenía importantes poderes.



Quería mostrar cómo Unix simplifica ciertos tipos de programación, pero el guión del hechizo era lo suficientemente lento y elegí no alargar la presentación. Así que ejecuté este script con anticipación, escribí el resultado en un archivo y escribí un nuevo script que simplemente durmió durante dos segundos y luego emití los resultados el día anterior:



sleep 2
cat previously.computed.output


Este desarrollo técnico de demostración resultó ser excelente. Si el Sr. Colby entendió algo, probablemente pensó que el corrector ortográfico se hizo muy rápido. Pero esta es una lección para todos los asistentes a la presentación. ¡No creas todo lo que ves allí!



Public Affairs también ha producido películas promocionales sobre las maravillas de Bell Labs, incluido Unix. Gracias a YouTube, puedo mirar a viejos amigos (y a mí mismo) en un momento en que todos éramos más jóvenes y nuestro cabello era más grueso.



Incluso hubo una pequeña serie de anuncios impresos de Unix. Por lo que recuerdo, los cubos para niños en el cartel publicitario con fig. 7.4 fue idea mía. El fondo poco visible es un documento que proporcioné y que se creó en Troff.



imagen




Puede familiarizarse con el libro con más detalle y reservarlo a un precio especial en el sitio web del editor.



All Articles