0% encontró este documento útil (0 votos)
3 vistas20 páginas

Impacto y evolución del sistema Unix

Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
3 vistas20 páginas

Impacto y evolución del sistema Unix

Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd

Unix: un sistema operativo sienta nuevos

estándares
El desarrollo de Unix se cuenta sin lugar a dudas entre los grandes hitos de la historia de la informática. El sistema
operativo introdujo conceptos fundamentales de la tecnología de la información como la estructura jerárquica de los
sistemas de archivos, pero también sirvió como punto de partida para el desarrollo de otros sistemas, como los
sistemas operativos propietarios de Apple macOs y iOS o el proyecto open source Linux, que a su vez ha dado pie al
desarrollo de otros sistemas como Ubuntu, Debian o Android, el sistema operativo para dispositivos móviles. ¿Cómo
se convirtió Unix en una de las aplicaciones más influyentes de la administración informática y por qué el equipo que
lo desarrolló tuvo que plasmar sus primeras ideas en notas y pizarras?
Unix obtiene su propio lenguaje de programación

Tras escribir Unix y otros programas elementales con el lenguaje ensamblador, el equipo de los
Laboratorios Bell se dispuso a sustituir este lenguaje por una variante menos compleja. Sin embargo, la
idea de desarrollar un compilador para el lenguaje IBM vigente se descartó al poco tiempo y, en lugar de
ello, se comenzó a trabajar en un lenguaje nuevo muy orientado a PL/I, el lenguaje de Multics, y a BCPL
(Basic Combined Programming Language) desarrollado en el MIT. Esto lleva a Ritchie y a su equipo a
reescribir algunas de las herramientas de sistema en este lenguaje imperativo hasta que en 1970 obtienen
un nuevo PDP-11 que les obliga a realizar otro giro de perspectiva: la nueva arquitectura de sistema no
estaba, como la del PDP-7 y el lenguaje de programación B, orientada a palabras, sino a bytes.
Unix obtiene su propio lenguaje de programación
Durante los dos años siguientes, los Laboratorios Bell desarrollaron el lenguaje C, que se convertiría en un
memorable sucesor cuya sintaxis, entre otras cualidades, se haya presente en diversos lenguajes de
programación modernos como la extensión C++, Java, JavaScript, PHP o Perl. Cuando en 1973 el lenguaje
alcanzó la madurez suficiente, los desarrolladores comenzaron a escribir el núcleo completo de Unix en C,
publicando el resultado a mediados de 1970. Como en aquel momento AT&T no podía comercializar software en
su calidad de monopolista del sector de las telecomunicaciones bajo control estatal, la empresa puso Unix
(entretanto en su versión 6 y funcionando como sistema multiusuario que permitía varios procesos en paralelo) a
disposición de las universidades interesadas de forma gratuita junto a un compilador en C que permitía usar el
sistema en casi todas las plataformas.
Poco exigente y open source: Unix conquista a los
programadores

Con la concesión del software Unix a instituciones educativas comienza la marcha triunfal del nuevo sistema
operativo, aunque al principio como un juguete para el gremio informático. Los procesos de trabajo cotidianos que se
ejecutaban en los ordenadores mainframes de IBM y en máquinas PDP seguían basándose en los sistemas nativos
RSX-11, RT-11 o IST, pero para los desarrolladores el valor del código fuente del kernel y de las diversas
aplicaciones no residía solamente en su efecto didáctico. Las escasas exigencias de hardware y la comodidad de
Unix invitaban a experimentar y a seguir desarrollando, siendo en la Universidad de California en Berkeley, donde
Thompson había estudiado, el lugar en el que esto tuvo más resonancia. El hecho de que Thompson obtuviera una
cátedra como profesor invitado en el recién creado departamento de informática en 1976 también desempeñó un
papel decisivo.
¿Qué es Unix?

Muchos de los aspectos que caracterizan a Unix fueron en su momento completas innovaciones que no
solo tendrían un gran impacto en el desarrollo de sistemas y distribuciones similares a Unix, sino que
fueron incluso adoptados por sus competidores Apple y Microsoft en sus respectivos sistemas operativos.
Fueron especialmente las siguientes características con las que Ritchie, Thompson y su equipo
convirtieron a Unix en el precursor de los sistemas operativos modernos:
QUE OFRECE:

 SISTEMA DE ARCHIVOS JERÁRQUICO Y UNIVERSAL


 MULTITAREA
 SISTEMA MULTIUSUARIO
 CAPACIDAD DE RED
 MULTIPLATAFORMA
 LAS HERRAMIENTAS Y LA SHELL DE UNIX
