Você está na página 1de 28

Sistemas Operativos

ndice
1. Sistema operativo3
1

2. Historia de los sistemas operativos 3 3. Los tipos de sistemas operativos ..10 4. Llamadas al sistema operativo .13 5. Interrupciones y excepciones ...13 6. Componentes de un sistema operativo .15 7. Microsoft Windows.. 17 8. OS X .20 9. GNU/Linux.. 22 10. FreeBSD ...24 11. Unix ..25

Sistema Operativo
2

El sistema operativo (OS) es el programa que gestiona los recursos de una computadora, especialmente la asignacin de esos recursos entre otros programas. Los recursos tpicos incluyen la unidad de procesamiento central (CPU), la memoria de la computadora, el almacenamiento de archivos, los dispositivos de entrada/salida (e/s) y las conexiones de red. Las tareas de gestin incluyen el uso de recursos de programacin para evitar conflictos e interferencias entre los programas. A diferencia de la mayora de los programas, que completan una tarea y terminan, un sistema operativo se ejecuta de forma indefinida y termina nicamente cuando el ordenador se apaga. Uno de los propsitos del sistema operativo consiste en gestionar los recursos de localizacin y proteccin de acceso del hardware, hecho que alivia a los programadores de aplicaciones de tener que tratar con estos detalles. La mayora de aparatos electrnicos que utilizan microprocesadores para funcionar, llevan incorporado un sistema operativo (telfonos mviles, reproductores de DVD, computadoras, radios, enrutadores, etc.). En cuyo caso, son manejados mediante una Interfaz Grfica de Usuario, un gestor de ventanas o un entorno de escritorio, si es un celular, mediante una consola o control remoto si es un DVD y, mediante una lnea de comandos o navegador web si es un enrutador.

Interaccin entre el SO con el resto de las partes.

Historia de los sistemas operativos


Los sistemas operativos han ido evolucionando a travs de los aos. En las siguientes secciones analizaremos brevemente algunos de los hitos ms importantes. Como los sistemas operativos han estado estrechamente relacionados a travs de la historia con la arquitectura de las computadoras en las que se ejecutan, analizaremos generaciones sucesivas de computadoras para ver cmo eran sus sistemas operativos. La primera computadora digital verdadera fue diseada por el matemtico ingls Charles Babbage (de 1792 a 1871). Aunque Babbage gast la mayor parte de su vida y fortuna tratando de construir su mquina analtica, nunca logr hacer que funcionara de manera apropiada, debido a que era puramente mecnica y la tecnologa de su era no poda producir
3

las ruedas, engranes y dientes con la alta precisin que requera. Por supuesto, la mquina analtica no tena un sistema operativo.

La primera generacin (1945 a 1955): tubos al vaco


Despus de los esfuerzos infructuosos de Babbage, no hubo muchos progresos en la construccin de computadoras digitales sino hasta la Segunda Guerra Mundial, que estimul una explosin de esta actividad. El profesor John Atanasoff y su estudiante graduado Clifford Berry construyeron lo que ahora se conoce como la primera computadora digital funcional en Iowa State University. Utilizaba 300 tubos de vaco (bulbos). Aproximadamente al mismo tiempo, Konrad Zuse en Berln construy la computadora Z3 a partir de relevadores. En 1944, la mquina Colossus fue construida por un equipo de trabajo en Bletchley Park, Inglaterra; la Mark I, por Howard Aiken en Harvard, y la ENIAC, por William Mauchley y su estudiante graduado J. Presper Eckert en la Universidad de Pennsylvania. Algunas fueron binarias, otras utilizaron bulbos, algunas eran programables, pero todas eran muy primitivas y tardaban segundos en realizar incluso hasta el clculo ms simple. En estos primeros das, un solo grupo de personas diseaban, construan, programaban, operaban y daban mantenimiento a cada mquina. Toda la programacin se realizaba exclusivamente en lenguaje mquina o creando circuitos elctricos mediante la conexin de miles de cables a tableros de conexiones para controlar las funciones bsicas de la mquina. Los lenguajes de programacin eran desconocidos. Los sistemas operativos tambin se desconocan. El modo usual de operacin consista en que el programador trabajaba un periodo dado, registrndose en una hoja de firmas, y despus entraba al cuarto de mquinas, insertaba su tablero de conexiones en la computadora e inverta varias horas esperando a que terminara la ejecucin. Prcticamente todos los problemas eran clculos numricos bastante simples, como obtener tablas de senos, cosenos y logaritmos. A principios de la dcada de 1950, la rutina haba mejorado un poco con la introduccin de las tarjetas perforadas. Entonces fue posible escribir programas en tarjetas y leerlas en vez de usar tableros de conexiones; aparte de esto, el procedimiento era el mismo.

La segunda generacin (1955 a 1965): transistores y sistemas de procesamiento por lotes


La introduccin del transistor a mediados de la dcada de 1950 cambi radicalmente el panorama. Las computadoras se volvieron lo bastante confiables como para poder fabricarlas y venderlas a clientes dispuestos a pagar por ellas, con la expectativa de que seguiran funcionando el tiempo suficiente como para poder llevar a cabo una cantidad til de trabajo. Por primera vez haba una clara separacin entre los diseadores, constructores, operadores, programadores y el personal de mantenimiento. Estas mquinas, ahora conocidas como mainframes, estaban encerradas en cuartos especiales con aire acondicionado y grupos de operadores profesionales para manejarlas. Slo las empresas grandes, universidades o agencias gubernamentales importantes podan financiar el costo multimillonario de operar estas mquinas. Para ejecutar un programa o conjunto de programas, el programador primero escriba el programa en papel y despus lo pasaba a tarjetas perforadas. Luego llevaba el conjunto de tarjetas al cuarto de entrada de datos y lo entregaba a uno de los operadores. Cuando la computadora terminaba el trabajo que estaba ejecutando en un momento dado, un operador iba a la impresora y arrancaba las hojas de resultados para llevarlas al cuarto de salida de datos, para que el programador pudiera recogerlas posteriormente. Entonces, el operador tomaba uno de los conjuntos de tarjetas que se haban trado del cuarto de entrada y las introduca en la mquina. Se desperdiciaba mucho tiempo de la computadora mientras los operadores caminaban de un lado a otro del cuarto de la mquina.
4

Se buscaron rpidamente formas de reducir el tiempo desperdiciado. La solucin que se adopt en forma general fue el sistema de procesamiento por lotes. La idea detrs de este concepto era recolectar una bandeja llena de trabajos en el cuarto de entrada de datos y luego pasarlos a una cinta magntica mediante el uso de una pequea computadora relativamente econmica, tal como la IBM 1401, que era muy adecuada para leer las tarjetas, copiar cintas e imprimir los resultados, pero no tan buena para los clculos numricos. Para llevar a cabo los clculos numricos se utilizaron otras mquinas mucho ms costosas, como la IBM 7094. Despus de aproximadamente una hora de recolectar un lote de trabajos, las tarjetas se lean y se colocaban en una cinta magntica, la cual se llevaba al cuarto de mquinas, en donde se montaba en una unidad de cinta. Despus, el operador cargaba un programa especial (el ancestro del sistema operativo de hoy en da), el cual lea el primer trabajo de la cinta y lo ejecutaba. Los resultados se escriban en una segunda cinta, en vez de imprimirlos. Despus de que terminaba cada trabajo, el sistema operativo lea de manera automtica el siguiente trabajo de la cinta y empezaba a ejecutarlo. Cuando se terminaba de ejecutar todo el lote, el operador quitaba las cintas de entrada y de salida, reemplazaba la cinta de entrada con el siguiente lote y llevaba la cinta de salida a una 1401 para imprimir fuera de lnea (es decir, sin conexin con la computadora principal).

Uno de los primeros sistemas de procesamiento por lotes. a) Los programadores llevan las tarjetas a la 1401. b) La 1401 lee los lotes de trabajos y los coloca en cinta. c) El operador lleva la cinta de entrada a la 7094. d) La 7094 realiza los clculos. e) El operador lleva la cinta de salida a la 1401. f) La 1401 imprime los resultados

Fichas en lenguaje de procesamiento por lotes, con programa y datos, para ejecucin secuencial.

Las computadoras grandes de segunda generacin se utilizaron principalmente para clculos cientficos y de ingeniera, tales como resolver ecuaciones diferenciales parciales que surgen a menudo en fsica e ingeniera. Los sistemas operativos tpicos eran FMS (Fortran Monitor System) e IBSYS, el sistema operativo de IBM para la 7094.
5

La tercera generacin (1965 a 1980): circuitos integrados y multiprogramacin


