martes, 4 de enero de 2011

UNIDAD 1

          INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS


1.1Definición, Objetivo y Funciones de un Sistema Operativo

Un Sistema Operativo (SO) es el software básico de una computadora que provee una interfaz entre el resto de programas del ordenador, los dispositivos hardware y el usuario.
Los Sistemas Operativos más utilizados son Dos, Windows, Linux y Mac. Algunos SO ya vienen con un navegador integrado, como Windows que trae el navegador Internet Explorer.
Las funciones básicas del Sistema Operativo son administrar los recursos de la máquina, coordinar el hardware y organizar archivos y directorios en dispositivos de almacenamiento.


EL SISTEMA OPERATIVO TIENE 4 FUNCIONES PRINCIPALES


• 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 del Usuario (GUI): Se seleccionan las acciones mediante el uso de un Mouse para pulsar sobre figuras llamadas iconos o seleccionar opciones de los menús.
• Administrar los dispositivos de hardware en la computadora. El Sistema Operativo sirve de intermediario entre los programas y el hardware.

• 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 porel usuario. El SO mantiene una lista de los archivos en un disco, y nos proporciona las herramientas necesarias para organizar y manipular estos archivos.

• Apoyar a otros programas. Por ejemplo, listar los archivos, grabarlos en el disco, eliminar archivos, revisar espacio disponible, etc.


OBJETIVOS PARA LA CREACIÓN DE LOS SISTEMAS OPERATIVOS 


El objetivo fundamental de los sistemas de computación es ejecutar los programas de los usuarios y facilitar la resolución de sus problemas. El hardware se construye con este fin, pero como este no es fácil de utilizar, se desarrollan programas de aplicación que requieren ciertas operación es comunes.


OTROS OBJETIVOS SON: 


  •  Transformar el complejo hardware de una computadora a una máquina accesible al usuario.
  •  Lograr el mejor uso posible de los recursos.
  • Hacer eficiente el uso del recurso.


1.2 Evolución de los Sistemas Operativos
Generación Cero (década de 1940)

Los primeros sistemas computacionales no poseían sistemas operativos. Para los usuarios eran complejos por que trabajaban con lenguaje máquina. Todas las instrucciones eran codificadas manualmente.  



Primera Generación (década de 1950)

Este fue el comienzo de los sistemas de procesamiento por lotes, donde los trabajos se reunían por grupos o lotes. Cuando el trabajo estaba en ejecución, este tenia control total de la maquina. Al terminar cada trabajo, el control era devuelto al sistema operativo, el cual limpiaba y leía e iniciaba el trabajo siguiente.

Para poder ejecutar un trabajo (programa), tenían que escribirlo en papel (lenguaje ensamblador) y después se perforaría en tarjetas. Enseguida se llevaría la pila de tarjetas al cuarto de introducción al sistema y la entregaría a uno de los operadores. Cuando la computadora terminara el trabajo, un operador se dirigiría a la impresora y desprendería la salida y la llevaría al cuarto de salida, para que la recogiera el programador. Eran más complejos controlar los componentes.

Cuando se ejecutaba alguna tarea, ésta tenía control total de la máquina. Al terminar cada tarea, el control era devuelto al sistema operativo, el cual limpiaba, leía e iniciaba la siguiente tarea.



Segunda Generación (a mitad de la década de 1960)

Su característica principal fue el desarrollo de los sistemas compartidos con multiprogramación, y los principios del multiprocesamiento. En los sistemas de multiprogramación, varios programas de usuario se encuentran al mismo tiempo en el almacenamiento principal, y el procesador se cambia rápidamente de un trabajo a otro.





       1960 SHARE Operating System SHARE Operating System proporcionaba nuevos métodos para gestionar los buffers y los dispositivos de entrada/salida, y, al igual que GM-NAA I/O, permitía la ejecución de programas realizados en lenguaje maquina

        1961 CTSS Compatible Time-Sharing System (Sistema de Tiempo Compartido Compatible), fue uno de los primeros sistemas operativos de tiempo compartido; fue desarrollado en el Centro de Computación del MIT.

Tercera Generación 

Los computadores de esta generación fueron diseñados como sistemas para usos generales.
Eran sistemas de modos múltiples, algunos de ellos soportaban simultáneamente procesos por lotes, tiempo compartido, procesamiento de tiempo real y multiprocesamiento.

Eran grandes y costosos, nunca antes se había construido algo similar, y muchos de los esfuerzos de desarrollo terminaron muy por arriba del presupuesto y mucho después de lo que el planificador marcaba como fecha de terminación.