Sistema de archivos jerárquico y universal

Un componente elemental de Unix fue desde el principio el sistema de ficheros organizado


jerárquicamente que permite al usuario ordenar los archivos en carpetas, subordinando tantos
subdirectorios como sean necesarios al directorio raíz, definido por la barra “/”. Siguiendo el
principio fundamental “Everything is a file” (“todo es un archivo”), Unix también representa a las
unidades de disco, los discos duros, las terminales o los equipos externos como archivos de
dispositivo en el sistema de archivos. Algunos derivados, como Linux, definen incluso a los
procesos y a sus propiedades como archivos en el sistema virtual de ficheros procfs.
Multitarea

En el éxito de Unix también tuvo un impacto decisivo la posibilidad de ejecutar varios procesos o programas al mismo
tiempo sin cortarse el paso mutuamente. Con este fin, el sistema operativo se apoya desde sus inicios en el método
de la multitarea apropiativa (preemptive multitasking), según el cual un componente denominado planificador
(scheduler), anidado en el núcleo del sistema operativo, se encarga de administrar los procesos en base a un sistema
de prioridades. Fue mucho más tarde, a lo largo de 1990, cuando Apple y Microsoft se decidieron a realizar soluciones
de gestión de procesos de este tipo.
Sistema multiusuario

Ya con Multics el principal objetivo de los desarrolladores era crear un sistema que permitiera trabajar a varios
usuarios al mismo tiempo. Este es el motivo de asignar a cada programa y a cada proceso un propietario.
Incluso cuando Unix estuvo limitado a dos usuarios al principio, esta cualidad formaba parte desde del libro de
ruta del software desde el principio. La ventaja de un sistema multiusuario de este tipo no solamente residía en
la posibilidad de acceder a un mismo procesador en el mismo momento, sino también en la gestión de permisos
ligado a ello, porque ahora los administradores podían definir qué permisos de acceso tenía cada usuario y a
qué recursos podía acceder. Para ello, era crucial antes que nada que el hardware del equipo lo permitiera.
Capacidad de red

Con 4.2BSD, el sistema Unix de la Berkeley se convierte en 1983 en el primer sistema operativo que
integra la pila de protocolos de Internet, la cual sienta las bases de Internet y de una configuración
sencilla de la red y ofrece la posibilidad de participar como cliente o servidor. A finales de la década de
los 80, con la mencionada cuarta versión de System V, aterriza en el mercado una variante del
sistema de AT&T comercial en el que se añade al kernel la legendaria familia de protocolos. En
cambio, no sería hasta 1993 (versión 3.11 y su correspondiente extensión) cuando Windows
soportaría TCP/IP.
Multiplataforma

Mientras que en la época del nacimiento de Unix se diseñaba a los sistemas operativos y a sus aplicaciones
en función de un tipo exacto de procesador, el equipo de los Laboratorios Bell persiguió desde el principio la
visión de un sistema portable. Aunque se utilizaba un lenguaje ensamblador, tan pronto como se estableció
la estructura fundamental del software de sistema, el proyecto inició un lenguaje de programación propio y
más elevado del cual nacería el histórico lenguaje C. Aunque los componentes escritos en C, a pesar del
compilador adjunto, estaban todavía fuertemente ligados a la arquitectura de las máquinas PDP que Ritchie
y los demás utilizaron como base para sus trabajos, con la posterior y muy modificada versión V7 de Unix
de 1979 el sistema operativo se mereció con razón su reputación como sistema portable.
Las herramientas y la shell de Unix