A principio de la dcada de 1960, la mayora de los fabricantes de computadoras tenan dos lneas de productos distintas e incompatibles. Por una parte estaban las computadoras cientficas a gran escala orientadas a palabras, como la 7094, que se utilizaban para clculos numricos en ciencia e ingeniera. Por otro lado, estaban las computadoras comerciales orientadas a caracteres, como la 1401, que se utilizaban ampliamente para ordenar cintas e imprimir datos en los bancos y las compaas de seguros. Desarrollar y dar mantenimiento a dos lneas de productos completamente distintos era una propuesta costosa para los fabricantes. Adems, muchos nuevos clientes de computadoras necesitaban al principio un equipo pequeo, pero ms adelante ya no era suficiente y deseaban una mquina ms grande que pudiera ejecutar todos sus programas anteriores, pero con mayor rapidez. IBM intent resolver ambos problemas con la introduccin de la lnea de computadoras System/360. La 360 era una serie de mquinas compatibles con el software, que variaban desde un tamao similar a la 1401 hasta algunas que eran ms potentes que la 7094. Las mquinas slo diferan en el precio y rendimiento (mxima memoria, velocidad del procesador, nmero de dispositivos de E/S permitidos, etctera). Como todas las mquinas tenan la misma arquitectura y el mismo conjunto de instrucciones, los programas escritos para una mquina podan ejecutarse en todas las dems en teora. La 360 se dise para manejar tanto la computacin cientfica (es decir, numrica) como comercial. Por ende, una sola familia de mquinas poda satisfacer las necesidades de todos los clientes. La IBM 360 fue la primera lnea importante de computadoras en utilizar circuitos integrados (ICs) (a pequea escala), con lo cual se pudo ofrecer una mayor ventaja de precio/rendimiento en comparacin con las mquinas de segunda generacin, las cuales fueron construidas a partir de transistores individuales. Su xito fue inmediato y la idea de una familia de computadoras compatibles pronto fue adoptada por todos los dems fabricantes importantes. Los descendientes de estas mquinas se siguen utilizando hoy da en centros de cmputo. La mayor fortaleza de la idea de una sola familia fue al mismo tiempo su mayor debilidad. La intencin era que todo el software, incluyendo al sistema operativo OS/360, funcionara en todos los modelos. Deba ejecutarse en los sistemas pequeos, y en los sistemas muy grandes. Tena que ser bueno en sistemas con pocos dispositivos perifricos y en sistemas con muchos. Tena que funcionar en ambos entornos comerciales y cientficos. Por encima de todo, tena que ser eficiente para todos estos usos distintos. No haba forma en que IBM pudiera escribir una pieza de software que cumpliera con todos estos requerimientos en conflicto. El resultado fue un enorme y extraordinariamente complejo sistema operativo, de dos a tres rdenes de magnitud ms grande que el FMS. Consista en millones de lneas de lenguaje ensamblador escrito por miles de programadores, con miles de errores, los cuales requeran un flujo continuo de nuevas versiones en un intento por corregirlos. Cada nueva versin correga algunos errores e introduca otros, por lo que probablemente el nmero de errores permaneca constante en el tiempo. A pesar de su enorme tamao y sus problemas, el OS/360 y los sistemas operativos similares de tercera generacin producidos por otros fabricantes de computadoras en realidad dejaban razonablemente satisfechos a la mayora de sus clientes. Tambin popularizaron varias tcnicas clave ausentes en los sistemas operativos de segunda generacin. La ms importante de stas fue la multiprogramacin la cual consiste en particionar la memoria en varias piezas, con un proceso distinto en cada particin de modo que puedan ser ejecutados a la vez por el procesador o CPU.
6

Un sistema de multiprogramacin con tres trabajos en memoria.

Otra caracterstica importante de los sistemas operativos de tercera generacin fue la capacidad para leer trabajos en tarjetas y colocarlos en el disco tan pronto como se llevaban al cuarto de computadoras. As, cada vez que terminaba un trabajo en ejecucin, el sistema operativo poda cargar un nuevo trabajo del disco en la particin que entonces estaba vaca y lo ejecutaba. A esta tcnica se le conoce como spooling (de Simultaneous Peripheral Operation On Line, operacin perifrica simultnea en lnea) y tambin se utiliz para las operaciones de salida. Aunque los sistemas operativos de tercera generacin eran apropiados para los clculos cientficos extensos y las ejecuciones de procesamiento de datos comerciales masivos, seguan siendo en esencia sistemas de procesamiento por lotes. El deseo de obtener un tiempo rpido de respuesta allan el camino para el tiempo compartido (timesharing), una variante de la multiprogramacin donde cada usuario tena una terminal en lnea. El primer sistema de tiempo compartido de propsito general, conocido como CTSS (Compatible Time Sharing System, Sistema compatible de tiempo compartido), se desarroll en el M.I.T. en una 7094 modificada en forma especial. Sin embargo, en realidad el tiempo compartido no se populariz sino hasta que el hardware de proteccin necesario se empez a utilizar ampliamente durante la tercera generacin. Despus del xito del sistema CTSS, el M.I.T., Bell Labs y General Electric (que en ese entonces era un importante fabricante de computadoras) decidieron emprender el desarrollo de una utilera para computadora, una mquina capaz de servir a varios cientos de usuarios simultneos de tiempo compartido. Los diseadores del sistema conocido como MULTICS (MULTiplexed Information and Computing Service; Servicio de Informacin y Cmputo MULTiplexado), imaginaron una enorme mquina que proporcionaba poder de cmputo a todos los usuarios en el rea de Boston. MULTICS tuvo poco xito. A pesar de esto, MULTICS tuvo una enorme influencia en los sistemas operativos subsecuentes. Otro desarrollo importante durante la tercera generacin fue el increble crecimiento de las minicomputadoras, empezando con la DEC PDP-1 en 1961. Para cierta clase de trabajo no numrico, era casi tan rpida como la 7094 y dio origen a una nueva industria. A esta minicomputadora le sigui rpidamente una serie de otras PDP culminando con la PDP-11. Posteriormente, Ken Thompson, uno de los cientficos de cmputo en Bell Labs que trabaj en el proyecto MULTICS, encontr una pequea minicomputadora PDP-7 que nadie estaba usando y se dispuso a escribir una versin simple de MULTICS para un solo usuario. Ms adelante, este trabajo se convirti en el sistema operativo UNIX, que se hizo popular en el mundo acadmico, las agencias gubernamentales y muchas compaas. Debido a que el cdigo fuente estaba disponible ampliamente, varias organizaciones desarrollaron sus propias
7

versiones, lo cual produjo un caos. Se desarrollaron dos versiones principales: System V de AT&T y BSD (Berkeley Software Distribution, Distribucin de Software de Berkeley) de la Universidad de California en Berkeley. Estas versiones tenan tambin variantes menores. Para que fuera posible escribir programas que pudieran ejecutarse en cualquier sistema UNIX, el IEEE (Institute of Electrical and Electronics Engineers; Instituto de Ingenieros Elctricos y Electrnicos) desarroll un estndar para UNIX conocido como POSIX, con el que la mayora de las versiones de UNIX actuales cumplen. POSIX define una interfaz mnima de llamadas al sistema a la que los sistemas UNIX deben conformarse.

La cuarta generacin (1980 a la fecha): las computadoras personales


Con el desarrollo de los circuitos LSI (Large Scale Integration, Integracin a gran escala), que contienen miles de transistores en un centmetro cuadrado de silicio (chip), naci la era de la computadora personal. Mientras que la minicomputadora hizo posible que un departamento en una compaa o universidad tuviera su propia computadora, el chip microprocesador logr que un individuo tuviera su propia computadora personal. Cuando Intel present el microprocesador 8080 en 1974 (la primera CPU de 8 bits de propsito general), deseaba un sistema operativo, en parte para poder probarlo. Intel pidi a uno de sus consultores, Gary Kildall, que escribiera uno. Kildall y un amigo construyeron primero un dispositivo controlador para el disco flexible de 8 pulgadas de Shugart Associates que recin haba sido sacado al mercado, y conectaron el disco flexible con el 8080, con lo cual produjeron la primera microcomputadora con un disco. Despus Kildall escribi un sistema operativo basado en disco conocido como CP/M (Control Program for Microcomputers; Programa de Control para Microcomputadoras) para esta CPU. Como Intel no pens que las microcomputadoras basadas en disco tuvieran mucho futuro, cuando Kildall pidi los derechos para CP/M, Intel le concedi su peticin. Despus Kildall form una compaa llamada Digital Research para desarrollar y vender el CP/M. En 1977, Digital Research redise el CP/M para adaptarlo de manera que se pudiera ejecutar en todas las microcomputadoras que utilizaban los chips 8080, Zilog Z80 y otros. Se escribieron muchos programas de aplicacin para ejecutarse en CP/M, lo cual le permiti dominar por completo el mundo de la microcomputacin durante un tiempo aproximado de 5 aos.16 A principios de la dcada de 1980, IBM dise la IBM PC y busc software para ejecutarlo en ella. La gente de IBM se puso en contacto con Bill Gates para obtener una licencia de uso de su intrprete de BASIC. Tambin le preguntaron si saba de un sistema operativo que se ejecutara en la PC. Gates sugiri a IBM que se pusiera en contacto con Digital Research, que en ese entonces era la compaa con dominio mundial en el rea de sistemas operativos. Kildall rehus a reunirse con IBM y envi a uno de sus subordinados. Al no poder completarse el acuerdo, IBM regres con Gates para ver si poda proveerles un sistema operativo. Cuando IBM regres, Gates se haba enterado de que un fabricante local de computadoras, Seattle Computer Products, tena un sistema operativo adecuado conocido como DOS (Disk Operating System; Sistema Operativo en Disco). Se acerc a ellos y les ofreci comprarlo, a lo cual ellos accedieron. Despus Gates ofreci a IBM un paquete con DOS/BASIC, el cual acept. IBM quera ciertas modificaciones, por lo que Gates contrat a la persona que escribi el DOS, Tim Paterson, como empleado de su recin creada empresa de nombre Microsoft, para que las llevara a cabo. El sistema rediseado cambi su nombre a MS-DOS (Microsoft Disk Operating System; Sistema Operativo en Disco de MicroSoft) y rpidamente lleg a dominar el mercado de la IBM PC.

