Alfonso Cabello Torres - Sistemas Operativos

Sistemas Operativos Alfonso Cabello Torres 1º STi I.E.S FERNANDO AGUILAR QUIGNON 1 Sistemas Operativos 1.- ¿Qué es

Views 32 Downloads 0 File size 332KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Sistemas Operativos

Alfonso Cabello Torres 1º STi I.E.S FERNANDO AGUILAR QUIGNON

1

Sistemas Operativos

1.- ¿Qué es el sistema operativo? Un sistema operativo (SO o OS, del inglés Operating System) es el software principal o conjunto de programas de un sistema informático que gestiona los recursos de hardware y provee servicios a los programas de aplicación de software, ejecutándose en modo privilegiado respecto de los restantes, permitiendo así la comunicación entre el usuario y el ordenador. Los otros programas son llamados aplicaciones. Resumiendo, un SO es el encargado de gestionar el software y el hardware de un ordenador o computadora.

1.1.- Componentes y funciones de un sistema operativo - Gestión de procesos: Un proceso es simplemente, un programa en ejecución que necesita recursos para realizar su tarea: tiempo de CPU, memoria, archivos y dispositivos de E/S. El S.O. es el responsable de lo siguiente: o Crear y destruir procesos. o Parar y reanudar procesos. Ofrecer mecanismos para que los procesos puedan comunicarse y se sincronicen. La gestión de procesos podría ser similar al trabajo de oficina. Se puede tener una lista de tareas a realizar y a estas fijarles prioridades: alta, media, baja, por ejemplo. Debemos comenzar haciendo las tareas de prioridad alta primero y cuando se terminen seguir con las de prioridad media y después las de baja. Una vez realizada la tarea se tacha. Esto puede traer un problema que las tareas de baja prioridad pueden que nunca lleguen a ejecutarse y permanezcan en la lista para siempre. Para solucionar esto, se puede asignar alta prioridad a las tareas más antiguas. - Gestión de la memoria principal: La memoria es una gran tabla de palabras o bytes que se referencia cada una mediante una dirección única. Este almacén de datos de rápido acceso es compartido por la CPU y los dispositivos de E/S, es volátil y pierde su contenido ante fallos del sistema. El S.O. es el responsable de: o Conocer qué partes de la memoria están siendo utilizadas y por quién.

2

Sistemas Operativos

o Decidir qué procesos se cargarán en memoria cuando haya espacio disponible. o Asignar y reclamar espacio de memoria cuando sea necesario.

- Gestión del almacenamiento secundario: Un sistema de almacenamiento secundario es necesario, ya que la memoria principal (almacenamiento primario) es volátil y además muy pequeña para almacenar todos los programas y datos. También es necesario mantener los datos que no convenga mantener en la memoria principal. El S.O. se encarga de: o Planificar los discos. o Gestionar el espacio libre. o Asignar el almacenamiento. o Verificar que los datos se guarden en orden.

- El sistema de entrada y salida: Consiste en un sistema de almacenamiento temporal (caché), una interfaz de manejadores de dispositivos y otra para dispositivos concretos. El sistema operativo debe gestionar el almacenamiento temporal de E/S y servir las interrupciones de los dispositivos de E/S.

- Sistema de archivos: Los archivos son colecciones de información relacionada, definidas por sus creadores. Estos almacenan programas (en código fuente y objeto) y datos tales como imágenes, textos, información de bases de datos, etc. El SO es responsable de: o Construir, eliminar archivos y directorios. o Ofrecer funciones para manipular archivos y directorios. o Establecer la correspondencia entre archivos y unidades de almacenamiento. o Realizar copias de seguridad de archivos. Existen diferentes sistemas de archivos, es decir, existen diferentes formas de organizar la información que se almacena en las memorias (normalmente discos) de los ordenadores. Por ejemplo, existen los sistemas de archivos FAT, FAT32, ext3, NTFS, XFS, etc.

3

Sistemas Operativos

Desde el punto de vista del usuario estas diferencias pueden parecer insignificantes a primera vista, sin embargo, existen diferencias muy importantes. Por ejemplo, los sistemas de ficheros FAT32 y NTFS, que se utilizan fundamentalmente en sistemas operativos de Microsoft, tienen una gran diferencia para un usuario que utilice una base de datos con bastante información ya que el tamaño máximo de un fichero con un sistema de archivos FAT32 está limitado a 4 gigabytes, sin embargo, en un sistema NTFS el tamaño es considerablemente mayor. - Sistemas de protección: Mecanismo que controla el acceso de los programas o los usuarios a los recursos del sistema. El SO se encarga de: o Distinguir entre uso autorizado y no autorizado. Especificar los controles de seguridad a realizar. o Forzar el uso de estos mecanismos de protección.

