Next: La primera sesión.
Up: Lo básico de UNIX.
Previous: Lo básico de UNIX.
Como todos los sistemas operativos UNIX gestiona los recursos físicos
del ordenador (CPU, memoria, disco, terminales, etc) con las siguientes
características:
- 1.
- Ser multiusuario permite que varios usuarios trabajen
simultáneamente en el mismo ordenador, compartiendo así todos los
recursos. En ocasiones alguien ha llamado a un sistema operativo de
este tipo: multipuesto. Esto tiene una agradable ventaja: mucha gente
puede usar simultáneamente la misma computadora y así aumentar la
productividad. Probablemente si no fuera por esta cualidad del sistema
operativo, no existirían grandes sistemas y todo el mundo debería
trabajar con un PC.
- 2.
- Ser multitarea hace posible que un usuario pueda ejecutar
simultáneamente varios programas. También se llama por esto
multiprogramado. Realmente
esta propiedad es casi una consecuencia de que el sistema operativo sea
multiusuario, ya que la multitarea se puede conseguir dejando que un
mismo usuario acceda al sistema más de una vez.
- 3.
- Ser en tiempo compartido posibilita que el sistema operativo
distribuya
controladamente los recursos del ordenador entre todos los usuarios. La
cantidad de atención que un proceso recibe de la CPU puede ser modificado
a antojo del usuario. A
partir de UNIX System V Release 4, este sistema puede utilizarse para
aplicaciones en tiempo real débil, es decir, aquellas cuyo tiempo de
respuesta no puede garantizarse más que en términos estadísticos. Esto
realmente es uno de los principales inconvenientes de UNIX para sistemas
de tiempo real en los que el tiempo de respuesta del sistema es una
cuestión clave. Por ejemplo, UNIX no sirve para correr en la computadora
de un avión que ejecute el código del piloto automático, ya que la
probabilidad de respuesta inmediata no sería del 100%, es decir, un
tanto por ciento de los aviones se estrellarían.
- 4.
- Ejecuta las aplicaciones según el modelo de memoria virtual
que permite que un programa puede ejecutarse sin necesidad de que se
almacene en su totalidad y simultáneamente en la memoria principal.
Esto tiene tres grandes ventajas:
- (a)
- Puesto que sólo permanece el memoria la parte de un proceso que
se está ejecutando, podemos almacenar muchos trozos de procesos
simultáneamente (multitarea).
- (b)
- Un programa almacenado en disco y con un tamaño superior al de la
memoria principal puede ejecutarse. Esto evita que los programas tengan
que dividirse en overlays (partes disjuntas de un programa que si
caben por separado en memoria principal) y que deben ser gestionadas
directamente por el usuario.
- (c)
- Acelera el proceso de carga y lanzamiento de los procesos porque su
ejecución puede comenzar en cuanto la primera página (bloque mínimo de
transferencia entre el disco y la memoria principal) reside en memoria.
Tal y como se muestra en la figura 1.1, cuando un usuario
entra a trabajar en un ordenador bajo UNIX le atiende un programa llamado
intérprete de comandos (shell) que le permite ejecutar al menos 200
programas que forman parte de la distribución típica de UNIX. Sin embargo,
desde un punto de vista técnico, el sistema operativo UNIX es tan solo el
programa que gestiona los recursos del ordenador que se llama núcleo
(kernel). Es por abuso del lenguaje por lo que habitualmente se habla de
sistema operativo UNIX cuando nos referimos a cualquiera de los 200
comandos.
Quizás una de las principales características del sistema operativo UNIX
es su asombrosa portabilidad a todo tipo de sistemas y la inalterable interfaz
que muestra al usuario. Por esto, UNIX corre en la mayoría de las
computadoras existentes (desde un IBM PC o CBM Amiga hasta un vectorial de
Cray o Convex). En concreto lo que hace cada fabricante es adaptar UNIX y
concretamente el núcleo a su máquina y de esta forma se comportará de
forma similar a cualquier otra máquina que ejecuta UNIX. El secreto de
esta facilidad de implantación se muestra en la figura
1.1 en la que se muestran los niveles que forman el
sistema operativo UNIX. La característica más relevante de cualquier
sistema UNIX es que existe un adecuado aislamiento entre cualquier usuario
(incluido el superusuario) y el hardware del sistema, siempre usándose como
intermediario el núcleo del sistema operativo que es la principal
parte dependiente de la máquina. Por esta razón, Linux que no es más que una
versión no comercial de UNIX (de ahí su bajo coste) corre actualmente en los
siguientes sistemas (visitar www.cs.us.es/archive/linux/devel.html
para más información):
Figura 1.1:
Arquitectura del sistema operativo UNIX.
|
- 1.
- DEC AXP (Alpha). Es la última saga de máquinas de Digital que
montan la familia de procesadores de 64 bits DEC Alpha 21064, 21064A y 21164
trabajan actualmente entre 150 y 633 MHz (por ahora sólo en máquinas
monoprocesador). Para más información visitar www.azstarnet.com/ axplinux. Además ahora corre sobre ARM.
- 2.
- Sparc. Es la plataforma desarrollada por Sun Microsystems.
Actualmente Linux corre sobre Sparc 1, 1+, 2, IPC, IPX, SLC, ELC, Sparc
Classic, LX, 5, 10, 20, UltraSparc 140/170, y en breve en SparcCenter
1000/2000 y Sun 4/3xx. Para más información revisar
www.geog.ubc.ca/sparclinux.html.
- 3.
- Power Macintosh. Los nuevos Apple con CPU's PowerPC también
corren Linux bajo el nombre de MkLinux. Concretamente Linux ha sido portado
a Power Macintosh 6100, 7100, 8100 y PowerComputing 100 y 120. Información
extra en www.mklinux.apple.com. También se está portando a Apple
MAC con 680x0.
- 4.
- IBM PowerPC. También IBM corre Linux en sus nuevas estaciones
de trabajo con PowerPC, concretamente en las series 830 y 850. Más
información en www.linuxppc.org.
- 5.
- Amiga. Para el ya desaparecido CBM Amiga tenemos una versión de
Linux llamada Linux/m68k que usa procesadores de la familia 680x0 (ahora
hasta el 68060). Para más información atender a
ftp.informatik.uni-oldenburg.de/pub/amiga/linux.
- 6.
- Atari ST. Esta máquina también monta un motorola 680x0 por lo
que podemos encontrar información extra en la dirección de Amiga.
- 7.
- Acorn. Las máquinas Acorn pueden montar una tarjeta con un
486. Existe un Linux para esta configuración. Más información en www.ph.kcl.ac.uk/ amb/linux.html.
- 8.
- MIPS. MIPS es la empresa perteneciente a Silicon Graphics que
fabrica los microprocesadores R2000, R3000, R4000, R44000, R5000, R8000 y
R10000 (y alguna que otra variante más). También se montan en vídeo
consolas como la PlayStation de Sony. Linux/MIPS corre actualmente en la
subfamilia R4x00. Ejemplos de máquinas que montan este procesador son:
Acer PICA-61, DECStation 5000/2x, 5000/100, 3100,
Deskstation rPC44, Mips Magnum 4000PC, Olivetti M700-10 y
RM200.
- 9.
- i386, i486, Pentium y Pentium Pro. Originalmente Linux fue
escrito para el i386 y este fue el principal acierto de Linus Torvalds
pues escogió la plataforma más extendida en todo el mundo. Linux
necesita únicamente 2 Mbytes (aunque tan poca memoria lo enlentece mucho) y
un 80386SX para funcionar. Actualmente se está portando también a PC con
un 8086 bajo el nombre de Proyecto ELKS (ver www.linux.org.uk/Linux8086.html) y a sistemas con hasta 16 procesadores
(Proyecto Linux/SMP). Un buen punto de
partida para recavar información en castellano acerca de Linux es slug.ctv.es/ alfredo.
Next: La primera sesión.
Up: Lo básico de UNIX.
Previous: Lo básico de UNIX.
Vicente González Ruiz
1998-07-13