El sistema operativo UNIX
UNIX comienza en 1969 como un proyecto de
investigación de Bell Laboratories, estando disponible la primera versión
comercial en 1977 y ganando rápidamente en popularidad y difusión.
Los objetivos que persiguieron los primeros
diseñadores de UNIX fueron conseguir un sistema operativo que permitiera un
desarrollo eficiente de programas, que fuera pequeño y eficiente en el uso de
la memoria y fácil de mantener.
Los sistemas operativos, hasta la aparición
de UNIX, eran pensados para funcionar únicamente en el sistema en que eran
desarrollados. Esto implicaba un gran esfuerzo en aprender un nuevo sistema
operativo cada vez que se usaban sistemas distintos. Aplicaciones que
funcionaban en un sistema no estaban disponibles en otros e incluso los propios
programas requerían modificaciones para transportarlos a otro sistema.
Una de las razones que han hecho que UNIX
haya alcanzado una gran popularidad es resolver estos problemas, pues permite
transportarlo fácilmente a diferentes sistemas. Esto se consiguió diseñando el
sistema operativo de forma que hiciera muy pocas suposiciones sobre la
arquitectura de la computadora y escribiendo la mayor parte del sistema
operativo en un lenguaje de alto nivel (C). Sólo una pequeña parte (el kernel)
está escrito en lenguaje ensamblador.
Partes del sistema operativo
Las partes más importantes en que puede
dividirse el sistema operativo UNIX son:
- Kernel
- Shell
- UNIX file system
Además, normalmente con el sistema
operativo se suministran otra serie de programas, utilidades para
comunicaciones, editores, lenguajes de programación, etc, que no forman parte
estrictamente del sistema operativo.
Kernel
Puede
considerarse como el núcleo del sistema operativo y es leído cada vez que se
inicializa el sistema. Realiza una serie de tareas básicas como son:
- Controlar la memoria de la máquina y asignar una parte a cada proceso
- Distribuir el trabajo realizado por la CPU de forma que sea lo más eficiente posible
- Organizar la transferencia de datos entre las distintas partes del sistema
- Aceptar las instrucciones de la shell
- Hacer cumplir los permisos especificados en el sistema de ficheros
Shell
La forma que el usuario tiene de acceder a
los servicios del kernel es mediante la shell. Se puede considerar como el
intérprete de comandos, que permite que los comandos y programas que tecleamos
sean ejecutados.
En UNIX hay varios tipos de shell que
ofrecen diferentes características:
- Bourne shell (sh)
- C shell (csh)
- TC shell (tcsh)
- Korn shell (ksh)
- Bourne Again SHell (bash)
- Bourne shell.- Es un programa informático cuya función consiste en interpretar órdenes. Incorpora características tales como control de procesos, redirección de entrada/salida, listado y lectura de ficheros, protección, comunicaciones y un lenguaje de órdenes para escribir programas por lotes o “scripts”. Fue el intérprete usado en las primeras versiones de Unix y se convirtió en un estándar de facto.
- C shell.- Es un lenguaje de programación, conocido también como csh. Se le considera más idóneo para programadores que Bourne Shell (sh), además de hacer reflejar que la informática se estaba haciendo más interactiva
- TC shell.- Es similar a la anterior pero ofrece más facilidades para editar la línea de comandos de forma interactiva. En lo que resta del curso supondremos que estamos trabajando con la TC o C shell.
- Korn shell y Bourne Again SHell.- Proporcionan las facilidades de interacción de TC shell pero el lenguaje de programación en shell es más parecido al original Bourne shell que a TC o C shell.
BANCO DE PREGUNTAS
Una vez leída la información anterior transcribe a tu folder y contesta el siguiente cuestionario.
1. ¿Cuáles fueron los objetivos de los desarrolladores
de UNIX?
2. Completa.- Los
sistemas operativos, hasta la aparición de UNIX, eran pensados para funcionar únicamente..................................................................................................
3. ¿Cuáles son las partes más importantes en que puede dividirse el sistema operativo
UNIX?
4.- ¿Qué es el Kernel y cuáles son las tareas básicas?
5. ¿Qué es la SHELL y qué permite?
6. Enumere y defina los diferentes tipos de Shell.
No hay comentarios:
Publicar un comentario