Para cuando sali al mercado en 1983 la IBM PC/AT, sucesora de la IBM PC, con la CPU Intel 80286, MS-DOS estaba muy afianzado. Ms adelante, MS-DOS se utiliz ampliamente en el 80386 y 80486. Aunque la versin inicial de MS-DOS era bastante primitiva, las versiones siguientes tenan caractersticas ms avanzadas, incluyendo muchas que se tomaron de UNIX. CP/M, MS-DOS y otros sistemas operativos para las primeras microcomputadoras se basaban en que los usuarios escribieran los comandos mediante el teclado. Con el tiempo esto cambi debido a la investigacin realizada por Doug Engelbart en el Stanford Research Institute en la dcada de 1960. Engelbart invent la Interfaz Grfica de Usuario GUI, completa con ventanas, iconos, mens y ratn. Los investigadores en Xerox PARC adoptaron estas ideas y las incorporaron en las mquinas que construyeron. Steve Jobs, co-inventor de la computadora Apple, visit PARC, vio una GUI y de inmediato se dio cuenta de su valor potencial, algo que la administracin de Xerox no hizo. Posteriormente, Jobs emprendi el proyecto de construir una Apple con una GUI. Este proyecto culmin en Lisa, que era demasiado costosa y fracas comercialmente. El segundo intento de Jobs, la Apple Macintosh, fue un enorme xito, no slo debido a que era mucho ms econmica que Lisa, sino tambin porque era amigable para el usuario (user friendly), lo cual significaba que estaba diseada para los usuarios que no slo no saban nada acerca de las computadoras, sino que adems no tenan ninguna intencin de aprender. En el mundo creativo del diseo grfico, la fotografa digital profesional y la produccin de video digital profesional, las Macintosh son ampliamente utilizadas. Cuando Microsoft decidi crear un sucesor para el MS-DOS estaba fuertemente influenciado por el xito de la Macintosh. Produjo un sistema basado en GUI llamado Windows, el cual en un principio se ejecutaba encima del MS-DOS. Durante cerca de 10 aos, de 1985 a 1995, Windows fue slo un entorno grfico encima de MS-DOS. Sin embargo, a partir de 1995 se liber una versin independiente de Windows, conocida como Windows 95, que incorporaba muchas caractersticas de los sistemas operativos y utilizaba el sistema MS-DOS subyacente slo para iniciar y ejecutar programas de MS-DOS antiguos. En 1998, se liber una versin ligeramente modificada de este sistema, conocida como Windows 98. Sin embargo, tanto Windows 95 como Windows 98 an contenan una gran cantidad de lenguaje ensamblador para los procesadores Intel de 16 bits. Otro de los sistemas operativos de Microsoft es Windows NT (NT significa Nueva Tecnologa), que es compatible con Windows 95 en cierto nivel, pero fue completamente rediseado en su interior. Es un sistema completo de 32 bits. Microsoft esperaba que la primera versin de NT acabara con MS-DOS y todas las dems versiones de Windows, ya que era un sistema muy superior, pero fracas. No fue sino hasta Windows NT4.0 que finalmente empez a tener xito, en especial en las redes corporativas. La versin 5 de Windows NT cambi su nombre a Windows 2000 a principios de 1999. Estaba destinada a ser el sucesor de Windows 98 y de Windows NT4.0. Esto tampoco funcion como se esperaba, por lo que Microsoft prepar otra versin de Windows 98 conocida como Windows Me (Millennium edition). En el 2001 se liber una versin ligeramente actualizada de Windows 2000, conocida como Windows XP. Esa versin dur mucho ms en el mercado (6 aos), reemplazando a casi todas las versiones anteriores de Windows. Despus, en enero del 2007 Microsoft liber el sucesor para Windows XP, conocido como Windows Vista. Presenta una interfaz grfica nueva, Aero, y muchos programas nuevos o actualizados. Esta versin fue objeto de muy severas crticas debido a su patente inestabilidad, sobredemanda de recursos de hardware, alto costo, y muy alta incompatibilidad con sus predecesores, hecho que no ocurra con stos. El 22 de octubre de 2009, Microsoft lanz Windows 7. A diferencia de su predecesor, Windows Vista, que introdujo a un gran nmero de nuevas caractersticas, Windows 7
9

pretenda ser una actualizacin incremental, enfocada a la lnea de Windows, con el objetivo de ser compatible con aplicaciones y hardware que Windows Vista no era compatible. Esta versin presenta soporte multi-touch, un Windows shell rediseado con una nueva barra de tareas, y mejoras en el rendimiento sobre todo en velocidad y en menor consumo de recursos. El 26 de octubre de 2012, Microsoft lanz Windows 8. Esta versin presenta un Explorador de Windows rediseado. Segn Microsoft han vendido 60 millones de licencias, aunque ha recibido muchas crticas por parte de los usuarios. Se conservan la gran mayora de las caractersticas de su predecesor, Windows 7, con excepcin de la nueva interfaz grfica y algunos cambios menores. El otro competidor importante en el mundo de las computadoras personales es UNIX (y todas sus variantes). UNIX es ms fuerte en los servidores tanto de redes como empresariales, pero tambin est cada vez ms presente en las computadoras de escritorio, en especial en los pases que se desarrollan con rapidez, como India y China. En las computadoras basadas en Pentium, Linux se est convirtiendo en una alternativa popular para Windows entre los estudiantes y cada vez ms usuarios corporativos. FreeBSD es tambin un derivado popular de UNIX, que se origin del proyecto BSD en Berkeley. Todas las computadoras modernas Macintosh utilizan una versin modificada de FreeBSD. UNIX tambin es estndar en las estaciones de trabajo operadas por chips RISC de alto rendimiento, como los que venden Hewlett-Packard y Sun Microsystems.

Los tipos de sistemas operativos


Los sistemas operativos han estado en funcionamiento durante ms de medio siglo. Durante este tiempo se ha desarrollado una variedad bastante extensa de ellos, no todos se conocen ampliamente. En esta seccin describiremos de manera breve nueve.

Sistemas operativos de mainframe


En el extremo superior estn los sistemas operativos para las mainframes, las computadoras del tamao de un cuarto completo que an se encuentran en los principales centros de datos corporativos. La diferencia entre estas computadoras y las personales est en su capacidad de E/S. Una mainframe con 1000 discos y millones de gigabytes de datos no es poco comn; una computadora personal con estas especificaciones sera la envidia de los amigos del propietario. Las mainframes tambin estn volviendo a figurar en el mbito computacional como servidores Web de alto rendimiento, servidores para sitios de comercio electrnico a gran escala y servidores para transacciones de negocio a negocio. Los sistemas operativos para las mainframes estn profundamente orientados hacia el procesamiento de muchos trabajos a la vez, de los cuales la mayor parte requiere muchas operaciones de E/S. Por lo general ofrecen tres tipos de servicios: procesamiento por lotes, procesamiento de transacciones y tiempo compartido. Un sistema de procesamiento por lotes procesa los trabajos de rutina sin que haya un usuario interactivo presente. El procesamiento de reclamaciones en una compaa de seguros o el reporte de ventas para una cadena de tiendas son actividades que se realizan comnmente en modo de procesamiento por lotes. Los sistemas de procesamiento de transacciones manejan grandes cantidades de pequeas peticiones, por ejemplo: el procesamiento de cheques en un banco o las reservaciones en una aerolnea. Cada unidad de trabajo es pequea, pero el sistema debe manejar cientos o miles por segundo. Los sistemas de tiempo compartido permiten que varios usuarios remotos ejecuten trabajos en la computadora al mismo tiempo, como consultar una gran base de datos. Estas funciones estn ntimamente relacionadas; a menudo los sistemas operativos de las mainframes las realizan todas. Un ejemplo de sistema operativo de mainframe es el OS/390, un descendiente del OS/360. Sin embargo, los sistemas operativos de mainframes estn siendo reemplazados gradualmente por variantes de UNIX, como Linux.
10

