Professional Documents
Culture Documents
CONCEPTOS BSICOS:
Conjunto de programas que se integran con el hardware para
facilitar al usuario, el aprovechamiento de los recursos disponibles.
Algunos de sus objetivos principales son:
1965: Multics Multics (Multiplexed Information and Computing Service): aport muchas de las ideas presentes en Unix.
1970: Unix Sistema operativo multiusuario, multitarea que ha contado con gran aceptacin en la industria. Unix es a la vez: un sistema operativo, un tipo de
sistemas operativos y una marca comercial.
1973: Se decide reescribir Unix en C: Anteriormente se utilizaba el lenguaje ensamblador para programar los sistemas operativos. Las ventajas de utilizar C
son: portabilidad y facilidad de desarrollo.
1981: MS-DOS v1.0: Capaz de soportar 16KB de memoria RAM y discos flexibles de 5.25 pulgadas de 160KB.
Steve Jobs copia de Xerox la idea de utilizar una interfaz grfica de usuario (GUI) en los ordenadores.
1991: Aparece el ncleo Linux y se completa GNU/Linux : El proyecto GNU necesitaba un kernel para completar su sistema operativo. Gracias al desarrollo de
Linux a cargo de Linus Torvalds se pudo contar con un ncleo libre.
Microsoft desarrolla un nuevo sistema operativo multiusuario, multitarea y estable dedicado a competir con los servidores Unix, se trata de Windows NT.
Evolucin del sistema operativo MS-DOS que reemplaza la cnsola y el entorno grfico de las versiones anteriores (Windows 3.x)
2001: Aparece Mac OS X: Apple abandona su obsoleto sistema operativo para presentar un nuevo sistema operativo que forma parte de la famlia Unix.
En un Sistema Operativo moderno se aprecian diferentes capas, del ms alto nivel al ms bajo
encontramos:
Aplicaciones de usuario:
Llamadas al sistema:
Coleccin de herramientas que utilizan los usuarios en sus quehaceres. (The Gimp, Firefox,
Inkscape, Apache, GCC...)
Permite la comunicacin entre el sistema y el usuario. Existen distintas posibilidades, tanto de
intrprete de comandos (Bash, csh, ksh, ...) como de interfz grfica (X Window, Gnome, KDE, ...)
Se escriben bibliotecas con funciones de uso frecuente, de tal manera que otros componentes
software las puedan utilizar sin tener que volverlas a implementar (funciones matemticas, de
acceso a ficheros, comunicaciones, procesado grfico...).
sistemas
operativos constituidos fundamentalmente por
un solo programa compuesto de un conjunto de
rutinas entrelazadas de tal forma que cada una
puede llamar a cualquier otra.
Estructura jerrquica:
A medida que fueron creciendo las necesidades de los
usuarios y se perfeccionaron los sistemas, se hizo necesaria
una mayor organizacin del software, del sistema
operativo, donde una parte del sistema contena subpartes
y esto organizado en forma de niveles.
Mquina Virtual:
Se trata de un tipo de sistemas operativos
que presentan una interface a cada
proceso, mostrando una mquina que
parece idntica a la mquina real
subyacente. Estos sistemas operativos
separan dos conceptos que suelen estar
unidos en el resto de sistemas: la
multiprogramacin y la mquina extendida.
El objetivo de los sistemas operativos de
mquina virtual es el de integrar distintos
sistemas operativos dando la sensacin de
ser varias mquinas diferentes.
Monousuarios
Multiusuarios
Monotareas
Los sistemas operativos monousuarios son aqullos que soportan a un usuario a la vez, sin
importar el nmero de procesadores que tenga la computadora o el nmero de procesos o
tareas que el usuario pueda ejecutar en un mismo instante de tiempo. Las computadoras
personales tpicamente se han clasificado en este rengln.
Los sistemas operativos multiusuarios son capaces de dar servicio a ms de un usuario a la vez,
ya sea por medio de varias terminales conectadas a la computadora o por medio de sesiones
remotas en una red de comunicaciones. No importa el nmero de procesadores en la mquina ni
el nmero de procesos que cada usuario puede ejecutar simultneamente.
Los sistemas monotarea son aquellos que slo permiten una tarea a la vez por usuario.
Puede darse el caso de un sistema multiusuario y monotarea, en el cual se admiten varios
usuarios al mismo tiempo pero cada uno de ellos puede estar haciendo solo una tarea a la vez.
Multitareas
Un sistema operativo multitarea es aqul que le permite al usuario estar realizando varias labores al mismo tiempo. Por ejemplo,
puede estar editando el cdigo fuente de un programa durante su depuracin mientras compila otro programa, a la vez que
est recibiendo correo electrnico en un proceso en background. Es comn encontrar en ellos interfaces grficas orientadas al
uso de mens y el ratn, lo cual permite un rpido intercambio entre las tareas para el usuario, mejorando su productividad.
Uniproceso
Un sistema operativo uniproceso es aqul que es capaz de manejar solamente un procesador de la computadora, de manera
que si la computadora tuviese ms de uno le sera intil. El ejemplo ms tpico de este tipo de sistemas es el DOS y MacOS.
Multiproceso
Un sistema operativo multiproceso se refiere al nmero de procesadores del sistema, que es ms de uno y ste es capaz de
usarlos todos para distribuir su carga de trabajo.
Cuando se trabaja de manera asimtrica, el sistema operativo selecciona a uno de los procesadores el cual jugar el papel de
procesador maestro y servir como pivote para distribuir la carga a los dems procesadores, que reciben el nombre de
esclavos. Cuando se trabaja de manera simtrica, los procesos o partes de ellos (threads: es la parte activa en memoria y
corriendo de un proceso, lo cual puede consistir de un rea de memoria, un conjunto de registros con valores especficos, la pila y
otros valores de contexto. ) son enviados indistintamente a cualesquiera de los procesadores disponibles, teniendo, tericamente,
una mejor distribucin y equilibrio en la carga de trabajo bajo este esquema.
Los sistemas operativos de red se definen como aquellos que tiene la capacidad de
interactuar con sistemas operativos en otras computadoras por un medio de transmisin con el
objeto de intercambiar informacin, transferir archivos, ejecutar comandos remotos y un sin fin
de otras actividades.
Los sistemas operativos distribuidos abarcan los servicios de los de red, logrando integrar
recursos (impresoras, unidades de respaldo, memoria, procesos, unidades centrales de
proceso) en una sola mquina virtual que el usuario accede en forma transparente.
CARACTERSTICAS:
En general, se puede decir que un Sistema Operativo tiene las siguientes caractersticas:
Habilidad para evolucionar. Un Sistema Operativo deber construirse de manera que permita el desarrollo,
prueba o introduccin efectiva de nuevas funciones del sistema sin interferir con el servicio.
Encargado de administrar el hardware. El Sistema Operativo se encarga de manejar de una mejor manera los
recursos de la computadora en cuanto a hardware se refiere, esto es, asignar a cada proceso una parte del
procesador para poder compartir los recursos.
Relacionar dispositivos (gestionar a travs del kernel). El Sistema Operativo se debe encargar de comunicar a
los dispositivos perifricos, cuando el usuario as lo requiera.
Generacin de estadsticas.
Manejar las comunicaciones en red. El Sistema Operativo permite al usuario manejar con alta
facilidad todo lo referente a la instalacin y uso de las redes de computadoras.
Facilitar las entradas y salidas. Un Sistema Operativo debe hacerle fcil al usuario el acceso
y manejo de los dispositivos de Entrada/Salida de la computadora.
Evita que otros usuarios interfieran. El Sistema Operativo evita que los usuarios se bloqueen
entre ellos, informndoles si esa aplicacin esta siendo ocupada por otro usuario.
Permite que se puedan compartir el hardware y los datos entre los usuarios.
GESTIN DE PROCESOS:
Un programa no puede hacer nada si la CPU no ejecuta sus instrucciones. Podemos
pensar en un proceso como un programa en ejecucin.
Finalizar, abortar
Cargar, ejecutar.
Crear proceso, terminar proceso
Obtener atributos de proceso, establecer atributos de proceso.
Esperar un lapso de tiempo.
Esperar suceso, indicar la ocurrencia del suceso.
Asignar y liberar memoria.
Nuevo (new).
Ejecutndose (running)
En espera (waiting)
Listo para ejecutar (ready)
Terminado (terminated)
Donde:
Estado del proceso: El estado puede ser: nuevo, listo, en ejecucin, en espera,
detenido, etctera.
Informacin de gestin de memoria: Esta informacin puede incluir datos tales como
el valor de los registros de base y lmite, las tablas de pginas o las tablas de
segmentos, dependiendo del sistema de memoria empleado por el sistema
operativo.
El PCB sirve como depsito de cualquier informacin que pueda variar de un proceso
a otro.
Gestin de archivos
Un archivo es una
Sistema de proteccin
Es preciso proteger cada proceso de las actividades de los dems. El
hardware de direccionamiento de memoria asegura que un proceso slo
pueda ejecutarse dentro de su propio espacio de direcciones. El
temporizador cuida que ningn proceso pueda controlar y monopolizar la
CPU indefinidamente. Los registros que controlan los dispositivos no estn
accesibles a los usuarios, a fin de proteger la integridad de los diferentes
perifricos.