- Sistema de comunicaciones: Para mantener las comunicaciones con otros sistemas es necesario poder controlar el envío y recepción de información a través de las interfaces de red. También hay que crear y mantener puntos de comunicación que sirvan a las aplicaciones para enviar y recibir información, y crear y mantener conexiones virtuales entre aplicaciones que están ejecutándose localmente y otras que lo hacen remotamente.

- Programas de sistema: Son aplicaciones de utilidad que se suministran con el S.O. pero no forman parte de él. Ofrecen un entorno útil para el desarrollo y ejecución de programas, siendo algunas de las tareas que realizan: o Manipulación y modificación de archivos. o Información del estado del sistema. o Soporte a lenguajes de programación. o Comunicaciones.

4

Sistemas Operativos

- Gestor de recursos: Como gestor de recursos, el sistema operativo administra: o La unidad central de procesamiento (donde está alojado el microprocesador). o Los dispositivos de entrada y salida. o La memoria principal (o de acceso directo). o Los discos (o memoria secundaria). o Los procesos (o programas en ejecución). o Y en general todos los recursos del sistema.

2.- Fabricantes de sistemas operativos Aquí aparecen los principales fabricantes de sistemas operativos a lo largo del tiempo: - Microsoft/Windows: Microsoft fue creado en 1975 por Bill Gates y Paul Allen, fundadores de la misma empresa. En agosto de 1985, Microsoft e IBM colaboraron en el desarrollo de una familia de sistemas operativos diferentes llamados OS/2.26 El 20 de noviembre de 1985, Microsoft lanzó la primera versión para minoristas de su sistema operativo Microsoft Windows. Originalmente, Windows no era más que una extensión gráfica para MS-DOS. A partir de ahí, estos la mayoría de sistemas opererativos de Windows que Microsoft ha sacado al mercado: o Windows 1.0, 2.0, 3.0, NT, NT 3.1, NT 3.5/3.51, NT 4.0, 95, 98, 2000, ME, XP, VISTA, 7, 8, 10

- Apple/OS X: OS X, llamado antes Mac OS X, es un sistema operativo basado en Unix, desarrollado, comercializado y vendido por Apple Inc. Ha sido incluido en su gama de computadores Macintosh desde el año de 2002. OS X es el sucesor del Mac OS 9, es el sistema operativo de apple desde 1984. Está basado en BSD y se construyó sobre las tecnologías desarrolladas en NeXT entre la segunda mitas de los 80’s y finales de 1996, cuando Apple afquirió esta compañía. Desde la versión Mac OS X 10.5 Leopard para procesadores Intel, el sistema tiene la certifiacación UNIX 03.

5

Sistemas Operativos

- Sun Microsystems/Solaris: fue una empresa informática que se dedicaba a vender estaciones de trabajo, servidores, componentes informáticos, software y servicios informáticos. Solaris es un sistema operativo de tipo Unix desarrollado por Sun Microsystems desde 1992 como sucesor de SunOS. Es un sistema certificado oficialmente como versión de Unix. Funciona en arquitecturas SPARC y x86 para servidores y estaciones de trabajo. o Sus demás sistemas operativos son: JavaFX Mobile, JavaFX Script, JavaOS, OpenWindows y SunOS.

- Linux Torvalds/Linux: Linux es un núcleo libre de sistema operativo basado en Unix. Es uno de los principales ejemplos de software libre y de código abierto. Linux está licenciado bajo la GPL v2 y está desarrollado por colaboradores de todo el mundo. o Sus sistemas operativos solo son 1 y va por versiones: Ubuntu.

- Unix: es un sistema operativo portable multitarea y multiusuario, desarrollado en 1969 por un grupo de empleados de los laboratorios Bell de AT&T, entre los que figuraban Ken Thompson, Dennis Ritchie y Douglas Mcilroy. El sistema, junto con todos los derechos, fueron vendidos a Novell, Inc. Esta vendió posteriormente el software a Santa Cruz Operation en 1995, y esta a su vez, lo revendió a Caldera Software en 2001, Empresa que posteriormente se convirtió en el grupo SCO. Sin embargo, Novell siempre argumentó que solo vendió los derechos de uso del software, pero que retuvo el copyrigtht sobre “UNIX®” En 2010, y tras una larga batalla legal, ésta ha pasado nuevamente a ser propiedad de Novell. - Novell Inc: es una compañía de origen estadounidense dedicada al software, específicamente en el área de sistemas operativos de redes, como Novell Netware y Linux, entre otras ramas de la