Sistemas operativos de servidores


En el siguiente nivel hacia abajo se encuentran los sistemas operativos de servidores. Se ejecutan en servidores, que son computadoras personales muy grandes, estaciones de trabajo o incluso mainframes. Dan servicio a varios usuarios a la vez a travs de una red y les permiten compartir los recursos de hardware y de software. Los servidores pueden proporcionar servicio de impresin, de archivos o Web. Los proveedores de Internet operan muchos equipos servidores para dar soporte a sus clientes y los sitios Web utilizan servidores para almacenar las pginas Web y hacerse cargo de las peticiones entrantes. Algunos sistemas operativos de servidores comunes son Solaris, FreeBSD, Linux y Windows Server 20xx.

Sistemas operativos de multiprocesadores


Una manera cada vez ms comn de obtener poder de cmputo de las grandes ligas es conectar varias CPU en un solo sistema. Dependiendo de la exactitud con la que se conecten y de lo que se comparta, estos sistemas se conocen como computadoras en paralelo, multicomputadoras o multiprocesadores. Necesitan sistemas operativos especiales, pero a menudo son variaciones de los sistemas operativos de servidores con caractersticas especiales para la comunicacin, conectividad y consistencia. Con la reciente llegada de los chips multincleo para las computadoras personales, hasta los sistemas operativos de equipos de escritorio y porttiles convencionales estn empezando a lidiar con multiprocesadores de al menos pequea escala y es probable que el nmero de ncleos aumente con el tiempo. Muchos sistemas operativos populares (incluyendo Windows y Linux) se ejecutan en multiprocesadores.

Sistemas operativos de computadoras personales


La siguiente categora es el sistema operativo de computadora personal. Todos los sistemas operativos modernos soportan la multiprogramacin, con frecuencia se inician docenas de programas al momento de arrancar el sistema. Su trabajo es proporcionar buen soporte para un solo usuario. Se utilizan ampliamente para el procesamiento de texto, las hojas de clculo y el acceso a Internet. Algunos ejemplos comunes son Linux, FreeBSD, Windows 8 y el sistema operativo Macintosh. Los sistemas operativos de computadora personal son los ms conocidos y usados.

Sistemas operativos mviles


Continuando con los sistemas cada vez ms pequeos, tenemos los sistemas operativos mviles. Un sistema operativo mvil o SO mvil es un sistema operativo que controla un dispositivo mvil al igual que los PCs utilizan Windows o Linux entre otros. Sin embargo, los sistemas operativos mviles son mucho ms simples y estn ms orientados a la conectividad inalmbrica, los formatos multimedia para mviles y las diferentes maneras de introducir informacin en ellos. A medida que los telfonos mviles crecen en popularidad, los sistemas operativos con los que funcionan adquieren mayor importancia. Los sistemas operativos mviles ms populares son Android, iOS, Windows Phone y BlackBerry OS.

Sistemas operativos integrados


Los sistemas integrados (embedded), que tambin se conocen como incrustados o embebidos, operan en las computadoras que controlan dispositivos que no se consideran generalmente como computadoras, ya que no aceptan software instalado por el usuario. Algunos ejemplos comunes son los hornos de microondas, las televisiones, los autos, los grabadores de DVDs, los telfonos celulares y los reproductores de MP3. La propiedad principal que diferencia a los sistemas integrados de los dispositivos mviles es la certeza de que nunca se podr ejecutar software que no sea confiable. No se pueden descargar nuevas aplicaciones en ellos;
11

todo el software se encuentra en ROM. Los sistemas como QNX y VxWorks son populares en este dominio.

Sistemas operativos de nodos sensores


Estos nodos son pequeas computadoras que se comunican entre s con una estacin base, mediante el uso de comunicacin inalmbrica. Estas redes de sensores se utilizan para proteger los permetros de los edificios, resguardar las fronteras nacionales, detectar incendios en bosques, medir la temperatura y la precipitacin para el pronstico del tiempo, deducir informacin acerca del movimiento de los enemigos en los campos de batalla y mucho ms. Los sensores son pequeas computadoras con radios integrados y alimentadas con bateras. Tienen energa limitada y deben trabajar durante largos periodos al exterior y desatendidas, con frecuencia en condiciones ambientales rudas. La red debe ser lo bastante robusta como para tolerar fallas en los nodos individuales, que ocurren con mayor frecuencia a medida que las bateras empiezan a agotarse. Cada nodo sensor es una verdadera computadora, con una CPU, RAM, ROM y uno o ms sensores ambientales. Ejecuta un sistema operativo pequeo pero real, por lo general manejador de eventos, que responde a los eventos externos o realiza mediciones en forma peridica con base en un reloj interno. El sistema operativo tiene que ser pequeo y simple debido a que los nodos tienen poca RAM y el tiempo de vida de las bateras es una cuestin importante. Adems, al igual que con los sistemas integrados, todos los programas se cargan por adelantado. TinyOS es un sistema operativo conocido para un nodo sensor.

Sistemas operativos en tiempo real


Otro tipo de sistema operativo es el sistema en tiempo real. Estos sistemas se caracterizan por tener el tiempo como un parmetro clave. Por ejemplo, en los sistemas de control de procesos industriales, las computadoras en tiempo real tienen que recolectar datos acerca del proceso de produccin y utilizarlos para controlar las mquinas en la fbrica. A menudo hay tiempos de entrega estrictos que se deben cumplir. Por ejemplo, si un auto se desplaza sobre una lnea de ensamblaje, deben llevarse a cabo ciertas acciones en determinados instantes. Si un robot soldador realiza su trabajo de soldadura antes o despus de tiempo, el auto se arruinar. Si la accin debe ocurrir sin excepcin en cierto momento (o dentro de cierto rango), tenemos un sistema en tiempo real duro. Muchos de estos sistemas se encuentran en el control de procesos industriales, en aeronutica, en la milicia y en reas de aplicacin similares. Estos sistemas deben proveer garantas absolutas de que cierta accin ocurrir en un instante determinado. Otro tipo de sistema en tiempo real es el sistema en tiempo real suave, en el cual es aceptable que muy ocasionalmente se pueda fallar a un tiempo predeterminado. Los sistemas de audio digital o de multimedia estn en esta categora. Un ejemplo de este tipo de sistema en tiempo real es e-Cos.

Sistemas operativos de tarjetas inteligentes


Los sistemas operativos ms pequeos operan en las tarjetas inteligentes, que son dispositivos del tamao de una tarjeta de crdito que contienen un chip de CPU. Tienen varias severas restricciones de poder de procesamiento y memoria. Algunas se energizan mediante contactos en el lector en el que se insertan, pero las tarjetas inteligentes sin contactos se energizan mediante induccin, lo cual limita en forma considerable las cosas que pueden hacer. Algunos sistemas de este tipo pueden realizar una sola funcin, como pagos electrnicos; otros pueden llevar a cabo varias funciones en la misma tarjeta inteligente.

12

Llamadas al sistema operativo


Definicin breve: llamadas que ejecutan los programas de aplicacin para pedir algn servicio al SO. 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 diseado para trabajar sobre el anterior, en general el programa no funcionar, a no ser que el nuevo SO tenga la misma interfaz. Para ello:

Las llamadas correspondientes deben tener el mismo formato. Cada llamada al nuevo SO tiene que dar los mismos resultados que la correspondiente del anterior.

Modos de ejecucin en un CPU


Las aplicaciones no deben poder usar todas las instrucciones de la CPU. No obstante el Sistema Operativo, tiene que poder utilizar todo el conjunto de instrucciones del CPU. Por ello, una CPU debe tener (al menos) dos modos de operacin diferentes:

Modo usuario: el CPU podr ejecutar slo las instrucciones del juego restringido de las aplicaciones. Modo supervisor: la CPU debe poder ejecutar el juego completo de instrucciones.

Llamadas al sistema
Una aplicacin, normalmente no sabe dnde est situada la rutina de servicio de la llamada. Por lo que si sta se codifica como una llamada de funcin, cualquier cambio en el S.O. hara que hubiera que reconstruir la aplicacin. Pero lo ms importante es que una llamada de funcin no cambia el modo de ejecucin de la CPU. Con lo que hay que conseguir llamar a la rutina de servicio, sin tener que conocer su ubicacin, y hacer que se fuerce un cambio de modo de operacin de la CPU en la llamada (y la recuperacin del modo anterior en el retorno). Esto se hace utilizando instrucciones mquina diseadas especficamente para este cometido, distintas de las que se usan para las llamadas de funcin.

Bibliotecas de interfaz de llamadas al sistema