Los sistemas Unix reúnen un gran número de instrumentos y comandos, cada uno de los cuales está
concebido generalmente para unas pocas tareas especiales. Linux, por ejemplo, recurre a las
herramientas de GNU. Para la solución general de problemas se aplica el principio de buscar respuestas
en la combinación de herramientas estándar en lugar de desarrollar programaciones nuevas y específicas.
La herramienta más importante en este sentido ha sido siempre la shell (sh), un intérprete de comandos
orientado a texto que ofrece numerosas opciones de programación. Esta clásica interfaz de usuario puede
usarse también sin interfaz gráfica, si bien una interfaz de este tipo, que más adelante encontraría también
su lugar en el entorno Unix con Linux, incrementa obviamente la comodidad.
Para los usuarios experimentados, el intérprete de
comandos ofrece algunas ventajas fundamentales:

 El autocompletado inteligente simplifica su utilización


 Función “copia y pega”
 Se puede usar de forma interactiva (acceso directo) o no interactiva (ejecución
de scripts)
 Elevada flexibilidad, dado que las aplicaciones (herramientas, comandos) se
pueden combinar entre sí con casi total libertad
 Interfaz de usuario estandarizada y estable, lo que no siempre está
garantizado en una GUI
 Las fases del trabajo en scripts se protocolizan automáticamente
 La implementación de aplicaciones es fácil y rápida
Unix: pieza clave en la historia de los sistemas
operativos
El ascenso de Microsoft y Apple, estrechamente conectado con sus respectivos impulsores Bill Gates y Steve
Jobs, no tiene equivalente, pero la piedra angular del enorme éxito de ambas multinacionales la puso entre
1969 y 1974 el trabajo pionero de Dennis Ritchie, Ken Thompson y todo el equipo de Unix. Y es que del
sistema operativo no solo nacerían diversos derivados propios sino que, con sus conceptos como el sistema
jerárquico de archivos, el intérprete de comandos o su alta portabilidad, también influirían en otros sistemas
operativos. Con el fin de lograr esta última cualidad, se desarrolló sobre la marcha el lenguaje de
programación C hasta convertirlo en el lenguaje más influyente de la historia de la informática.
Para hacerse consciente de las posibilidades de este
lenguaje y la funcionalidad general de los sistemas
operativos no hay mejor objeto de estudio que un
sistema Unix
Estudiar las características entre el versus.

Common questions

Con tecnología de IA

Unix introdujo varios conceptos que se convirtieron en estándares en los sistemas operativos modernos. Estas incluyen un sistema de archivos jerárquico que permite organizar archivos en carpetas y subdirectorios, multitarea que permite ejecutar varios procesos simultáneamente mediante un planificador, y un sistema multiusuario que asigna propietarios a procesos y programas, además de gestionar permisos de acceso . También destacó por su portabilidad a través del lenguaje C, lo que permitió su implementación en diferentes plataformas hardware , y su capacidad de red al integrar la pila de protocolos de Internet . Estas características influyeron en los sistemas operativos de competidores como Apple y Microsoft .

Unix fue ofrecido gratuitamente a las universidades debido a que AT&T, en su calidad de monopolista en el sector de las telecomunicaciones, tenía restricciones para comercializar software. Al ser liberado bajo estas condiciones, el sistema se convirtió en un recurso educativo valioso, fomentando su difusión y adopción en entornos académicos. Esto resultó en una base amplia de desarrolladores y usuarios familiarizados con Unix, creando un efecto multiplicador que facilitó su expansión a otras áreas más allá del ámbito universitario . La comunidad académica contribuyó a su mejora y adaptación, haciendo de Unix un estándar de facto en el desarrollo de sistemas operativos modernos .

Las herramientas y la shell de Unix son fundamentales debido a su diseño modular y flexible. Cada herramienta fue creada para realizar funciones específicas, promoviendo el uso de combinaciones de estas herramientas mediante la shell para resolver problemas complejos. La shell, un intérprete de comandos, proporciona una interfaz estandarizada y estable, permitiendo una interacción eficiente y amigable sin necesidad de una GUI. Proporciona opciones de programación, como scripts automatizados, y funciones como autocompletado y "copia y pega", lo que optimiza la eficiencia y la curva de aprendizaje para los usuarios experimentados . Esta modularidad y flexibilidad fueron innovadores en la época y continúan siendo influyentes en sistemas posteriores como Linux .