6

Sistemas Operativos

tecnología. Es la empresa dueña de los derechos de la distribución SuSE Linux y NLD. Cuando las redes informáticas comenzaron a masificarse, su sistema operativo de red Novell Netware era uno de los más utilizados, hasta que fue desplazado por la aparición de Windows NT, de Microsoft.

3.- Clasificación de S.O. Los S.O. se pueden clasificar según diferentes criterios: - Según su interfaz de usuario: o Interfaz de línea de comandos: Es la forma de interfaz entre el sistema operativo y el usuario en la que este escribe los comandos utilizando un lenguaje de comandos especial. o Interfaz gráfica: Es el tipo de visualización que permite al usuario elegir comandos, iniciar programas y ver listas de archivos y otras opciones utilizando las representaciones visuales (iconos) y las listas de elementos del menú. - Según el número de tareas: o Multitarea: Es el modo de funcionamiento disponible en algunos sistemas operativos, mediante el cual una computadora procesa varias tareas al mismo tiempo. o Monotarea: Solo pueden manejar un proceso en cada momento o solo puede ejecutar las tareas de una en una. - Según el número de tareas: o Monousuario: Son aquellos que nada más puede atender a un solo usuario, gracias a las limitaciones creadas por el hardware, los programas o el tipo de aplicación que se esté ejecutando. o Multiusuario: Cumplen simultáneamente las necesidades de dos o más usuarios, que comparten mismos recursos. Este tipo de sistemas se emplean especialmente en redes.

7

Sistemas Operativos

- Según su estructura: o Monolítica: Es la estructura de los primeros 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. o Jerárquica: Una parte del sistema contiene subpartes y esto se organiza en forma de niveles. o Cliente-Servidor: puede ser ejecutado en la mayoría de las computadoras, ya sean grandes o pequeñas. Este sistema sirve para toda clase de aplicaciones. o Máquina Virtual: Se trata de un tipo de sistemas operativos que presentan una interface a cada proceso, mostrando una máquina que parece idéntica a la máquina real subyacente. - Según su distribución comercial: o Sistema operativo de red: tiene la capacidad de interactuar con sistemas operativos en otros ordenadores a través de un medio de transmisión con el objeto de intercambiar información, transferir archivos, ejecutar comandos remotos y un sin fin de otras actividades. o 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 máquina virtual que el usuario accesa en forma transparente. - Según su capacidad para gestionar redes: o Uniproceso: Es capaz de manejar solamente un procesador del ordenador, de manera que si el ordenador tuviese más de uno le sería inútil. o Multiproceso: Se refiere al número de procesadores del sistema, que es más de uno y éste es capaz de usarlos todos para distribuir su carga de trabajo.

8

Sistemas Operativos

3.1.- Sistemas operativos de red Un sistema de red operativo, también llamado N.O.S (Network Operating System), es un software que permite la interconexión de ordenadores para poder acceder a los servicios y recursos, hardware y software, creando redes de computadoras. Al igual que un equipo no puede trabajar sin un sistema operativo, una red de equipos no puede funcionar sin un sistema operativo de red. Consiste en un software que posibilita la comunicación de un sistema informático con otros equipos en el ámbito de una red. Las características genéricas de un sistema operativo de red son: - Conecta todos los equipos y recursos de la red. - Gestión de usuarios centralizada. - Proporciona seguridad, controlando el acceso a los datos y recursos. Debe validar los accesos (claves, certificados, sistemas biométricos, etc.) y aplicar las políticas de seguridad. - Coordina las funciones de red, incluso con las propias del equipo. - Comparte recursos (lleva a cabo la coordinación y los privilegios a la hora de compartir). Por tanto, mejora notablemente la utilización de los recursos. - Permite monitorizar y gestionar la red y sus componentes.

