U<br />n sistema operativo (SO) es el programa o conjunto de programas que efectúan la gestión de los procesos básicos de ...
Sistemas operativos
Sistemas operativos
Sistemas operativos
Sistemas operativos
Sistemas operativos
Sistemas operativos
Sistemas operativos
Sistemas operativos
Sistemas operativos
Sistemas operativos
Upcoming SlideShare
Loading in...5
×

Sistemas operativos

204

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
204
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Sistemas operativos"

  1. 1. U<br />n sistema operativo (SO) es el programa o conjunto de programas que efectúan la gestión de los procesos básicos de un sistema informático, y permite la normal ejecución del resto de las operaciones.1<br />Nótese que es un error común muy extendido denominar al conjunto completo de herramientas sistema operativo, es decir, la inclusión en el mismo término de programas como el explorador de ficheros, el navegador y todo tipo de herramientas que permiten la interacción con el sistema operativo, también llamado núcleo o  HYPERLINK "http://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)" o "Núcleo (informática)" kernel. <br />Uno de los más prominentes ejemplos de esta diferencia, es el núcleo Linux, que es el núcleo del sistema operativo GNU, del cual existen las llamadas distribuciones GNU. Este error de precisión, se debe a la modernización de la informática llevada a cabo a finales de los 80, cuando la filosofía de estructura básica de funcionamiento de los grandes computadores2 se rediseñó a fin de llevarla a los hogares y facilitar su uso, cambiando el concepto de computador multiusuario, (muchos usuarios al mismo tiempo) por un sistema monousuario (únicamente un usuario al mismo tiempo) más sencillo de <br />gestionar.3 (Véase  HYPERLINK "http://es.wikipedia.org/wiki/AmigaOS" o "AmigaOS" AmigaOS,  HYPERLINK "http://es.wikipedia.org/wiki/BeOS" o "BeOS" beOS o  HYPERLINK "http://es.wikipedia.org/wiki/MacOS" o "MacOS" MacOS como los pioneros4 de dicha modernización, cuando los Amiga, fueron bautizados con el sobrenombre de Video Toasters5 por su capacidad para la Edición de vídeo en entorno multitarea round robin, con gestión de miles de colores e interfaces intuitivos para diseño en 3D.<br />1501140-34290000Uno de los propósitos del sistema operativo que gestiona el núcleo intermediario consiste en gestionar los recursos de localización y protección de acceso del hardware, hecho que alivia a los programadores de aplicaciones de tener que tratar con estos detalles. Se encuentran en la mayoría de los aparatos electrónicos que utilizan microprocesadores para funcionar. (teléfonos móviles, reproductores de DVD, computadoras, radios, etc.).<br />Perspectiva histórica<br />Los primeros sistemas (1945-1960) eran grandes máquinas operadas desde la consola maestra por los programadores. Durante la década siguiente (1950-1960) se llevaron a cabo avances en elhardware: lectoras de tarjetas, impresoras, cintas magnéticas, etc. Esto a su vez provocó un avance en el software: compiladores, ensambladores, cargadores, manejadores de dispositivos, etc.<br />A finales de los años 80, una computadora  HYPERLINK "http://es.wikipedia.org/wiki/Commodore_Amiga" o "Commodore Amiga" Commodore Amiga equipada con una aceleradora Video Toaster era capaz de producir efectos comparados a sistemas dedicados que costaban el triple. Un Video Toaster junto a Lightwave ayudó a producir muchos programas de televisión y películas, entre las que se incluyen  HYPERLINK "http://es.wikipedia.org/wiki/Babylon_5" o "Babylon 5" Babylon 5,  HYPERLINK "http://es.wikipedia.org/wiki/Seaquest_DSV" o "Seaquest DSV" Seaquest DSV y  HYPERLINK "http://es.wikipedia.org/wiki/Terminator_II" o "Terminator II" Terminator II.6Problemas de explotación y soluciones iniciales<br />El problema principal de los primeros sistemas era la baja utilización de los mismos, la primera solución fue poner un operador profesional que lo manejase, con lo que se eliminaron las hojas de reserva, se ahorró tiempo y se aumentó la velocidad.<br />Para ello, los trabajos se agrupaban de forma manual en lotes mediante lo que se conoce como procesamiento por lotes (batch) sin automatizar.<br />Monitores residentes<br />Según fue avanzando la complejidad de los programas, fue necesario implementar soluciones que automatizaran la organización de tareas sin necesidad de un operador. Debido a ello se crearon los monitores residentes: programas que residían en memoria y que gestionaban la ejecución de una cola de trabajos.<br />Un monitor residente estaba compuesto por un cargador, un Intérprete de comandos y un Controlador (drivers) para el manejo de entrada/salida.<br />Sistemas con almacenamiento temporal de E/S<br />Los avances en el hardware crearon el soporte de interrupciones y posteriormente se llevó a cabo un intento de solución más avanzado: solapar la E/S de un trabajo con sus propios cálculos, por lo que se creó el sistema de buffers con el siguiente funcionamiento:<br />Un programa escribe su salida en un área de memoria (buffer 1).<br />El monitor residente inicia la salida desde el buffer y el programa de aplicación calcula depositando la salida en el buffer 2.<br />La salida desde el buffer 1 termina y el nuevo cálculo también.<br />Se inicia la salida desde el buffer 2 y otro nuevo cálculo dirige su salida al buffer 1.<br />El proceso se puede repetir de nuevo.<br />Los problemas surgen si hay muchas más operaciones de cálculo que de E/S (limitado por la CPU) o si por el contrario hay muchas más operaciones de E/S que cálculo (limitado por la E/S).<br />Los avances en el hardware crearon el soporte de interrupciones y posteriormente se llevó a cabo un intento de solución más avanzado: solapar la E/S de un trabajo con sus propios cálculos, por lo que se creó el sistema de buffers con el siguiente funcionamiento:<br />Sistemas operativos multiprogramados<br />Surge un nuevo avance en el hardware: el hardware con protección de memoria. Lo que ofrece nuevas soluciones a los problemas de rendimiento:<br />Se solapa el cálculo de unos trabajos con la entrada/salida de otros trabajos.<br />Se pueden mantener en memoria varios programas.<br />Se asigna el uso de la CPU a los diferentes programas en memoria.<br />Debido a los cambios anteriores, se producen cambios en el monitor residente, con lo que éste debe abordar nuevas tareas, naciendo lo que se denomina como Sistemas Operativos multiprogramados, los cuales cumplen con las siguientes funciones:<br />Administrar la memoria.<br />Gestionar el uso de la CPU (planificación).<br />Administrar el uso de los dispositivos de E/S.<br />Cuando desempeña esas tareas, el monitor residente se transforma en un sistema operativo multiprogramado.<br />Llamadas al sistema operativo<br />efinición breve: llamadas que ejecutan los programas de aplicación para pedir algún servicio al SO.<br />Cada SO implementa un conjunto propio de llamadas al sistema. Ese conjunto de llamadas es la interfaz del SO frente a las aplicaciones. Constituyen el lenguaje que deben usar las aplicaciones para comunicarse con el SO. Por ello si cambiamos de SO, y abrimos un programa diseñado para trabajar sobre el anterior, en general el programa no funcionará, a no ser que el nuevo SO tenga la misma interfaz. Para ello:<br />Las llamadas correspondientes deben tener el mismo formato.<br />Cada llamada al nuevo SO tiene que dar los mismos resultados que la correspondiente del anterior.<br />00GESTION DE PROCESOS.00GESTION DE PROCESOS.<br />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 SO es el responsable de:<br />Crear y destruir los procesos.<br />Parar y reanudar los procesos.<br />Ofrecer mecanismos para que se comuniquen y sincronicen.<br />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.<br />Sistema de Archivos en UNIX<br />El sistema de archivos de UNIX, desde el punto de vista del usuario, tiene una organización jerárquica o de árbol invertido que parte de una raíz conocida como "/" (diagonal). Es una diagonal al revés que la usada en DOS. Internamente se usa un sistema de direccionamiento de archivos de varios niveles, cuya estructura más primitiva se le llama 'information node' (i-node) cuya explicación va más allá de este trabajo. El sistema de archivos de UNIX ofreceun poderoso conjunto de comandos y llamadas al sistema. En la tabla 8.2 se muestran los comandos más útiles para el manejo de archivos en UNIX vs. VMS.<br />Comando en UNIXComando en VMSUtilidadrmdeleteborra archivoscpbcopycopia archivosmvrenamerenombra archivoslsdirlista directoriomkdircreate/directorycrea un directoriormdirdeleteborra directorioln-crea una 'liga simbolica'chmodset protectionmaneja los permisoschownset uiccambia de dueño<br />Microsoft Windows es el nombre de una serie de sistemas operativos desarrollados por Microsoft desde 1981, año en que el proyecto se denominaba«Interface Manager».<br />Anunciado en 1983, Microsoft comercializó por primera vez el entorno operativo denominado Windows en noviembre de 1985 como complemento paraMS-DOS, en respuesta al creciente interés del mercado en una interfaz gráfica de usuario (GUI).1 Microsoft Windows llegó a dominar el mercado de ordenadores personales del mundo, superando a Mac OS, el cual había sido introducido previamente a Windows. En octubre de 2009, Windows tenía aproximadamente el 91% de la cuota de mercado de sistemas operativos en equipos cliente que acceden a Internet.2 3 4 Las versiones más recientes de Windows son Windows 7 para equipos de escritorio, Windows Server 2008 R2 para servidores y Windows Phone 7 para dispositivos móviles.<br /> <br />1691640178625500GNU/Linux <br />es uno de los términos empleados para referirse a la combinación del núcleo o kernel libre similar a Unix denominado Linux, que es usado con herramientas de sistema GNU. Su desarrollo es uno de los ejemplos más prominentes de software libre; todo su código fuente puede ser utilizado, modificado y redistribuido libremente por cualquiera bajo los términos de la GPL (Licencia Pública General de GNU, en inglés: General Public License) y otra serie de licencias libres.1<br />A pesar de que Linux (núcleo) es, en sentido estricto, el sistema operativo,2 parte fundamental de la interacción entre el núcleo y el usuario (o los programas de aplicación) se maneja usualmente con las herramientas del proyecto GNU o de otros proyectos como GNOME. Sin embargo, una parte significativa de la comunidad, así como muchos medios generales y especializados, prefieren utilizar el término Linux para referirse a la unión de ambos proyectos. Para más información consulte la sección "Denominación GNU/Linux" o el artículo "Controversia por la denominación GNU/Linux".<br />A las variantes de esta unión de programas y tecnologías, a las que se les adicionan diversos programas de aplicación de propósitos específicos o generales se las denomina distribuciones. Su objetivo consiste en ofrecer ediciones que cumplan con las necesidades de un determinado grupo de usuarios. Algunas de ellas son especialmente conocidas por su uso en servidores y supercomputadoras.3 donde tiene la cuota mas importante del mercado. Según un informe de IDC, GNU/Linux es utilizado por el 78% de los principales 500 servidores del mundo,4 otro informe le da una cuota de mercado de % 89 en los 500 mayores supercomputadores.5 Con menor cuota de mercado el sistema GNU/Linux también es usado en el segmento de las computadoras de escritorio, portátiles, computadoras de bolsillo, teléfonos móviles, sistemas embebidos, videoconsolas y otros dispositivos. <br />Android <br />Es un sistema operativo basado en Linux para dispositivos móviles, tales como teléfonos inteligentes o  HYPERLINK "http://es.wikipedia.org/wiki/Tablet_PC" o "Tablet PC" tablets. Fue desarrollado inicialmente por  HYPERLINK "http://es.wikipedia.org/wiki/Android_Inc." o "Android Inc." Android Inc., una firma comprada por Google en 2005.7 Es el principal producto de la Open Handset Alliance, un conglomerado de fabricantes y desarrolladores de hardware, software y operadores de servicio.8 Las unidades vendidas de teléfonos inteligentes con Android se ubican en el primer puesto en los Estados Unidos, en el segundo y tercer trimestres de 2010,9 10 11 con una cuota de mercado de 43,6% en el tercer trimestre.12<br />Android tiene una gran comunidad de desarrolladores escribiendo aplicaciones para extender la funcionalidad de los dispositivos. A la fecha, existen cerca de 200.000 aplicaciones disponibles para Android.13 14  HYPERLINK "http://es.wikipedia.org/wiki/Android_Market" o "Android Market" Android Market es la tienda de aplicaciones en línea administrada por Google, aunque existe la posibilidad de obtener software externamente. Los programas están escritos en el lenguaje de programación Java.15 En el tema del malware, ya existen varios para este sistema.16<br />El anuncio del sistema Android se realizó el 5 de noviembre de 2007 junto con la creación de la Open Handset Alliance, un consorcio de 78 compañías de hardware, software y telecomunicaciones dedicadas al desarrollo de estándares abiertos para dispositivos móviles.17 18 Google liberó la mayoría del código de Android bajo la licencia Apache, una licencia libre y de código abierto.19 Actualmente Android posee el 32,9% de cuota de mercado a escala mundial de los teléfonos inteligentes, por delante de  HYPERLINK "http://es.wikipedia.org/wiki/Symbian_OS" o "Symbian OS" Symbian OS que tiene 30,6%. En tercer lugar se sitúa Apple con cuota de mercado del 16%.<br />La estructura del sistema operativo Android se compone de aplicaciones que se ejecutan en un  HYPERLINK "http://es.wikipedia.org/wiki/Framework" o "Framework" framework Java de aplicaciones orientadas a objetos sobre el núcleo de las bibliotecas de Java en una máquina virtual Dalvik con compilación en tiempo de ejecución. Las bibliotecas escritas en lenguaje C incluyen un administrador de interfaz gráfica (surface manager), un framework OpenCore, una base de datos relacional SQLite, una API gráfica OpenGL ES 2.0 3D, un motor de renderizado WebKit, un motor gráfico SGL, SSL y una biblioteca estándar de C  HYPERLINK "http://es.wikipedia.org/wiki/Bionic" o "Bionic" Bionic. El sistema operativo está compuesto por 12 millones de líneas de código, incluyendo 3 millones de líneas de XML, 2,8 millones de líneas de lenguaje C, 2,1 millones de líneas de Java y 1,75 millones de líneas de C++.<br />50038036703000<br />

×