El aspecto más relevante de Unix que facilitó su adopción en la industria del software comercial fue su alto grado de portabilidad y la robustez de su núcleo. Esta capacidad de ser portado y adaptado a diversas plataformas hardware, gracias al lenguaje C y a una arquitectura que promovía la abstracción de hardware específico, permitió su implementación en una amplia gama de dispositivos, lo que no era común en los sistemas de su tiempo . Además, su diseño modular y su enfoque en solucionar problemas mediante combinaciones de herramientas estándar lo hicieron atractivo para aplicaciones comerciales donde la flexibilidad y la adaptabilidad son altamente valoradas .

La arquitectura orientada a bytes del PDP-11 influyó significativamente en el desarrollo del lenguaje C, ya que forzó a Ritchie y su equipo a adaptar sus herramientas de sistema para soportar esta nueva arquitectura. El cambio desde una orientación a palabras en el PDP-7 y el lenguaje de programación B a una arquitectura basada en bytes impulsó la creación de C, un lenguaje que pudiera manejar estas características más flexibles y pudiera ser utilizado para reescribir el núcleo de Unix en un formato más portable y compatible con la nueva arquitectura .

Unix implementó multitarea mediante una técnica avanzada conocida como preemptive multitasking, donde un planificador controla la ejecución de varios procesos de forma concurrente basándose en un sistema de prioridades. Esto permitió una mayor eficiencia y control del uso del CPU desde el inicio . Contrariamente, Apple y Microsoft tardaron en adoptar soluciones similares. Apple no implementó una multitarea apropiativa eficaz hasta más avanzado el sistema operativo, con macOS transitionando hacia dar soporte completo a este modelo. Microsoft logró una similitud funcional con Windows NT, que surgió a partir de experimentos con sistemas operativos de tipo Unix. La respuesta tardía de ambos gigantes refleja la complejidad y el impacto temprano que tuvo la solución de Unix en la evolución de la gestión de procesos .

El sistema de archivos jerárquico de Unix, que permite organizar archivos en carpetas y subdirectorios bajo un directorio raíz, ofrece ventajas significativas. Simplifica la organización y gestión de archivos, facilita el acceso estructurado a los recursos del sistema y permite representar incluso componentes de hardware como archivos de dispositivo, cumpliendo el principio "todo es un archivo" . Sin embargo, esta abstracción puede complicar la gestión para usuarios menos experimentados y no es intuitiva para todos los flujos de trabajo. La sobrecarga en el mantenimiento jerárquico también puede ser una desventaja en sistemas con grandes volúmenes de datos .

El sistema multiusuario de Unix revolucionó la gestión de permisos y acceso, permitiendo que varios usuarios accedieran simultáneamente a un procesador, cada uno con permisos específicos controlados por administradores. Esto introdujo un nivel de seguridad y control sin precedentes, ya que los administradores podían definir exactamente qué acciones podía realizar cada usuario sobre archivos y recursos del sistema. Esta característica también fue crucial en la gestión de recursos compartidos y en la administración de derechos de acceso, moldeando la manera en que los sistemas operativos modernos manejan la seguridad y la privacidad de los usuarios . Sin embargo, esto también requirió hardware capaz de soportar dicho sistema multiusuario .

La Universidad de California en Berkeley jugó un papel crucial en la evolución y distribución de Unix. Sirvió como un centro de innovación debido a la presencia de Ken Thompson como profesor invitado. La interacción de estudiantes y académicos con Unix llevó al desarrollo de la Berkeley Software Distribution (BSD), una variante significativa de Unix que incorporó mejoras como la integración de la pila de protocolos TCP/IP. Esto no solo contribuyó a la expansión de Unix en más entornos, sino que también ayudó a establecer estándares que afectaron profundamente al desarrollo de Internet . Berkeley se convirtió en un núcleo de investigación que impulsó Unix más allá del entorno académico hacia aplicaciones comerciales y tecnológicas más amplias .

El desarrollo del lenguaje de programación C fue crucial para la portabilidad de Unix. Originalmente, el sistema fue escrito en lenguaje ensamblador que estaba fuertemente ligado a la arquitectura específica de las máquinas PDP. La introducción de C, un lenguaje de programación basado en EATON y BCPL, permitió que gran parte del sistema operativo fuera independiente de la arquitectura del hardware. Esto facilitó su adopción en varias plataformas y su implementación en otros sistemas, cimentando su reputación como un sistema portable .

También podría gustarte