Estos sistemas introdujeron mayor complejidad a los ambientes computacionales; una complejidad a la cual, en un principio, no estaban acostumbrados los usuarios.



Cuarta Generación (1980 – 1990)





Con estos sistemas operativos aparece el concepto de máquinas virtuales, en el cual el usuario no se involucra con el hardware de la computadora con la que se quiere conectar y en su lugar el usuario observa una interfaz gráfica creada por el sistema operativo.


Con la creación de los circuitos integrados LSI (integración a grande escala), chips que contiene miles de transistores.



Aparecen las computadoras personales. Dos sistemas operativos han dominado la escena de la computadora personal: MS-DOS, escrito por Microsoft, Inc., para la IBM PC y otras computadoras que utilizan la CPU Intel 8088 y sus sucesores. y UNIX, que domina en las computadoras personales mayores que hacen uso de CPU.

Aunque la versión inicial de MS-DOS era relativamente primitiva, versiones subsiguientes han incluido más y más características de UNIX, lo que no es totalmente sorprendente dado que Microsoft es un proveedor importante de UNIX, que usa el nombre comercial de XENIX.



Quinta generación (1991- 200?)

En 1991 aparece la primer versión del núcleo de Linux. Creado por Linus Torvalds y un sinfín de colaboradores a través de Internet. Este sistema se basa en Unix, un sistema que en principio trabajaba en modo comandos, estilo MS-DOS. Hoy en día dispone de Ventanas, gracias a un servidor grafico y a gestores de ventanas como KDE, GNOME entre muchos. Recientemente GNU/Linux dispone de un aplicativo que convierte las ventanas en un entorno 3D como por ejemplo Beryl. Lo que permite utilizar linux de una forma muy visual y atractiva.



1.3 Subsistemas de Sistemas Operativos
Administración de Archivos


Un archivo es un conjunto de información, que se encuentra almacenada o guardada en la memoria principal del computador, en el disco duro, en el disquete flexible o en los discos compactos (Cd-Rom). 


Antes de que un archivo pueda leerse o escribirse en él, debe abrirse, momento en el cual se verifican los permisos. Estos archivos se abren especificando en el computador la ruta de acceso al archivo desde el directorio raíz, que es la unidad principal del disco del computador, este puede ser un disco duro o disco flexible.



Uno de los problemas mas frecuentes en el manejo de archivos son los deadlock, un deadlock es una situación no deseada de espera indefinida y se da cuando en un grupo de procesos, dos o más procesos de ese grupo esperan por llevar a cabo una tarea que será ejecutada por otro proceso del mismo grupo, entonces se produce el bloqueo.
Dispositivos de Entrada y Salida                                                                                                       



El código destinado a manejar la entrada y salida de los diferentes periféricos en un sistema operativo es de una extensión considerable y sumamente complejo. Resuelve la necesidades de sincronizar, atrapar interrupciones y ofrecer llamadas al sistema para los programadores.

Los dispositivos de entrada salida se dividen, en general, en dos tipos: dispositivos orientados a bloques y dispositivos orientados a caracteres. Orientados a Bloques.
Los dispositivos orientados a bloques tienen la propiedad de que se pueden direccionar, esto es, el programador puede escribir o leer cualquier bloque del dispositivo realizando primero una operación de posicionamiento sobre el dispositivo. Orientados a Caracteres.
Los dispositivos orientados a caracteres son aquellos que trabajan con secuencias de bytes sin importar su longitud ni ninguna agrupación en especial.
Administración de Proceso.                                                                                                              

Uno de los conceptos más importantes que gira entorno a un sistema operativo es el de proceso. Un proceso es un programa en ejecución junto con el entorno asociado (registros, variables, etc.) Características a considerar de los Procesos:                                                                                                

• Cantidad de Entrada/Salida: Existen procesos que realizan una gran cantidad de operaciones de entrada y salida.                                                                                                                           
• Cantidad de Uso de CPU: Existen procesos que no realizan muchas operaciones de entrada y salida, sino que usan intensivamente la unidad central de procesamiento.                                                     
• Procesos de Lote o Interactivos: Un proceso de lote es más eficiente en cuanto a la lectura de datos, ya que generalmente lo hace de archivos.                                                                                                  
• Procesos en Tiempo Real: Si los procesos deben dar respuesta en tiempo real se requiere que tengan prioridad para los turnos de ejecución.                                                                                                       
• Longevidad de los Procesos: Existen procesos que típicamente requerirán varias horas para finalizar su labor, mientras que existen otros que solo necesitan algunos segundos.

