domingo, 24 de mayo de 2015

S.O. UNIX



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)

  1. 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.
  2. 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
  3. 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.
  4. 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.
 Fuentes:

https://hablemoslinux.wordpress.com/2012/01/28/que-es-un-shell-script/

 
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