Usted se encuentra en: ARX/PC y MAC/SOFTWARE Y SISTEMAS OPERATIVOS DE PC Y MAC/LOS SISTEMAS OPERATIVOS

LOS SISTEMAS OPERATIVOS

�Qu� es un Sistema Operativo?

Definici�n de Sistema Operativo

es un programa de computadora, sin embargo, es un programa muy especial, quiz� el m�s complejo e importante en una computadora. El Sistema Operativo despierta a la computadora y hace que reconozca el CPU, la memoria, el teclado, la tarjeta de video y las unidades de disco. Adem�s, proporciona la facilidad para que los usuarios se comuniquen con la computadora y sirve de plataforma a partir de la cual se corren programas de aplicaci�n. Cuando enciende una Computadora, lo primero que �sta hace es llevar a cabo un autodiagn�stico llamado autoprueba de encendido (Power On Self Test, POST). Durante la POST, la computadora indentifica su memoria, sus discos, su teclado, su sistema de v�deo y cualquier otro dispositivo conectado a ella. Lo siguiente que la computadora hace es buscar un SO para arrancar (boot o sector de arranque).

Una vez que la computadora ha puesto en marcha su Sistema Operativo, mantiene al menos parte de �ste en su memoria en todo momento. Mientras la computadora est� encendida, el SO tiene 4 tareas principales.

1.Proporcionar ya sea una interfaz de l�nea de comando o una interfaz gr�fica al usuario, para que este �ltimo se pueda comunicar con la computadora. Interfaz de l�nea de comando: se introducen palabras y s�mbolos desde el teclado de la computadora, ejemplo, el MS-DOS. Interfaz Gr�fica de Usuario (GUI), seleccionas las acciones mediante el uso de un Mouse para pulsar sobre figuras llamadas iconos o seleccionar opciones de los men�s.

2.Administrar los dispositivos de hardware en la computadora.Cuando corren los programas, necesitan utilizar la memoria, el monitor, las unidades de disco, los puertos de Entrada/Salida (impresoras, m�dems, etc). El SO sirve de intermediario entre los programas y el hardware.

3.Administrar y mantener los sistemas de archivo de disco. Los SO agrupan la informaci�n dentro de compartimientos l�gicos para almacenarlos en el disco. Estos grupos de informaci�n son llamados archivos. Los archivos pueden contener instrucciones de programas o informaci�n creada por el usuario. El SO mantiene una lista de los archivos en un disco, y nos proporciona las herramientas necesarias para organizar y manipular estos archivos.

4.Apoyar a otros programas. Otra de las funciones importantes del SO es proporcionar servicios a otros programas. Estos servicios son similares a aquellos que el SO proporciona directamente a los usuarios. Por ejemplo, listar los archivos, grabarlos a disco, eliminar archivos, revisar espacio disponible, etc. Cuando los programadores escriben programas de computadora, incluyen en sus programas instrucciones que solicitan los servicios del SO. Estas instrucciones son conocidas como "llamadas del sistema"

Historia Necesidades de los Sistemas Operativos

En un principio solo exist�a el hardware de computadora. Las primeras computadoras eran (f�sicamente) grandes m�quinas que se operaban desde una consola. El programador escrib�a un programa y luego lo controlaba directamente. En primer lugar, el programa se cargaba manualmente en la memoria, desde los interruptores del tablero frontal, desde una cinta de papel o desde tarjetas perforadas. Luego se pulsaban los botones adecuados para establecer la direcci�n de inicio y comenzar la ejecuci�n del programa. Mientras este se ejecutaba, el programador-operador lo pod�a supervisar observando las luces en el microprocesador. Si se descubr�an errores, el programador pod�a detener el programa, examinar el contenido de la memoria y los registros y depurar el programa directamente desde el microprocesador. La salida del programa se imprim�a, o se perforaba en cintas de papel o tarjetas para su impresi�n posterior. Un aspecto importante de ese entorno era su naturaleza interactiva directa. El programador tambi�n era el operador del sistema de computaci�n.

La mayor�a de los sistemas utilizaban un esquema de reservas o de registro para asignar tiempo de m�quina. Si alguien quer�a usar el computador, acud�a a la hoja de registro, buscaba el siguiente tiempo libre de la m�quina que fuera conveniente y se anotaba para usarla. Sin embargo, con este procedimiento se presentaban ciertos problemas. Si un programador se hab�a registrado para usar una hora de tiempo del computador dedicada a ejecutar el programa que estaba desarrollando, pero se topaba con alg�n error dif�cil y no pod�a terminar en esa hora. Si alguien m�s hab�a reservado el siguiente bloque de tiempo, el programador deb�a detenerse, rescatar lo que pudiera y volver mas tarde para continuar. Por otra parte, si el programa se ejecutaba sin problemas, podr�a terminar en 35 minutos; pero como pens� que necesitar�a la m�quina durante m�s tiempo, se registr� para usarla un hora, y permanecer�a inactiva durante 25 minutos.