Gestión de la memoria
El sistema operativo se encarga de gestionar el espacio de memoria asignado para cada aplicación y para cada usuario, si resulta pertinente. Cuando la memoria física es insuficiente, el sistema operativo puede crear una zona de memoria en el disco duro, denominada “memoria virtual”.          
La memoria virtual permite ejecutar aplicaciones que requieren una memoria superior a la memoria RAM disponible en el sistema. Sin embargo, esta memoria es mucho más lenta.


1.3 Estructura de un Sistema Operativo 





a) Cargador Cualquier programa que requiere ser ejecutado en la computadora, deberá ser transferido desde su lugar de residencia a la memoria principal.

b) Cargador para el Sistema Operativo Este programa se encarga de transferir desde algún medio de almacenamiento externo (disco, cinta o tambor) a la memoria principal, los programas del sistema operativo que tienen como finalidad establecer el ambiente de trabajo del equipo de cómputo. Existe un programa especial almacenado en memoria ROM que se encarga de acceder a este programa cargador. Cuando el sistema operativo esta cargado en memoria toma el control absoluto de las operaciones del sistema.

c) Cargador incluido en el Sistema Operativo Su función es cargar a memoria todos los archivos necesarios para la ejecución de un proceso.



SUPERVISOR (EJECUTIVO O MONITOR)    
                                                                         
Es el administrador del sistema que controla todo el proceso de la información por medio de un gran número de rutinas que entran en acción cuando son requeridos. Funge como enlace entre los programas del usuario y todas las rutinas que controlan los recursos requeridos por el programa para posteriormente continuar con su ejecución.


El supervisor también realiza otras funciones como son:

- Administra la memoria.
- Administración de las rutinas que controlan el funcionamiento de los recursos de la computadora.
- Manejo de Archivos
- Administración y control de la ejecución de los programas.



LENGUAJE DE COMUNICACION                                                                                

Es el medio a través del cual el usuario interactúa directamente con el sistema operativo y esta formado por comandos que son introducidos a través de algún dispositivo. Generalmente un comando consta de dos partes, la primera formada por una palabra que identifica el comando y la acción a realizar y la segunda parte por un conjunto de valores o parámetros que permiten seleccionar diversas operaciones de entre los que dispone el comando.



UTILERIA DE SISTEMA                                                                                         

Son programas o rutinas del sistema operativo que realizan diversas funciones de uso común o aplicación frecuente como son: clasificar, copiar e imprimir información.
1.5 Análisis de los Sistemas Operativos Comerciales (UNIX, LINUX, OS/2, VAX, MUS, WINDOWS)


UNIX



Es un sistema operativo portable, multitarea y multiusuario; desarrollado, en principio, en 1969 por un grupo de empleados de los laboratorios Bell de AT&T, entre los que figuran Ken Thompson, Dennis Ritchie y Douglas McIlroy.


Posee las siguientes características:


  • Es un sistema operativo multiusuario, con capacidad de simular multiprocesamiento y procesamiento no interactivo.
  • Está escrito en un lenguaje de alto nivel: C.Dispone de un lenguaje de control programable llamado SHELL.
  • Ofrece facilidades para la creación de programas y sistemas y el ambiente adecuado para las tareas de diseños de software.Emplea manejo dinámico de memoria por intercambio o paginación.
  • Tiene capacidad de interconexión de procesos.Permite comunicación entre procesos.
  • Emplea un sistema jerárquico de archivos, con facilidades de protección de archivos, cuentas y procesos.
  • Tiene facilidad para redireccionamiento de Entradas/Salidas.Garantiza un alto grado de portabilidad.




Ventajas de Unix


o Multiusuario.
o Multitarea.
o Soporta acceso remoto.
o Soporte nativo de TCP/IP (Fácil conexión a Internet y otras redes)
o Contiene xfree86, que es una interfaz gráfica de usuario basada en los estándares de X-Windows, y también es gratuita.
o Al instalar el sistema operativo, también se tiene la posibilidad de instalar varios programas, tales como: hojas de cálculo, bases de datos, procesadores de texto, varios lenguajes de programación, paquetes de telecomunicaciones y juegos.
o Cumple los estándares POSIX y de Sistemas Abiertos, esto es que tiene la capacidad de comunicarse con sistemas distintos a él.
o Existe mucha documentación sobre éste.

 Desventajas de Unix