Las llamadas al sistema no siempre tienen una expresin sencilla en los lenguajes de alto nivel, por ello se crean las bibliotecas de interfaz, que son bibliotecas de funciones que pueden usarse para efectuar llamadas al sistema. Las hay para distintos lenguajes de programacin. La aplicacin llama a una funcin de la biblioteca de interfaz (mediante una llamada normal) y esa funcin es la que realmente hace la llamada al sistema.

Interrupciones y excepciones
El SO ocupa una posicin intermedia entre los programas de aplicacin y el hardware. No se limita a utilizar el hardware a peticin de las aplicaciones ya que hay situaciones en las que es el hardware el que necesita que se ejecute cdigo del SO. En tales situaciones el hardware debe poder llamar al sistema, pudiendo deberse estas llamadas a dos condiciones:

Algn dispositivo de E/S necesita atencin. Se ha producido una situacin de error al intentar ejecutar una instruccin del programa (normalmente de la aplicacin).

13

En ambos casos, la accin realizada no est ordenada por el programa de aplicacin, es decir, no figura en el programa. Segn los dos casos anteriores tenemos las interrupciones y las excepciones:

Interrupcin: seal que enva un dispositivo de E/S a la CPU para indicar que la operacin de la que se estaba ocupando, ya ha terminado. Excepcin: una situacin de error detectada por la CPU mientras ejecutaba una instruccin, que requiere tratamiento por parte del SO.

Tratamiento de las interrupciones


Una interrupcin se trata en todo caso, despus de terminar la ejecucin de la instruccin en curso. El tratamiento depende de cul sea el dispositivo de E/S que ha causado la interrupcin, ante la cual debe poder identificar el dispositivo que la ha causado. La ventaja de este procedimiento es que no se tiene que perder tiempo ejecutando continuamente rutinas para consultar el estado del perifrico. El inconveniente es que el dispositivo debe tener los circuitos electrnicos necesarios para acceder al sistema de interrupciones del computador.

Importancia de las interrupciones


El mecanismo de tratamiento de las interrupciones permite al SO utilizar la CPU en servicio de una aplicacin, mientras otra permanece a la espera de que concluya una operacin en un dispositivo de E/S. El hardware se encarga de avisar al SO cuando el dispositivo de E/S ha terminado y el SO puede intervenir entonces, si es conveniente, para hacer que el programa que estaba esperando por el dispositivo, se contine ejecutando. En ciertos intervalos de tiempo puede convenir no aceptar seales de interrupcin. Por ello las interrupciones pueden inhibirse por programa (aunque esto no deben poder hacerlo las mismas). Un ejemplo de sincronismo por interrupcin es el almacenamiento de caracteres introducidos mediante el teclado. Cuando se introduce un carcter, se codifica en el registro de datos del dispositivo y adems se activa un bit del registro de estado quien crea una interrupcin en el hardware. El procesador deja temporalmente la tarea que estaba completando y ejecuta la rutina de atencin a la interrupcin correspondiente. El teclado almacena el carcter en el vector de memoria intermedia (tambin llamado buffer) asociada al teclado y despierta el proceso que haba en el estado de espera de la operacin de entrada/salida.

Excepciones
Cuando la CPU intenta ejecutar una instruccin incorrectamente construida, la unidad de control lanza una excepcin para permitir al SO ejecutar el tratamiento adecuado. Al contrario que en una interrupcin, la instruccin en curso es abortada. Las excepciones al igual que las interrupciones deben estar identificadas.

Clases de excepciones
Las instrucciones de un programa pueden estar mal construidas por diversas razones:

El cdigo de operacin puede ser incorrecto. Se intenta realizar alguna operacin no definida, como dividir por cero. La instruccin puede no estar permitida en el modo de ejecucin actual. La direccin de algn operando puede ser incorrecta o se intenta violar alguno de sus permisos de uso.

Importancia de las excepciones


14

El mecanismo de tratamiento de las excepciones es esencial para impedir, junto a los modos de ejecucin de la CPU y los mecanismos de proteccin de la memoria, que las aplicaciones realicen operaciones que no les estn permitidas. En cualquier caso, el tratamiento especfico de una excepcin lo realiza el SO. Como en el caso de las interrupciones, el hardware se limita a dejar el control al SO, y ste es el que trata la situacin como convenga. Es bastante frecuente que el tratamiento de una excepcin no retorne al programa que se estaba ejecutando cuando se produjo la excepcin, sino que el SO aborte la ejecucin de ese programa. Este factor depende de la pericia del programador para controlar la excepcin adecuadamente.

Componentes de un sistema operativo

Gestin de procesos
Un proceso es simplemente, un programa en ejecucin que necesita recursos para realizar su tarea: tiempo de CPU, memoria, archivos y dispositivos de E/S. El SO es el responsable de:

Crear y destruir procesos Parar y reanudar procesos Ofrecer mecanismos para que los procesos puedan comunicarse y se sincronicen

La gestin de procesos podra 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 despus las de baja. Una vez realizada la tarea se tacha. Esto puede traer un problema, que las tareas de baja prioridad puede que nunca lleguen a ejecutarse y permanezcan en la lista para siempre. Para solucionar esto, se puede asignar alta prioridad a las tareas ms antiguas.

Gestin de la memoria principal


La memoria es una gran tabla de palabras o bytes que se referencian cada una mediante una direccin nica. Este almacn de datos de rpido acceso es compartido por la CPU y los
15

dispositivos de E/S, es voltil y pierde su contenido ante fallos del sistema. El SO es el responsable de:

Conocer qu partes de la memoria estn siendo utilizadas y por quin Decidir qu procesos se cargarn en memoria cuando haya espacio disponible Asignar y reclamar espacio de memoria cuando sea necesario

Gestin del almacenamiento secundario


Un sistema de almacenamiento secundario es necesario, ya que la memoria principal (almacenamiento primario) es voltil y adems muy pequea para almacenar todos los programas y datos. Tambin es necesario mantener los datos que no convenga mantener en la memoria principal. El SO se encarga de:

Planificar los discos. Gestionar el espacio libre. Asignar el almacenamiento. 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 informacin relacionada, definidas por sus creadores. stos almacenan programas (en cdigo fuente y objeto) y datos tales como imgenes, textos, informacin de bases de datos, etc. El SO es responsable de:

Construir y eliminar archivos y directorios. Ofrecer funciones para manipular archivos y directorios. Establecer la correspondencia entre archivos y unidades de almacenamiento. Realizar copias de seguridad de archivos.

Existen diferentes sistemas de archivos, es decir, existen diferentes formas de organizar la informacin que se almacena en las memorias (normalmente discos) de los ordenadores. Por ejemplo, existen los sistemas de archivos FAT, FAT32, EXT4, NTFS, XFS, etc. 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 informacin ya que el tamao mximo de un fichero con un sistema de archivos FAT32 est limitado a 4 gigabytes, sin embargo, en un sistema NTFS el tamao es considerablemente mayor.

Sistemas de proteccin
Mecanismo que controla el acceso de los programas o los usuarios a los recursos del sistema. El SO se encarga de:

Distinguir entre uso autorizado y no autorizado. Especificar los controles de seguridad a realizar. Forzar el uso de estos mecanismos de proteccin.

Sistema de comunicaciones
Para mantener las comunicaciones con otros sistemas es necesario poder controlar el envo y recepcin de informacin a travs de las interfaces de red. Tambin hay que crear y mantener
16

puntos de comunicacin que sirvan a las aplicaciones para enviar y recibir informacin, y crear y mantener conexiones virtuales entre aplicaciones que estn ejecutndose localmente y otras que lo hacen remotamente.

Programas de sistema
Son aplicaciones de utilidad que se suministran con el SO pero no forman parte de l. Ofrecen un entorno til para el desarrollo y ejecucin de programas, siendo algunas de las tareas que realizan:

Manipulacin y modificacin de archivos. Informacin del estado del sistema. Soporte a lenguajes de programacin. Comunicaciones.

Gestor de recursos
Como gestor de recursos, el sistema operativo administra:

La unidad central de procesamiento (donde est alojado el microprocesador). Los dispositivos de entrada y salida. La memoria principal (o de acceso directo). Los discos (o memoria secundaria). Los procesos (o programas en ejecucin). Y en general todos los recursos del sistema.

Microsoft Windows

Microsoft Windows (conocido generalmente como Windows), es el nombre de una familia de sistemas operativos desarrollados y vendidos por Microsoft. Microsoft introdujo un entorno operativo denominado Windows el 25 de noviembre de 1985 como un complemento para MS-DOS en respuesta al creciente inters en las interfaces grficas de usuario (GUI). Microsoft Windows lleg a dominar el mercado mundial de computadoras personales, con ms del 90% de la cuota de mercado, superando a Mac OS, que haba sido introducido en 1984. Las versiones ms recientes de Windows son Windows 8.1 y Windows 8 para equipos de escritorio, Windows Server 2012 para servidores y Windows Phone 8 para dispositivos mviles. La primera versin en espaol fue Windows 3.0. Windows es un sistema operativo basado en ventanas. La primera versin se lanz en 1985 y comenz a utilizarse de forma generalizada gracias a su interfaz grfica de usuario (GUI, Graphical User Interface). Hasta ese momento, el sistema operativo ms extendido era MSDOS (Microsoft Disk Operating System), y la interfaz consista en una lnea de comandos.