Los componentes de los sistemas operativos de red habitualmente son: - Servidores: Son equipos con sistemas operativos en red que proporcionan recursos a los clientes, haciéndolos accesibles a los equipos de la red, sea a otros servidores o, habitualmente, a clientes. - Clientes: Son equipos con un sistema operativo monopuesto conectados para empezar a trabajar en red. A diferencia de los servidores, no comparten sus recursos. - Dominios: Es una agrupación lógica de equipos, que permite realizar una gestión centralizada, es decir, desde una ubicación se controla los servicios administrativos del dominio. Los recursos los gestiona el servidor principal. Uno de los protocolos habituales para la formación de dominios es LDAP.

9

Sistemas Operativos

4.- Evolucion de los S.O. - 1ª. Etapa (1945-1955): Bulbos y conexiones. En la Segunda Guerra Mundial, a mitad de la década de los 40, Howard Aiken, John Von Newman, J. Prespe R. Eckert y Williams Mauchley entre otros, lograron construir máquinas de cálculo mediante bulbos. Estas máquinas eran enormes y llenaban cuartos completos con decenas de miles de bulbos, pero eran mucho más lentas que la computadora casera más económica en nuestros días. Toda la programación se llevaba a cabo en lenguaje de maquina absoluto y con frecuencia se utilizaban conexiones para controlar las funciones básicas de la máquina. Los lenguajes de programación eran desconocidos. El modo usual de operación consistía en que el programador reservaba cierto periodo en una hoja de reservación pegada a la pared, iba al cuarto de la máquina, insertaba su conexión a la computadora y pasaba unas horas esperando que ninguno de los 20,000 o más bulbos se quemara durante la ejecución. La inmensa mayoría de los problemas eran cálculos numéricos directos, por ejemplo, el cálculo de valores para tablas de senos y cosenos. A principio de la década de los 50's la rutina mejoro un poco con la introducción de las tarjetas perforadas. Fue entonces posible escribir los programas y leerlas en vez de insertar conexiones, por lo demás el proceso era el mismo. -

2ª. Etapa. (1955-1965): Transistores y Sistemas de Procesamiento por lotes. La introducción del transistor a mediados de los años 50 modifico en forma radical el panorama. Las computadoras se volvieron confiables de forma que podían fabricarse y venderse a clientes, con la esperanza de que ellas continuaran funcionando lo suficiente como para realizar un trabajo en forma. Dado el alto costo del equipo, no debe sorprender el hecho de que las personas buscaron en forma por demás rápidas vías para reducir el tiempo invertido. La solución que, por lo general se adoptó, fue la del sistema de procesamiento por lotes.

10

Sistemas Operativos

-

3ª Etapa (1965-1980): Circuitos integrados y multiprogramación. La 360 de IBM fue la primera línea principal de computadoras que utilizo los circuitos integrados, lo que proporciono una gran ventaja en el precio y desempeño con respecto a las máquinas de la segunda generación, construidas a partir de transistores individuales. Se trabajó con un sistema operativo enorme y extraordinariamente complejo. A pesar de su enorme tamaño y sus problemas el sistema operativo de la línea IBM 360 y los sistemas operativos similares de esta generación producidos por otros fabricantes de computadoras realmente pudieron satisfacer, en forma razonable a la mayoría de sus clientes. También popularizaron varias técnicas fundamentales, ausentes de los sistemas operativos de la segunda generación, de las cuales la más importante era la de multiprogramación. Otra característica era la capacidad de leer trabajos de las tarjetas al disco, tan pronto como llegara al cuarto de cómputo. Así, siempre que concluyera un trabajo el sistema operativo podía cargar un nuevo trabajo del disco en la partición que quedara desocupada y ejecutarlo.

- 4º Etapa (1980-Actualidad): Computadoras personales. Un interesante desarrollo que comenzó a llevarse a cabo a mediados de la década de los ochenta ha sido el crecimiento de las redes de computadoras personales, con sistemas operativos de red y sistemas operativos distribuidos. En los sistemas operativos de red, los usuarios están conscientes de la existencia de varias computadoras y pueden conectarse con máquinas remotas y copiar archivos de una maquina a otra. Cada máquina ejecuta su propio sistema operativo local y tiene su propio usuario. Por el contrario, un sistema operativo distribuido es aquel que aparece ante sus usuarios como un sistema tradicional de un solo procesador, aun cuando está compuesto por varios procesadores. En un sistema distribuido verdadero, los usuarios no deben ser conscientes del lugar donde su programa se ejecute o de lugar donde se encuentren sus archivos; eso debe ser manejado en forma automática y eficaz por el sistema operativo.