o Carencia de soporte técnico.
o No ofrece mucha seguridad.
o Problemas de hardware, no soporta todas las plataformas, y no es compatible con algunas marcas específicas.
o No existe un control de calidad al momento de elaborar software para Linux, pues muchas veces las aplicaciones se hacen y se liberan sin control alguno.
o Es poco probable que aplicaciones para DOS y OS/2, se ejecuten correctamente bajo Linux.
o No hay forma segura de instalarlo sin reparticionar el disco duro.
o El reparticionar el disco duro, implica borrar toda la información del mismo y después restablecerla.
o Se requiere experiencia y conocimiento del sistema para administrarlo, pues como es un sistema por línea de comandos, estos poseen muchas opciones y en ocasiones es difícil realizar algunas tareas, que en otros sistemas operativos de red son triviales.





LINUX





Linux es un Sistema Operativo tipo Unix diseñado para aprovechar al máximo las capacidades de las computadoras PC basadas en el microprocesador i386 y posteriores. Es un SO con capacidades de multiprocesamiento, multitarea y multiusuario. Sin embargo, a diferencia de otros sistemas Unix para PC, usted no tiene que pagar cuantiosas licencias por el uso de Linux. 



CARACTERISTICAS 


  • Linux y sus Shells: Cada usuario de un sistema Linux tiene su propia interfaz de usuario o Shell. Los usuarios pueden personalizar sus shells adecuándolos a sus propias necesidades específicas. En este sentido, el Shell de un usuario funciona más como un entorno operativo que el usuario puede controlar.
  • Linux es Multitarea: La multitarea no consiste en hacer que el procesador realize más de un trabajo al mismo tiempo (un solo procesador no tiene esa capacidad), lo único que realiza es presentar las tareas de forma intercalada para que se ejecuten varias simultáneamente. Por lo tanto en Linux es posible ejecutar varios programas a la vez sin necesidad de tener que parar la ejecución de cada aplicación.
  • Linux es Multiusuario: Para que pueda desarrollar esta labor (de compartir los recursos de un ordenador) es necesario un sistema operativo que permita a varios usuarios acceder al mismo tiempo a través de terminales, y que distribuya los recursos disponibles entre todos. Así mismo, el sistema debería proporcionar la posibilidad de que más de un usuario pudiera trabajar con la misma versión de un mismo programa al mismo tiempo, y actualizar inmediatamente cualquier cambio que se produjese en la base de datos, quedando reflejado para todos. En conclusión, en el sistema multiusuario, varios usuarios pueden acceder a las aplicaciones y recursos del sistema Linux al mismo tiempo. Y, por supuesto, cada uno de ellos puede ejecutar varios programas a la vez (multitarea).
  • Linux es Seguro: El concepto de seguridad en redes de ordenadores es siempre dificil de abordar. Un sistema puede ser seguro para un determinado tipo de actividades e inseguro para otras. Si se quiere que el sistema sea seguro, se debe administrar de tal forma que se tengan controlados a los usuarios en todo momento. Para la ardua tarea de seguridad surgen nuevas herramientas constantemente, tanto para detectar intrusos como para encontrar fallos en el sistema y evitar así ataques desde el exterior.
  • Linux y las Redes de Ordenadores: Cuando se trabaja con Linux se está ante un sistema operativo orientado al trabajo de redes de ordenadores.

Ventajas de Linux


1.     Linux es básicamente un duplicado de UNIX, lo que significa que incorpora muchas de las ventajas de este importante sistema operativo.

2.     En Linux pueden correr varios procesos a la vez de forma ininterrumpida como un servidor de red al tiempo que un procesador de textos, una animación, copia de archivos o revisar el correo electrónico.

3.     Seguridad porque es un sistema operacional diseñado con la idea de Cliente - Servidor con permisos de acceso y ejecución a cada usuario. Esto quiere decir que varios usuarios pueden utilizar una misma maquina al tiempo sin interferir en cada proceso.

4.     Linux es software libre, casi gratuito. Linux es popular entre programadores y desarrolladores e implica un espíritu de colaboración.

5.     Linux integra una implementación completa de los diferentes protocolos y estándares de red, con los que se puede conectar fácilmente a Internet y acceder a todo tipo de información disponible.

6.     Su filosofía y sus programas están dictados por el movimiento ``Open Source'' que ha venido crecido en los últimos años y ha adquirido el suficiente fortaleza para hacer frente a los gigantes de la industria del software.