Historia
La primera versin de Microsoft Windows, versin 1.0, lanzada en noviembre de 1985, compiti con el sistema operativo de Apple. Careca de un cierto grado de funcionalidad y logr muy poca popularidad. Windows 1.0 no era un sistema operativo completo; ms bien
17

era una extensin grfica de MS-DOS. Windows versin 2.0 fue lanzado en noviembre de 1987 y fue un poco ms popular que su predecesor. Windows 2.03 (lanzado en enero de 1988) incluy por primera vez ventanas que podan solaparse unas a otras. El resultado de este cambio llev a Apple a presentar una demanda contra Microsoft, debido a que infringan derechos de autor. Windows versin 3.0, lanzado en 1990, fue la primera versin de Microsoft Windows que consigui un amplio xito comercial, vendiendo 2 millones de copias en los primeros seis meses. Presentaba mejoras en la interfaz de usuario y en la multitarea. Recibi un lavado de cara en Windows 3.1, que se hizo disponible para el pblico en general el 1 de marzo de 1992. El soporte de Windows 3.1 termin el 31 de diciembre de 2001. En julio de 1993, Microsoft lanz Windows NT basado en un nuevo ncleo. NT era considerado como el sistema operativo profesional y fue la primera versin de Windows en utilizar la multitarea apropiativa. Windows NT ms tarde sera reestructurado para funcionar tambin como un sistema operativo para el hogar, con Windows XP. El 24 de agosto de 1995, Microsoft lanz Windows 95, una versin nueva para los consumidores, y grandes fueron los cambios que se realizaron a la interfaz de usuario, y tambin se utiliza multitarea apropiativa. Windows 95 fue diseado para sustituir no solo a Windows 3.1, sino tambin de Windows para Workgroups y MS-DOS. Tambin fue el primer sistema operativo Windows para utilizar las capacidades Plug and Play. Los cambios que trajo Windows 95 eran revolucionarios, a diferencia de los siguientes, como Windows 98 y Windows Me. El soporte estndar para Windows 95 finaliz el 31 de diciembre de 2000 y el soporte ampliado para Windows 95 finaliz el 31 de diciembre de 2001. El siguiente en la lnea de consumidor fue lanzado el 25 de junio de 1998, Microsoft Windows 98. Sustancialmente fue criticado por su lentitud y por su falta de fiabilidad en comparacin con Windows 95, pero muchos de sus problemas bsicos fueron posteriormente rectificados con el lanzamiento de Windows 98 Second Edition en 1999. El soporte estndar para Windows 98 termin el 30 de junio de 2002, y el soporte ampliado para Windows 98 termin el 11 de julio de 2006.

Segundo logo de Microsoft Windows (1992-2001)

Como parte de su lnea profesional, Microsoft lanz Windows 2000 en febrero de 2000. La versin de consumidor tras Windows 98 fue Windows Me (Windows Millennium Edition). Lanzado en septiembre de 2000, Windows Me implementaba una serie de nuevas tecnologas para Microsoft: en particular fue el Universal Plug and Play. Durante el 2004 parte del cdigo fuente de Windows 2000 se filtr en internet, esto era malo para Microsoft porque el mismo ncleo utilizado en Windows 2000 se utiliz en Windows XP. En octubre de 2001, Microsoft lanz Windows XP, una versin que se construy en el ncleo de Windows NT que tambin conserva la usabilidad orientada al consumidor de Windows 95 y sus sucesores. En dos ediciones distintas, Home y Professional, el primero carece por mucho de la seguridad y caractersticas de red de la edicin Professional. Adems, la primera edicin Media Center fue lanzada en 2002, con nfasis en el apoyo a la funcionalidad de
18

DVD y TV, incluyendo grabacin de TV y un control remoto. El soporte estndar para Windows XP termin el 14 de abril de 2009. El soporte extendido continuar hasta el 8 de abril de 2014. En abril de 2003, Windows Server 2003 se introdujo, reemplazando a la lnea de productos de servidor de Windows 2000 con un nmero de nuevas caractersticas y un fuerte enfoque en la seguridad; lo cual fue seguido en diciembre de 2005 por Windows Server 2003 R2. El 30 de enero de 2007, Microsoft lanz Windows Vista. Contiene una serie de caractersticas nuevas, desde un shell rediseado y la interfaz de usuario da importantes cambios tcnicos, con especial atencin a las caractersticas de seguridad. Est disponible en varias ediciones diferentes y ha sido objeto de muy severas crticas debido a su patente inestabilidad, sobredemanda de recursos de hardware, alto costo, y muy alta incompatibilidad con sus predecesores, hecho que no ocurra con stos. El 22 de octubre de 2009, Microsoft lanz Windows 7. A diferencia de su predecesor, Windows Vista, que introdujo a un gran nmero de nuevas caractersticas, Windows 7 pretenda ser una actualizacin incremental, enfocada a la lnea de Windows, con el objetivo de ser compatible con aplicaciones y hardware que Windows Vista no era compatible. Windows 7 tiene soporte multi-touch, un Windows shell rediseado con una nueva barra de tareas, conocido como Superbar, un sistema red llamado HomeGroup, y mejoras en el rendimiento sobre todo en velocidad y en menor consumo de recursos. El 26 de octubre de 2012, Microsoft lanz Windows 8. Por primera vez desde Windows 95, el botn Inicio ya no est disponible en la barra de tareas, aunque la pantalla de inicio est an activa haciendo clic en la esquina inferior izquierda de la pantalla y presionando la tecla Inicio en el teclado. Presenta un Explorador de Windows rediseado, con la famosa interfaz ribbon de Microsoft Office. Segn Microsoft han vendido 60 millones de licencias, aunque ha recibido muchas crticas por parte de los usuarios. Se conservan la gran mayora de las caractersticas de su predecesor, Windows 7, con excepcin de la nueva interfaz grfica y algunos cambios menores.

19

OS X

OS X, antes llamado Mac OS X, es un sistema operativo basado en Unix, desarrollado, comercializado y vendido por Apple Inc. Ha sido incluido en su gama de computadoras Macintosh desde el ao de 2002. OS X es el sucesor del Mac OS 9 (la versin final del Mac OS Classic), el sistema operativo de Apple desde 1984. Est basado en BSD, y se construy sobre las tecnologas desarrolladas en NeXT entre la segunda mitad de los 80's y finales de 1996, cuando Apple adquiri esta compaa. Desde la versin Mac OS X 10.5 Leopard para procesadores Intel, el sistema tiene la certificacin UNIX 03. La primera versin del sistema fue Mac OS X Server 1.0 en 1999, y en cuanto al escritorio, fue Mac OS X v10.0 Cheetah (publicada el 24 de marzo de 2001). Para dispositivos mviles Apple produce una versin especfica de OS X llamada iOS, que funciona en iPhone, iPod Touch, iPad y Apple TV. Hasta la versin 10.8, inclusive, los nombres de las versiones de Mac OS X tienen nombre de grandes felinos. Por ejemplo: Mac OS X v10.7 es denominado Lion. A partir de la versin 10.9, Mavericks, Apple empez a utilizar nombres de lugares de California para denominar al sistema operativo. En Mac OS X, la X denota el 10 en nmero romano y constituye una parte prominente de la identidad de la marca. La variante para servidores, Mac OS X Server, es arquitectnicamente idntica a su contraparte para escritorio, adems de incluir herramientas para administrar grupos de trabajo y proveer acceso a los servicios de red. Estas herramientas incluyen un servidor de correo, un servidor Samba, un servidor LDAP y un servidor de dominio entre otros. Viene preinstalada en Apple Xserve, aunque puede ser utilizado en la gran mayora de computadores actualmente distribuidos por el fabricante.

Historia
Desarrollo externo a Apple Despus de que Steve Jobs fuese removido de la administracin de Apple en 1985, deja la compaa y funda con recursos propios y la ayuda de Ross Perot una compaa llamada NeXT. El hardware de NeXT era avanzado para su poca, siendo la primera estacin de trabajo en incluir un procesador de seal digital y un lector de discos de alta capacidad, pero tena problemas de diseo y era costoso si se le comparaba con el mercado de las estaciones de trabajo de ese tiempo. La compaa dej de fabricar hardware en 1993. Sin embargo "NeXTSTEP", el sistema operativo orientado a objetos tiene un mayor legado. NeXTSTEP estaba basado en un ncleo Mach y en BSD, una implementacin BSD que proviene de 1970. Tal vez ms remarcablemente, tena como caracterstica un marco de trabajo de programacin orientado a objetos y basado en el lenguaje Objective-C. Este entorno es conocido en el mundo Mac como Cocoa. NeXTSTEP evolucion a OPENSTEP, el cual separaba las capas de objetos del sistema operativo base permitiendo que funcionara con menos modificaciones en otras plataformas. OPENSTEP fue por un corto tiempo adoptado por Sun Microsystems, sin embargo para ste momento otras compaas, notablemente Apple, IBM, Microsoft e incluso Sun, haban anunciado que pronto liberaran sistemas operativos similares orientados a objetos y herramientas para diseadores propios. (Algunos de stos como Taligent, no llegaron a funcionar del todo, otros como Java lograron una amplia adopcin.)

20

Despus de un anuncio el 20 de diciembre de 1996, el 4 de febrero de 1997 Apple Computer adquiri NeXT por $427 millones de dlares estadounidenses y us OPNESTEP como la base de Mac OS X. An se pueden notar rastros de la herencia de software NeXT en Mac OS X. Desarrollo interno Mientras, Apple sufra de facto dificultades econmicas. El ya vetusto Mac OS con una dcada a sus espaldas haba tocado techo con su arquitectura de multitarea cooperativa monousuario, y su otrora aspecto innovador se vea ya obsoleto. Un desarrollo masivo, conocido como "Copland", estaba destinado a reemplazarlo. Este sistema operativo se cre en 1994, pero fue percibido desde fuera de Apple como una desesperanzadora opcin que responda a una cuestin de poltica. En 1996 "Copland" no iba a ninguna parte y el proyecto fue cancelado. Algunos de los elementos de Copland fueron incorporados en el Mac Os 8 que se lanz en 26 de julio de 1997. Despus de considerar la compra de "BeOS" - un S.O. con capacidades multimedia y diseado para hardware similar al de Apple - la compaa finalmente se decidi a comprar NeXT y usar OPENSTEP como la base de su nuevo Sistema Operativo. Avie Tevanian se encarg del desarrollo y Steve Jobs fue nombrado consejero. Al principio la idea consista en desarrollar un nuevo sistema operativo baso en su mayor parte como una versin actualizada de OPENSTEP, con un emulador (conocido como "blue box") para ejecutar las aplicaciones "Clsicas" de Macintosh. El resultado fue conocido con el nombre en clave de "Rhapsody" y finalmente vio la luz a finales de 1998 con el nombre de Mac OS X.

Steve Jobs

21

GNU/Linux

Linux es un sistema operativo creado en 1990 por el ingeniero de software Linus Torvalds y la Free Software Foundation (Fundacin del software libre). Su desarrollo es uno de los ejemplos ms prominentes de software libre; todo su cdigo fuente puede ser utilizado, modificado y redistribuido libremente por cualquiera bajo los trminos de la GPL (Licencia Pblica General de GNU, en ingls: General Public License) y otra serie de licencias libres. A pesar de que Linux es, en sentido estricto, el ncleo del sistema operativo, parte fundamental de la interaccin entre el hardware y el usuario (o los programas de aplicacin) se maneja usualmente con las herramientas del proyecto GNU y con entornos de escritorio basados en GNOME, que tambin forma parte del proyecto GNU aunque tuvo un origen independiente. Sin embargo, una parte significativa de la comunidad, as como muchos medios generales y especializados, prefieren utilizar el trmino Linux para referirse a la unin de ambos proyectos. A las variantes de esta unin de programas y tecnologas, a las que se les adicionan diversos programas de aplicacin de propsitos especficos 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, donde tiene la cuota ms importante del mercado. Segn un informe de IDC, GNU/Linux es utilizado por el 78% de los principales 500 servidores del mundo, otro informe le da una cuota de mercado de 89% en los 500 mayores supercomputadores. Con menor cuota de mercado el sistema GNU/Linux tambin es usado en el segmento de las computadoras de escritorio, porttiles, computadoras de bolsillo, telfonos mviles, sistemas embebidos, videoconsolas y otros dispositivos.

Historia
En 1983 Richard Stallman inici el ambicioso Proyecto GNU, con el propsito de crear un sistema operativo similar y compatible con UNIX y los estndares POSIX. Dos aos ms tarde, 1985, cre la Fundacin del Software Libre (FSF) y desarroll la Licencia pblica general de GNU (GNU GPL), para tener un marco legal que permitiera difundir libremente el software. De este modo el software de GNU fue desarrollado muy rpidamente, y por muchas personas. A corto plazo, se desarroll una multiplicidad de programas, de modo que a

22

principios de los aos 1990 haba casi bastante software disponible como para crear un sistema operativo completo. Sin embargo, todava le faltaba un ncleo. A principios de los aos 1990, no haba un sistema operativo libre completo. A pesar de que el proyecto GNU era desarrollado constantemente, no dispona sin embargo de ningn buen ncleo basado en UNIX, por el contrario era un nmero de proyectos de software libres que podan ser traducidos en las variantes UNIX mediante el compilador de GNU.

Richard Matthew Stallman, Fundador del Movimiento del software libre, de la FSF y del Proyecto GNU.

En 1991 Linus Torvalds, estudiante de Ciencias de la Computacin de la Universidad de Helsinki, decidi realizar la entonces cuantiosa inversin de 3500 dlares estadounidenses para adquirir un nuevo computador con el microprocesador 80386 de Intel. Normalmente, este computador lo usaba para tener acceso por lnea telefnica a la red informtica de su Universidad, pero debido a que no le gustaba el sistema operativo con el cual trabajaba, denominado Minix, decidi crear uno l mismo basado en el ncleo de Minix y modificarlo peridicamente de manera que fuera capaz de ejecutar aplicaciones GNU. La historia de Linux est fuertemente vinculada a la del proyecto GNU. Hacia 1991, cuando la primera versin del ncleo Linux fue liberada, el proyecto GNU haba producido varios de los componentes del sistema operativo, incluyendo un intrprete de comandos, una biblioteca C y un compilador, pero an no contaba con el ncleo que permitiera complementar el sistema operativo. Entonces, el ncleo creado por Linus Torvalds, llen el hueco final que el sistema operativo GNU exiga. Linus nunca anunci la versin 0.01 de Linux (agosto 1991), esta versin no era ejecutable, solamente inclua los principios del ncleo del sistema, estaba escrita en lenguaje ensamblador y asuma que uno tena acceso a un sistema Minix para su compilacin.

El 5 de octubre de 1991, Linus anuncio la primera versin "Oficial" de Linux, la versin 0.02. Con esta versin Linus pudo ejecutar Bash (GNU Bourne Again Shell) y gcc (Compilador GNU de C) pero no mucho ms funcionaba. Despus de la versin 0.03, Linus salto en la numeracin hasta la 0.10, ms programadores a lo largo y ancho del internet empezaron a trabajar en el proyecto y despus de revisiones, Linus incremento el nmero de versin hasta la 0.95 (marzo 1992). En Diciembre de 1993 el ncleo del sistema estaba en la versin 0.99 y la versin 1.0, llego el 14 de marzo de 1994.

23

Linus Torvalds, creador del ncleo Linux.

FreeBSD
FreeBSD es un sistema operativo multiusuario, capaz de efectuar multitarea con apropiacin y multiproceso en plataformas compatibles con mltiples procesadores. FreeBSD est basado en la versin 4.4 BSD-Lite del Computer Systems Research Group (CSRG) de la University of California, Berkeley siguiendo la tradicin que ha distinguido el desarrollo de los sistemas BSD. Adems del trabajo realizado por el CSRG, el proyecto FreeBSD ha invertido miles de horas en ajustar el sistema para ofrecer las mximas prestaciones en situaciones de carga real. El sistema FreeBSD incluye el ncleo, la estructura de ficheros del sistema, bibliotecas de la API de C, y algunas utilidades bsicas. La versin 6.1 trajo importantes mejoras como mayor apoyo para dispositivos Bluetooth y controladores para tarjetas de sonido y red. La versin 7.0, lanzada el 27 de febrero del ao 2008, incluye compatibilidad con el sistema de archivos ZFS de Sun y a la arquitectura ARM, entre otras novedades.

24

Unix

Unix (registrado oficialmente como 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. El sistema, junto con todos los derechos fueron vendidos por AT&T 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 despus se convirti en el grupo SCO. Sin embargo, Novell siempre argument que solo vendi los derechos de uso del software, pero que retuvo el copyright sobre "UNIX". En 2010, y tras una larga batalla legal, sta ha pasado nuevamente a ser propiedad de Novell. Solo los sistemas totalmente compatibles y que se encuentran certificados por la especificacin Single UNIX Specification pueden ser denominados "UNIX" (otros reciben la denominacin "similar a un sistema Unix" o "similar a Unix"). En ocasiones, suele usarse el trmino "Unix tradicional" para referirse a Unix o a un sistema operativo que cuenta con las caractersticas de UNIX Versin 7 o UNIX System V.

Historia
A finales de 1960, el Instituto Tecnolgico de Massachusetts, los Laboratorios Bell de AT&T y General Electric trabajaban en un sistema operativo experimental llamado Multics (Multiplexed Information and Computing Service), desarrollado para ejecutarse en una computadora central (mainframe) modelo GE-645. El objetivo del proyecto era desarrollar un gran sistema operativo interactivo que contase con muchas innovaciones, entre ellas mejoras en las polticas de seguridad. El proyecto consigui dar a luz versiones para produccin, pero las primeras versiones contaban con un pobre rendimiento. Los laboratorios Bell de AT&T decidieron desvincularse y dedicar sus recursos a otros proyectos. Uno de los programadores de los laboratorios Bell, Ken Thompson, sigui trabajando para la computadora GE-6355 y escribi un juego llamado Space Travel, (Viaje espacial). Sin embargo, descubri que el juego era lento en la mquina de General Electric y resultaba realmente caro, algo as como 75 dlares de EE.UU. por cada partida.De este modo, Thompson escribi nuevamente el programa, con ayuda de Dennis Ritchie, en lenguaje ensamblador, para que se ejecutase en una computadora DEC PDP-7. Esta experiencia, junto al trabajo que desarroll para el proyecto Multics, condujo a Thompson a iniciar la creacin de un nuevo sistema operativo para la DEC PDP-7.8 Thompson y Ritchie lideraron un grupo de programadores, entre ellos a Rudd Canaday, en los laboratorios Bell, para desarrollar tanto el sistema de ficheros como el sistema operativo multitarea en s. A lo anterior, agregaron un intrprete de rdenes (o intrprete de comandos) y un pequeo conjunto de programas. El proyecto fue bautizado UNICS, como acrnimo Uniplexed Information and Computing System, pues solo prestaba servicios a dos usuarios. Dada la popularidad que tuvo un juego de palabras que consideraba a UNICS un sistema MULTICS castrado (pues eunuchs, en ingls, es un homfono de UNICS), se cambi el nombre a UNIX, dando origen al legado que llega hasta nuestros das.

25

Hasta ese instante, no haba existido apoyo econmico por parte de los laboratorios Bell, pero eso cambi cuando el Grupo de Investigacin en Ciencias de la Computacin decidi utilizar UNIX en una mquina superior a la PDP-7. Thompson y Ritchie lograron cumplir con la solicitud de agregar herramientas que permitieran el procesamiento de textos a UNIX en una mquina PDP-11/20, y como consecuencia de ello consiguieron el apoyo econmico de los laboratorios Bell. Fue as como por vez primera, en 1970, se habla oficialmente del sistema operativo UNIX ejecutado en una PDP-11/20. Se inclua en l un programa para dar formato a textos (runoff) y un editor de texto. Tanto el sistema operativo como los programas fueron escritos en el lenguaje ensamblador de la PDP-11/20. Este "sistema de procesamiento de texto" inicial, compuesto tanto por el sistema operativo como de runoff y el editor de texto, fue utilizado en los laboratorios Bell para procesar las solicitudes de patentes que ellos reciban. Pronto, runoff evolucion hasta convertirse en troff, el primer programa de edicin electrnica que permita realizar composicin tipogrfica. El 3 de noviembre de 1971 Thomson y Ritchie publicaron un manual de programacin de UNIX (ttulo original en ingls: "UNIX Programmer's Manual"). En 1972 se tom la decisin de escribir nuevamente UNIX, pero esta vez en el lenguaje de programacin C. Este cambio significaba que UNIX podra ser fcilmente modificado para funcionar en otras computadoras (de esta manera, se volva portable) y as otras variaciones podan ser desarrolladas por otros programadores. Ahora, el cdigo era ms conciso y compacto, lo que se tradujo en un aumento en la velocidad de desarrollo de UNIX. AT&T puso a UNIX a disposicin de universidades y compaas, tambin al gobierno de los Estados Unidos, a travs de licencias. Una de estas licencias fue otorgada al Departamento de Computacin de la Universidad de California, con sede en Berkeley. En 1975 esta institucin desarroll y public su propio sucedneo de UNIX, conocida como Berkeley Software Distribution (BSD), que se convirti en una fuerte competencia para la familia UNIX de AT&T. Mientras tanto, AT&T cre una divisin comercial denominada Unix Systems Laboratories para la explotacin comercial del sistema operativo. El desarrollo prosigui, con la entrega de las versiones 4, 5 y 6 en el transcurso de 1975. Estas versiones incluan los pipes o tuberas, lo que permiti dar al desarrollo una orientacin modular respecto a la base del cdigo, consiguiendo aumentar an ms la velocidad de desarrollo. Ya en 1978, cerca de 600 o ms mquinas estaban ejecutndose con alguna de las distintas encarnaciones de UNIX. La versin 7, la ltima versin del UNIX original con amplia distribucin, entr en circulacin en 1979. Las versiones 8, 9 y 10 se desarrollaron durante la dcada de 1980, pero su circulacin se limit a unas cuantas universidades, a pesar de que se publicaron los informes que describan el nuevo trabajo. Los resultados de esta investigacin sirvieron de base para la creacin de Plan 9 from Bell Labs, un nuevo sistema operativo portable y distribuido, diseado para ser el sucesor de UNIX en investigacin por los Laboratorios Bell. AT&T entonces inici el desarrollo de UNIX System III, basado en la versin 7, como una variante de tinte comercial y as venda el producto de manera directa. La primera versin se lanz en 1981. A pesar de lo anterior, la empresa subsidiaria Western Electric segua vendiendo versiones antiguas de Unix basadas en las distintas versiones hasta la sptima. Para finalizar con la confusin con todas las versiones divergentes, AT&T decidi combinar varias versiones desarrolladas en distintas universidades y empresas, dando origen en 1983 al Unix System V Release 1. Esta versin present caractersticas tales como el editor Vi y la biblioteca curses, desarrolladas por Berkeley Software Distribution en la Universidad de California, Berkeley. Tambin contaba con compatibilidad con las mquinas VAX de la compaa DEC. Hacia 1991, un estudiante de ciencias de la computacin de la Universidad de Helsinki, llamado Linus Torvalds desarroll un ncleo para computadoras con arquitectura x86 de Intel
26

que emulaba muchas de las funcionalidades de UNIX y lo lanz en forma de cdigo abierto en 1991, bajo el nombre de Linux. En 1992, el Proyecto GNU comenz a utilizar el ncleo Linux junto a sus programas. En 1993, la compaa Novell adquiri la divisin Unix Systems Laboratories de AT&T junto con su propiedad intelectual. Esto ocurri en un momento delicado en el que Unix Systems Laboratories disputaba una demanda en los tribunales contra BSD por infraccin de los derechos de copyright, revelacin de secretos y violacin de marca de mercado. Aunque BSD gan el juicio, Novell descubri que gran parte del cdigo de BSD fue copiada ilegalmente en UNIX System V. En realidad, la propiedad intelectual de Novell se reduca a unos cuantos archivos fuente. La correspondiente contra-demanda acab en un acuerdo extrajudicial cuyos trminos permanecen bajo secreto a peticin de Novell. En 1995, Novell vendi su divisin UNIX comercial (es decir, la antigua Unix Systems Laboratories) a Santa Cruz Operation (SCO) reservndose, aparentemente, algunos derechos de propiedad intelectual sobre el software. SCO contina la comercializacin de System V en su producto UnixWare, que durante cierto tiempo pas a denominarse OpenUnix, aunque ha retomado de nuevo el nombre de UnixWare.

Thompson (izquierda) y Ritchie (centro) recibiendo la Medalla Nacional de Tecnologa de manos del presidente Clinton.

27

Bibliografa
1. http://es.wikipedia.org/wiki/FreeBSD 2. http://es.wikipedia.org/wiki/Historia_de_Linux 3. http://es.wikipedia.org/wiki/Historia_de_Mac_OS_X 4. http://es.wikipedia.org/wiki/LINUX 5. http://es.wikipedia.org/wiki/OS_X 6. http://es.wikipedia.org/wiki/Sistemas_operativos 7. http://es.wikipedia.org/wiki/Unix 8. http://es.wikipedia.org/wiki/Windows 9. http://www.britannica.com/EBchecked/topic/429897/operating-system-OS 10. http://www.britannica.com/EBchecked/topic/618280/UNIX 11. http://www.britannica.com/EBchecked/topic/686713/Linux 12. http://www.cad.com.mx/historia_de_linux.htm 13. TANENBAUM, ANDREW S. Sistemas operativos modernos. Tercera edicin PEARSON EDUCACIN, Mxico, 2009

28

Você também pode gostar