Conforme transcurri� el tiempo, se desarrollaron software y hardware adicionales; empezaron a popularizarse los lectores de tarjetas, impresoras de lineas y cintas magn�ticas. Se dise�aron ensambladores, cargadores y ligadores para facilitar las tareas de programaci�n, y se crearon bibliotecas de funciones comunes, de manera que �stas pod�an copiarse a un nuevo programa sin tener que escribirlas de nuevo.

Se pod�a necesitar un considerable tiempo de operaci�n para realizar un trabajo. Cada trabajo consist�a en varios pasos distintos: cargar la cinta del compilador de FORTRAN, ejecutar el compilador, descargar la cinta del compilador, cargar la cinta del ensamblador, ejecutar el ensamblador, descargar la cinta del ensamblador, cargar el programa objeto y ejecutarlo. Si ocurr�a un error en cualquiera de los pasos, probablemente habr�a que comenzar desde el principio. Cada paso del trabajo pod�a ocasionar la necesidad de cargar y descargar cintas magn�ticas, cintas de papel o tarjetas perforadoras, por lo que al avanzar el tiempo aparecieron los primeros sistemas operativos.

Los computadores, sobretodo los centrales de gran tama�o, han sido siempre m�quinas muy costosas. Por ello, los due�os han deseado que estas m�quinas efectuen la mayor cantidad posible de c�lculos. Hoy en d�a, esta situaci�n tambi�n se aplica a los microprocesadores de menor costo, de los cuales, a pesar de no ser tan costosos, siempre se espera que logren el mayor n�mero posible de c�lculos. El cambio a los sistemas por lotes con secuenciaci�n autom�tica de trabajos se efectu� para mejorar el rendimiento. El problema es que las personas son demasiado lentas. Por lo tanto, es deseable sustituir la intervenci�n humana por el software del sistema operativo. A�n con esta secuenciaci�n autom�tica de trabajos, el CPU todav�a tiene periodos de inactividad. El problema es la velocidad de los dispositivos mec�nicos de E/S, los cuales son intr�nsecamente m�s lentos que los dispositivos electr�nicos. Una CPU lenta trabaja en el orden de los microsegundos, pues ejecuta millones de instrucciones por segundo. La soluci�n que se encontr� a esto fue el uso de buffers o tampones que se anticipaban al programa leyendo los datos y dej�ndolos en memoria antes de que se produjese la orden de leerlos, con lo que se acelera la ejecuci�n total del programa.

Definamos ahora el concepto de Sistema Operativo: Es un programa que act�a como intermediario entre el usuario y el hardware de un computador y su prop�sito es proporcionar un entorno en el cual el usuario pueda ejecutar programas. El objetivo principal de un sistema operativo es lograr que el sistema de computaci�n se use de manera c�moda y el objetivo secundario es que el hardware del computador se emplee de manera eficiente. Una definici�n m�s com�n es que el sistema operativo es el programa que se ejecuta todo el tiempo en el computador, siendo programas de aplicaci�n todos los dem�s.

1. Objetivo Principal: Los sistemas operativos existen porque se supone que es mas f�cil trabajar con uno de ellos que sin �l. Esta situaci�n es particularmente clara cuando se observan los sistemas operativos para los peque�os computadores personales.

2. Objetivo Secundario: Es la utilizaci�n eficiente del sistema de computaci�n. Este prop�sito tiene una importancia especial en los grandes sistemas multiusuario compartidos. En el pasado, las consideraciones de eficiencia a menudo eran m�s importantes que la comodidad, por lo que gran parte de la te�rica de sistemas operativos se concentra en el uso �ptimo de los recursos de computaci�n.

Los sistemas operativos y la arquitectura del computador tienen una gran influencia mutua. Los sistemas operativos se desarrollan para facilitar el uso del hardware. Al ir dise�ando y utilizando los sistemas operativos, se hizo patente que podr�an simplificarse con cambios en el dise�o del hardware.

Caracter�sticas de un Sistema Operativo

El Kernel y el Shell

Las funciones centrales de un SO son controladas por el n�cleo (kernel) mientras que la interfaz del usuario es controlada por el entorno (shell). Por ejemplo, la parte m�s importante del DOS es un programa con el nombre "COMMAND.COM" Este programa tiene dos partes. El kernel, que se mantiene en memoria en todo momento, contiene el c�digo m�quina de bajo nivel para manejar la administraci�n de hardware para otros programas que necesitan estos servicios, y para la segunda parte del COMMAND.COM el shell, el cual es el interprete de comandos. Las funciones de bajo nivel del SO y las funciones de interpretaci�n de comandos est�n separadas, de tal forma que puedes mantener el kernel DOS corriendo, pero utilizar una interfaz de usuario diferente. Esto es exactamente lo que sucede cuando se carga Microsoft Windows, el cual toma el lugar del shell, reemplazando la interfaz de l�nea de comandos con una interfaz gr�fica del usuario. Existen muchos shells diferentes en el mercado, ejemplo: NDOS (Norton DOS), XTG, PCTOOLS, o inclusive el mismo SO MS-DOS a partir de la versi�n 5.0 incluy� un Shell llamado DOS SHELL.

Categor�as de Sistemas Operativos Multitarea

El t�rmino multitarea se refiere a la capacidad del SO para correr mas de un programa al mismo tiempo. Existen dos esquemas que los programas de sistemas operativos utilizan para desarrollar SO multitarea, el primero requiere de la cooperaci�n entre el SO y los programas de aplicaci�n. Los programas son escritos de tal manera que peri�dicamente inspeccionan con el SO para ver si cualquier otro programa necesita a la CPU, si este es el caso, entonces dejan el control del CPU al siguiente programa, a este m�todo se le llama multitarea coperativa y es el m�todo utilizado por el SO de las computadoras de Machintosh y DOS corriendo Windows de Microsoft. El segundo m�todo es el llamada multitarea con asignaci�n de prioridades. Con este esquema el SO mantiene una lista de procesos (programas) que est�n corriendo. Cuando se inicia cada proceso en la lista el SO le asigna una prioridad. En cualquier momen to el SO puede intervenir y modificar la prioridad de un proceso organizando en forma efectiva la lista de prioridad, el SO tambi�n mantiene el control de la cantidad de tiempo que utiliza con cualquier proceso antes de ir al siguiente. Con multitarea de asignaci�n de prioridades el SO puede sustituir en cualquier momento el proceso que esta corriendo y reasignar el tiempo a una tarea de mas prioridad. Unix ,OS-2 y Windows NT emplean este tipo de multitarea.

Multiusuario

Un Sistema Operativo multiusuario permite a mas de un solo usuario accesar a una computadora. Claro que, para llevarse esto a cabo, el SO tambi�n debe ser capaz de efectuar multitareas. Unix es el Sistema Operativo Multiusuario m�s utilizado. Debido a que Unix fue originalmente dise�ado para correr en una minicomputadora, era multiusuario y multitarea desde su concepci�n. Actualmente se producen versiones de Unix para PC tales como The Santa Cruz Corporation Microport, Esix, IBM,y Sunsoft. Apple tambi�n produce una versi�n de Unix para la Machintosh llamada: A/UX.Unix , Unix proporciona tres maneras de permitir a m�ltiples personas utilizar la misma PC al mismo tiempo.

1.Mediante M�dems.
2.Mediante conexi�n de terminales a trav�s de puertos seriales,
3.Mediante Redes.

Multiproceso

Las computadoras que tienen mas de un CPU son llamadas multiproceso. Un sistema operativo multiproceso coordina las operaciones de la computadoras multiprocesadoras. Ya que cada CPU en una computadora de multiproceso puede estar ejecutando una instrucci�n, el otro procesador queda liberado para procesar otras instrucciones simult�neamente. Al usar una computadora con capacidades de multiproceso incrementamos su velocidad de respuesta y procesos. Casi todas las computadoras que tienen capacidad de multiproceso ofrecen una gran ventaja. Los primeros Sistemas Operativos Multiproceso realizaban lo que se conoce como: Multiproceso asim�trico: Una CPU principal retiene el control global de la computadora, as� como el de los otros procesadores. Esto fue un primer paso hacia el multiproceso pero no fue la direcci�n ideal a seguir ya que la CPU principal pod�a convertirse en un cuello de botella. Multiproceso sim�trico: En un sistema multiproceso sim�trico, no existe una CPU controladora �nica. La barrera a vencer al implementar el multiproceso sim�trico es que los SO tienen que ser redise�ados o dise�ados desde el principio para trabajar en un Hambiente multiproceso. Las extensiones de Unix, que soportan multiproceso asim�trico ya est�n disponibles y las extensiones sim�tricas se est�n haciendo disponibles. Windows NT de Microsoft soporta multiproceso sim�trico.


* Para regrasar a alguna secci�n anterior de click en los enlaces de la parte superior "Usted se encuentra en:".
VERSI�N EN FLASH
Hosted by www.Geocities.ws

1