7.     Linux puede ser utilizado como una estación personal pero también como un potente servidor de red.

8.     Linux incorpora una gama de sistemas de interfaz gráfica (ventanas) de igual o mejor calidad que otras ofrecidas en muchos paquetes comerciales.

9.     Posee el apoyo de miles de programadores a nivel mundial.

10.  El paquete incluye el código fuente, lo que permite modificarlo de acuerdo a las necesidades del usuario.

11.  Utiliza varios formatos de archivo que son compatibles con casi todos los sistemas operacionales utilizados en la actualidad.

Desventajas
  1. El origen tecnico de Linux aún se percibe; antes de que puedas creerlo, estarás abriendo una “Terminal” de Linux y escribiendo comandos. Algo que nunca harías con Windows .
  2. No es muy comun su uso en Compañias, por lo que generalmente se usa para trabajar desde Casa, asi que debes hacer ajustes laboriosos.
  3. A la hora de trabajar con documentos de Windows complejos, se podria convertir en una tareas dificil o casi imposible debido a la poca compatibilidad para importar desde Windows para Linux.
  4. Instalar controladores de Hardware y programas resulta ser mas complicado que en Windows. Esto debido a que las empresas creadoras de controladores crean sus productos en base a Windows, el sistema operativo mas usado a nivel mundial.
  5. Muchos juegos no se ejecutan en Linux así que olvídate de grandes Gráficos y poner a trabajar tu tarjeta de video al máximo. Claro existen sus excepciones.



WINDOWS





William Henry Gates III (nacido el 28 de octubre de 1955), más conocido como Bill Gates, es un empresario y filántropo estadounidense, cofundador de la empresa de software Microsoft, productora del sistema operativo para computadoras personales más utilizado en el mundo, Microsoft Windows.

Creó la empresa de software Microsoft el 4 de abril de 1975, siendo aún alumno en la Universidad Harvard. En 1976 abandonó la universidad y se trasladó a Albuquerque, sede de Altair, para pactar con esa empresa la cesión de un lenguaje para computadoras, el Basic, al 50% de las ventas. Al año siguiente, se enteró del éxito de la empresa Apple y de que necesitaban un intérprete de Basic.



Características


  • El desfragmentado funciona ahora de una forma parecida al antiguo "FastOpen" del D.O.S. (Rip) creando un fichero .log el cual contiene una relación de los programas mas usados, facilitando así su carga y ejecución más rápidas, guardando los clusters en el disco duro de una forma contigua.
  • La ayuda en línea es una nueva herramienta que nos ayudara a resolver posibles problemas de forma transparente y guiada, que incluye: Ayuda Online (PC), Ayuda a través de Internet con Acceso a la base de datos de Consultas de Microsoft (Knowledge Base), Actualización de componentes de win98 y drivers de forma que estando conectados a Internet el Windows Update Manager busca que drivers y componentes podemos actualizar para estar a la última y descargarlos de la red.
  • System File Checker Utility: muchas veces instalamos aplicaciones que sin saberlo nosotros cargan versiones antiguas de librerías, drivers,(*.dll, *.com, *.vxd, *.drv, *.ocx, *.inf, *.hlp) etc. produciendo fallos en nuestro PC, pues esta nueva utilidad se encarga de revisar que eso no ocurra.
  • Con el nuevo Tune-UP Wizard, podremos crear una serie de tareas relativas al mantenimiento del PC para que se ejecuten de una forma programada por nosotros.(scandisk, defrag, etc.)
  • Una nueva utilidad "Tshoot.exe", automatiza los pasos para diagnosticar correctamente la configuración de Windows98. Y dispone además del "MSInfo" donde se obtendrán los datos de la configuración del sistema para facilitar información al personal técnico, caso de que sea necesario. Incluye una versión mejorada de la utilidad Dr. Watson capaz de congelar el estado del PC antes de un cuelgue para luego poder determinar la causa del mismo.
  • El backup ha sido mejorado en seguridad y rapidez y ahora soporta también dispositivos de cinta SCSI para respaldo de las copias.
Ventajas


  • Es más conocido
  • Es el que tiene más software desarrollado…


Desventajas


  • El costo es muy alto
  • Las nuevas versiones requieren muchos recursos
  • La mayoría de los virus están hechos para windows
  • Puedes tener errores de compatibilidad en sistemas nuevos.
  • Históricamente es más inestable de los 3 

1 comentario: