El UNIX es un sistema operativo multiusuario y multitarea que trabaja en el modo de tiempo compartido (time-sharing). Esto significa que el sistema operativo atiende y ejecuta varios programas simultáneamente de los distintos usuarios que estén trabajando en él, pero realmente solo atiende a uno solo por vez durante una pequeña fracción de tiempo (del orden de los milisegundos). El sistema operativo ejecuta un trozo de un programa, luego lo interrumpe, toma otro programa, continua su ejecución, y así sucesivamente. De esta manera le da a cada usuario la impresión de que él solo esta utilizando la máquina.
El UNIX fue originalmente desarrollado por los laboratorios Bell de la AT&T.
INTRODUCCION.
1.1 Antecedentes históricos.
El S.O. Unix fué creado a finales de la década de los 60 sobre la base de varios trabajos realizados conjuntamente por el MIT y Laboratorios BELL . Dichos trabajos (proyecto MULTICS) iban encaminados a la creació ;n de un macrosistema de computación que diese servicio a miles de usuarios . Si bien el proyecto fracasó , posiblemente por intentar abarcar demasiado contando con unos elementos hardware limitados en ésa época , influyó ; decisivamente sobre la evolución de los sistemas informáticos posteriores .
Un antiguo componente de dicho proyecto (Ken Thompson) desarrolló por su cuenta un sistema operativo monousuario con la característica principal de un sistema de archivos jerárquico .
El sistema encontró muchos entusiastas y se hizo portable al reescribirse casi íntegramente en lenguaje "C" , y se suministró en código fuente a las universidades como objeto de formació ;n. Así, la universidad de California en Berkeley retocó dicho sistema ( fundamentalmente , comunicaciones y diversas utilidades como el editor "vi" ) , y liberó lo que luego sería el BSD , uno de los dos "dialec tos" principales del UNIX.
Actualmente , existen dos corrientes las cuales cada vez poseen más elementos comunes : la BSD 4.2 y ls System V R 4.
1.2 Generalidades.
El S.O. Unix se encarga de controlar y asignar los recursos físicos del ordenador ( hardware ) y de planificar tareas . Podemos establecer tres elementos principales dentro de éste S.O. :
- El núcleo del sistema operativo ( kernel ) , el escalón más bajo que realiza tareas tales como el acceso a los dispositivos (terminales , discos , cintas ...) .
- El intérprete de comandos ( shell ) es el interfase básico que ofrece UNIX de cara al usuario . Además de ejecutar otros programas , posee un lenguaje propio así como numerosas características adicio nales que se estudiarán en un capítulo posterior .
- Utilidades "de fabrica" ; normalmente se trata de programas ejecutables que vienen junto con el Sistema Operativo ; algunas de ellas son :
- Compiladores : C , assembler y en algunos casos Fortran 77 y C++.
- Herramientas de edición : Editores (vi,ex) , formateadores (troff) , filtros ...
- Soporte de comunicaciones : Herramientas basadas en TCP/IP (telnet,ftp ...)
Soporte de comunicaciones : Herramientas basadas en TCP/IP (telnet,ftp ...)
- Programas de Administración del Sistema (sysadm , sa , va ..... )
- Utilidades diversas y juegos ( éste último se suele instalar aparte ).