Está en la página 1de 26

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

UNIVERSIDAD NACIONAL DE LA ANMAZONIA PERUANA FACULTAD DE INGENIERIA DE SISTEMAS E INFORMATICA

Las Computados. La computadoras hacen su aparicin alrededor de 1940, sin embargo es conveniente conocer un poco la historio que antecede a esta aparicin. Uno de los primeros dispositivos mecnicos para contar fue el BACO, cuya historia se remonta a las antiguas civilizaciones griega y romana. Este dispositivo es muy sencillo, consta de cuentas ensartadas en varillas que a su vez estn montadas en un marco rectangular. Al desplazar las cuentas sobre varillas, sus posiciones representan valores almacenados, y es mediante dichas posiciones que este representa y almacena datos. A este dispositivo no se le puede llamar computadora por carecer del elemento fundamental llamado programa. Otro de los inventos mecnicos fue la Pascalina inventada por Blaise Pascal (1623-1662) de Francia

SISTEMAS OPERATIVOS

1 Unidad INTRODUCCIN A LOS SISTEMAS OPERATIVOS Las Computadoras. Modelo de Von Neumann. Historia de los Sistemas Operativos Elementos Estructurales. Registro. Instrucciones. Interrupciones. Memoria. Logros.

Ing. Cip. Carlos Gonzlez Aspajo y la de Gottfried Wilhelm von Leibniz (1646-1716) de Alemania.
Pg. 1/52 Ing. Cip. Carlos Gonzlez Aspajo Pg. 2/52 Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

perforados en tarjetas de papel rgido. Al enterarse de este mtodo Babbage abandon la mquina de diferencias y se dedico al proyecto de la mquina analtica que se pudiera programar con tarjetas perforadas para efectuar cualquier clculo con una precisin de 20 dgitos.

Con estas mquinas, los datos se representaban mediante las posiciones de los engranajes, y los datos se introducan manualmente estableciendo dichas posiciones finales de las ruedas, de manera similar a como leemos los nmeros en el cuentakilmetros de un automvil. La primera computadora fue la mquina analtica creada por Charles Babbage, profesor matemtico de la Universidad de Cambridge en el siglo XIX. La idea que tuvo Charles Babbage sobre un computador naci debido a que la elaboracin de las tablas matemticas era un proceso tedioso y propenso a errores. En 1823 el gobierno Britnico lo apoyo para crear el proyecto de una mquina de diferencias, un dispositivo mecnico para efectuar sumas repetidas. Mientras tanto Charles Jacquard (francs), fabricante de tejidos, haba creado un telar que poda reproducir automticamente patrones de tejidos leyendo la informacin codificada en patrones de agujeros
Pg. 3/52 Ing. Cip. Carlos Gonzlez Aspajo

La tecnologa de la poca no bastaba para hacer realidad sus ideas. El mundo no estaba listo, y no lo estara por cien aos ms.

Pg. 4/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

En 1944 se construy en la Universidad de Harvard, la Mark I, diseada por un equipo encabezado por Howard H. Aiken.

de energa elctrica y requera todo un sistema de aire acondicionado, pero tena la capacidad de realizar cinco mil operaciones aritmticas en un segundo. El proyecto, auspiciado por el departamento de Defensa de los Estados Unidos, culmin dos aos despus, cuando se integr a ese equipo el ingeniero y matemtico Hngaro John von Neumann (1903-1957). Las ideas de von Neumann resultaron tan fundamentales para su desarrollo posterior, que es considerado el padre de las computadoras. La EDVAC (Electronic Discrete Variable Automatic Computer) fue diseada por este nuevo equipo. Tena aproximadamente cuatro mil bulbos y usaba un tipo de memoria basado en tubos llenos de mercurio por donde circulaban seales elctricas sujetas a retardos.

Esta mquina no est considerada como computadora electrnica debido a que no era de propsito general y su funcionamiento estaba basado en dispositivos electromecnicos llamados relevadores. En 1947 se construy en la Universidad de Pennsylvania la ENIAC (Electronic Numerical Integrator And Calculator) que fue la primera computadora electrnica, el equipo de diseo lo encabezaron los ingenieros John Mauchly y John Eckert.

Esta mquina ocupaba todo un stano de la Universidad, tena ms de 18,000 tubos de vaco, consuma 200 KW
Pg. 5/52 Ing. Cip. Carlos Gonzlez Aspajo Pg. 6/52 Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

La idea fundamental de von Neumann fue: permitir que en la memoria coexistan datos con instrucciones, para que entonces la computadora pueda ser programada en un lenguaje, y no por medio de alambres que elctricamente interconectaban varias secciones de control, como en la ENIAC. Todo este desarrollo de las computadoras suele divisarse por generaciones y el criterio que se determin para determinar el cambio de generacin no est muy bien definido, pero resulta aparente que deben cumplirse al menos los siguientes requisitos: La forma en que estn construidas. La Forma en que el ser humano se comunica con ellas.

Esta generacin abarco la dcada de los cincuenta. Y se conoce como la primera generacin. Estas mquinas tenan las siguientes caractersticas: Estas mquinas estaban construidas por medio de tubos de vaco. Eran programadas en lenguaje de mquina.

En esta generacin las mquinas son grandes y costosas (de un costo aproximado de ciento de miles de dlares). En 1951 aparece la UNIVAC (Universal Computer), fue la primera computadora comercial, que dispona de mil palabras de memoria central y podan leer cintas magnticas, se utiliz para procesar el censo de 1950 en los Estados Unidos.

Primera Generacin 1940-1952. Elemento de Control: Vlvula de Vacio. Empleadas en Clculos Cientficos, Balsticos y de Navegacin. Lenguaje Mquina y Cableado Manual. Memoria: Tarjetas y Cintas perforadas. Lneas de demora de Mercurio. En las dos primeras generaciones, las unidades de entrada utilizaban tarjetas perforadas, retomadas por Herman Hollerith (1860 - 1929), quien adems fund una compaa que con el paso del tiempo se conocera como IBM (International Bussines Machines).

En esta generacin haba un gran desconocimiento de las capacidades de las computadoras, puesto que se realiz un estudio en esta poca que determin que con veinte computadoras se saturara el mercado de los Estados Unidos en el campo de procesamiento de datos.

Pg. 7/52

Ing. Cip. Carlos Gonzlez Aspajo

Pg. 8/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

Despus se desarroll la IBM 701 de la cual se entregaron 18 unidades entre 1953 y 1957. Posteriormente, la compaa Remington Rand fabric el modelo 1103, que competa con la 701 en el campo cientfico, por lo que la IBM desarrollo la 702, la cual present problemas en memoria, debido a esto no dur en el mercado. La computadora ms exitosa de la primera generacin fue la IBM 650, de la cual se produjeron varios cientos. Esta computadora que usaba un esquema de memoria secundaria llamado tambor magntico, que es el antecesor de los discos duros actuales. Otros modelos de computadora que se pueden situar en los finales de la primera generacin son: la UNIVAC 80 y 90, las IBM 704 y 709, Burroughs 220 y UNIVAC 1105. Segunda Generacin 1952-1964. Elemento de Control: Transistor. (menor tamao, mayor fiabilidad) Empleadas en Clculos Cientficos, Militares, Administrativos y de Gestin. Primeros Lenguajes de Programacin. Memorias: Ncleos de Ferrita y Cintas Magnticas.

Tambin en esta poca se empez a definir la forma de comunicarse con las computadoras, que reciba el nombre de programacin de sistemas. Las caractersticas de la segunda generacin son las siguientes: Estn construidas con circuitos de transistores. Se programan en nuevos lenguajes llamados lenguajes de alto nivel.

En esta generacin las computadoras se reducen de tamao y son de menor costo. Aparecen muchas compaas y las computadoras eran bastante avanzadas para su poca como la serie 5000 de Burroughs y la ATLAS de la Universidad de Manchester. Algunas de estas computadoras se programaban con cintas perforadas y otras ms por medio de cableado en un tablero. Los programas eran hechos a la medida por un equipo de expertos: analistas, diseadores, programadores y operadores que se manejaban como una orquesta para resolver los problemas y clculos solicitados por la administracin. El usuario final de la informacin no tena contacto directo con las computadoras. Esta situacin en un principio se produjo en las primeras computadoras personales, pues se requera saberlas
Pg. 10/52 Ing. Cip. Carlos Gonzlez Aspajo

Cerca de la dcada de 1960, las computadoras seguan evolucionando, se reduca su tamao y creca su capacidad de procesamiento.

Pg. 9/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

"programar" (alimentarle instrucciones) para obtener resultados; por lo tanto su uso estaba limitado a aquellos audaces pioneros que gustaran de pasar un buen nmero de horas escribiendo instrucciones, "corriendo" el programa resultante y verificando y corrigiendo los errores o bugs que aparecieran. Adems, para no perder el "programa" resultante haba que "guardarlo" (almacenarlo) en una grabadora de casette, pues en esa poca no haba discos flexibles y mucho menos discos duros para las PC; este procedimiento poda tomar de 10 a 45 minutos, segn el programa. El panorama se modific totalmente con la aparicin de las computadoras personales con mejores circuitos, ms memoria, unidades de disco flexible y sobre todo con la aparicin de programas de aplicacin general en donde el usuario compra el programa y se pone a trabajar. Aparecen los programas procesadores de palabras como el clebre Word Star, la impresionante hoja de clculo (spreadsheet) Visicalc y otros ms que de la noche a la maana cambian la imagen de la PC. El software empieza a tratar de alcanzar el paso del hardware. Pero aqu aparece un nuevo elemento: el usuario. El usuario de las computadoras va cambiando y evolucionando con el tiempo. De estar totalmente desconectado a ellas en las mquinas grandes pasa la PC a ser pieza clave en el diseo tanto del hardware como del software.

Aparece el concepto de human interface que es la relacin entre el usuario y su computadora. Se habla entonces de hardware ergonmico (adaptado a las dimensiones humanas para reducir el cansancio), diseos de pantallas antirreflejos y teclados que descansen la mueca. Con respecto al software se inicia una verdadera carrera para encontrar la manera en que el usuario pase menos tiempo capacitndose y entrenndose y ms tiempo produciendo. Se ponen al alcance programas con mens (listas de opciones) que orientan en todo momento al usuario; otros programas ofrecen toda una artillera de teclas de control y teclas de funciones (atajos) para efectuar toda suerte de efectos en el trabajo. Se ofrecen un sinnmero de cursos prometiendo que en pocas semanas hacen de cualquier persona un experto en los programas comerciales. Pero el problema "constante" es que ninguna solucin para el uso de los programas es "constante". Cada nuevo programa requiere aprender nuevos controles, nuevos trucos, nuevos mens. Se empieza a sentir que la relacin usuario-PC no est acorde con los desarrollos del equipo y de la potencia de los programas. Hace falta una relacin amistosa entre el usuario y la PC. Las computadoras de esta generacin fueron: la Philco 212 (esta compaa se retir del mercado en 1964) y la UNIVAC M460, la Control Data Corporation modelo 1604, seguida por la serie 3000, la IBM mejor la 709 y sac al
Pg. 12/52 Ing. Cip. Carlos Gonzlez Aspajo

Pg. 11/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

mercado la 7090, la National Cash Register empez a producir mquinas para proceso de datos de tipo comercial, introdujo el modelo NCR 315. La Radio Corporation of America introdujo el modelo 501, que manejaba el lenguaje COBOL, para procesos administrativos y comerciales. Despus sali al mercado la RCA 601. Tercera generacin 1964-1971. Circuitos Integrados, Placas de Silicio o Plstico con varios componentes discretos. Sistemas Operativos, Modo Interactivo. Memorias de Semiconductores y Discos Magnticos

canales, paquetes de discos magnticos caractersticas que ahora son estndares.

y otras

Con los progresos de la electrnica y los avances de comunicacin con las computadoras en la dcada de los 1960, surge la tercera generacin de las computadoras. Se inaugura con la IBM 360 en abril de 1964 Las caractersticas de esta generacin fueron las siguientes: Su fabricacin electrnica est basada en circuitos integrados. Su manejo es por medio de los lenguajes de control de los sistemas operativos.

El sistema operativo de la serie 360, se llam OS que contaba con varias configuraciones, inclua un conjunto de tcnicas de manejo de memoria y del procesador que pronto se convirtieron en estndares. En 1964 CDC introdujo la serie 6000 con la computadora 6600 que se consider durante algunos aos como la ms rpida. En la dcada de 1970, la IBM produce la serie 370 (modelos 115, 125, 135, 145, 158, 168). UNIVAC compite son los modelos 1108 y 1110, mquinas en gran escala; mientras que CDC produce su serie 7000 con el modelo 7600. Estas computadoras se caracterizan por ser muy potentes y veloces. A finales de esta dcada la IBM de su serie 370 produce los modelos 3031, 3033, 4341.

La IBM produce la serie 360 con los modelos 20, 22, 30, 40, 50, 65, 67, 75, 85, 90, 195 que utilizaban tcnicas especiales del procesador, unidades de cinta de nueve
Pg. 13/52 Ing. Cip. Carlos Gonzlez Aspajo

Pg. 14/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

Burroughs con su serie 6000 produce los modelos 6500 y 6700 de avanzado diseo, que se reemplazaron por su serie 7000. Honey - Well participa con su computadora DPS con varios modelos. A mediados de la dcada de 1970, aparecen en el mercado las computadoras de tamao mediano, o minicomputadoras que no son tan costosas como las grandes (llamadas tambin como mainframes que significa tambin, gran sistema), pero disponen de gran capacidad de procesamiento. Algunas minicomputadoras fueron las siguientes: la PDP - 8 y la PDP - 11 de Digital Equipment Corporation, la VAX (Virtual Address eXtended) de la misma compaa, los modelos NOVA y ECLIPSE de Data General, la serie 3000 y 9000 de Hewlett - Packard con varios modelos el 36 y el 34, la Wang y Honey - Well -Bull, Siemens de origen alemn, la ICL fabricada en Inglaterra. En la Unin Sovitica se utiliz la US (Sistema Unificado, Ryad) que ha pasado por varias generaciones. Cuarta Generacin 1971-1981. Microprocesador, toda la CPU en un nico circuito. Gran Cantidad de Lenguajes de Programacin. Para diferentes propsitos. Almacenamiento en disquete y primeras redes.

Las microcomputadoras con base en estos circuitos son extremadamente pequeas y baratas, por lo que su uso se extiende al mercado industrial. Aqu nacen las computadoras personales que han adquirido proporciones enormes y que han influido en la sociedad en general sobre la llamada "revolucin informtica". En 1976 Steve Wozniak y Steve Jobs inventan la primera microcomputadora de uso masivo y ms tarde forman la compaa conocida como la Apple que fue la segunda compaa ms grande del mundo, antecedida tan solo por IBM (Lenovo); y esta por su parte es an de las cinco compaas ms grandes del mundo. Con el surgimiento de las computadoras personales, el software y los sistemas que con ellas de manejan han

Aqu aparecen los microprocesadores que es un gran adelanto de la microelectrnica, son circuitos integrados de alta densidad y con una velocidad impresionante.
Pg. 15/52 Ing. Cip. Carlos Gonzlez Aspajo

Pg. 16/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

tenido un considerable avance, porque han hecho ms interactiva la comunicacin con el usuario. Surgen otras aplicaciones como los procesadores de palabra, las hojas electrnicas de clculo, paquetes grficos, etc. Tambin las industrias del Software de las computadoras personales crece con gran rapidez, Kildall y Gates se dedicaron durante aos a la creacin de sistemas operativos y mtodos para lograr una utilizacin sencilla de las microcomputadoras (son los creadores de CP/M y de los productos de Microsoft). Las minicomputadoras y los grandes sistemas continan en desarrollo. De hecho las mquinas pequeas rebasaban por mucho la capacidad de los grandes sistemas de 10 o 15 aos antes, que requeran de instalaciones costosas y especiales, pero sera equivocado suponer que las grandes computadoras han desaparecido; por el contrario, su presencia era ya ineludible en prcticamente todas las esferas de control gubernamental, militar y de la gran industria. Las enormes computadoras de las series CDC, CRAY, Hitachi o IBM por ejemplo, eran capaces de atender a varios cientos de millones de operaciones por segundo. Quinta Generacin 1981 Microchips. Muy Alta Integracin. Sistemas Operativos ms intuitivos. Programas y Aplicaciones de Usuario. Datos, Imagen y Voz. (Multimedia).
Ing. Cip. Carlos Gonzlez Aspajo

Interconexin entre las computadoras.(Internet). Inteligencia Artificial.

En vista de la acelerada marcha de la microelectrnica, la sociedad industrial se ha dado a la tarea de poner tambin a esa altura el desarrollo del software y los sistemas con que se manejan las computadoras. Surge la competencia internacional por el dominio del mercado de la computacin, en la que se perfilan dos lderes que, sin embargo, no han podido alcanzar el nivel que se desea: la capacidad de comunicarse con la computadora en un lenguaje ms cotidiano y no a travs de cdigos o lenguajes de control especializados. Japn lanz en 1983 el llamado "programa de la quinta generacin de computadoras", con los objetivos explcitos de producir mquinas con innovaciones reales en los criterios mencionados. Y en los Estados Unidos ya est en actividad un programa en desarrollo que persigue objetivos semejantes, que pueden resumirse de la siguiente manera: Procesamiento en paralelo mediante arquitecturas y diseos especiales y circuitos de gran velocidad. Manejo de lenguaje natural y sistemas de inteligencia artificial.

El futuro previsible de la computacin es muy interesante, y se puede esperar que esta ciencia siga siendo objeto de atencin prioritaria de gobiernos y de la sociedad en conjunto.

Pg. 17/52

Pg. 18/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

Evolucin Del Microprocesador. 1971: Intel 4004. Nota: Fue el primer microprocesador comercial. Sali al mercado el 15 de noviembre de 1971. 1974: Intel 8008. 1975: Signetics 2650, MOS 6502, Motorola 6800. 1976: Zilog Z80 1978: Intel 8086, Motorola 68000 1979: Intel 8088 1982: Intel 80286, Motorola 68020 1985: Intel 80386, Motorola 68020, AMD80386 1987: Motorola 68030 1989: Intel 80486, Motorola 68040, AMD80486 1993: Intel Pentium, Motorola 68060, AMD K5, MIPS R10000 1995: Intel Pentium Pro 1997: Intel Pentium II, AMD K6, PowerPC G3, MIPS R120007 1999: Intel Pentium III, AMD K6-2, PowerPC G4 2000: Intel Pentium 4, Intel Titanium 2, AMD Athlon XP, AMD Duron, MIPS R14000 2003: PowerPC G5 2004: Intel Pentium M 2005: Intel Pentium D, Intel Extreme Edition con hyper threading, Intel Core Duo, AMD Athlon 64, AMD Athlon 64 X2, AMD Sempron 128. 2006: Intel Core 2 Duo, Intel Core 2 Extreme, AMD Athlon FX 2007: Intel Core 2 Quad, AMD Quad Core, AMD Quad FX 2008: Procesadores Intel y AMD con ms de 8 ncleos.
Ing. Cip. Carlos Gonzlez Aspajo

MODELO DE VON NEUMANN Las computadoras digitales actuales se ajustan al modelo propuesto por el matemtico John Von Neumann (19031957). De acuerdo con l, una caracterstica importante de este modelo es que tanto los datos como los programas, se almacenan en la memoria antes de ser utilizados.

Pg. 19/52

Pg. 20/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

LA SEGUNDA GUERRA MUNDIAL Y EL TRABAJO COMPUTACIONAL Y DE DESARROLLO DE ORDENADORES DE VON NEUMANN.

atmico de Hiroshima (6 de agosto de 1945) y Nagasaki (9 de agosto de 1945). La gnesis de este proyecto fue una carta de Albert Einstein y Leo Szilard de 2 de agosto de 1939 dirigida al Presidente Roosevelt en la que advertan del riesgo del uso militar de los descubrimientos de la fusin nuclear en manos de Adolf Hitler. La carta desencaden el comienzo del Programa de Energa Atmica americano que llev a la construccin en Chicago en 1942 del primer reactor nuclear y a la fabricacin en el laboratorio de Los lamos de la bomba atmica de Plutonio 239, que estall en Alamogordo, en el desierto de Nuevo Mxico, el 6 de junio de 1945. La ignicin de la bomba se llev a cabo mediante el mecanismo de implosin, cuya configuracin se debi casi completamente a von Neumann, que particip en el proyecto como experto en hidrodinmica.

Durante la Segunda Guerra Mundial, von Neumann form parte del equipo interdisciplinario que, bajo la coordinacin cientfica del fsico Robert Oppenheimer y la direccin administrativa del general Leslie Groves, trabajaba en el Laboratorio de Los lamos (Nuevo Mxico) en el Proyecto Manhatan, que cont con la participacin de unas 125.000 personas para disear y fabricar la primera bomba atmica basada en el mecanismo de fusin nuclear. El Proyecto Manhatan dio grandes aportaciones cientficas y tcnicas, teidas por el luto del holocausto

Este mecanismo de ignicin fue concebido inicialmente por Neddermayer y llev a von Neumann, como miembro del equipo del Proyecto Manhatan, a enfrentarse con un problema de Mecnica de Fluidos en el que se trataba de modelizar el flujo de un gas comprensible en un tubo con una nica coordenada generalizada. Las leyes de conservacin del momento lineal y de la masa le llevaron a un sistema de ecuaciones diferenciales en derivadas parciales que no tena solucin por mtodos analticos.

Pg. 21/52

Ing. Cip. Carlos Gonzlez Aspajo

Pg. 22/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

Discretiz el tubo y aproxim el sistema de ecuaciones diferenciales por un sistema de ecuaciones en diferencias finitas cuya resolucin exiga: Elaborar la teora de estabilidad de la discretizacin. Desarrollar algoritmos eficientes de resolucin. Crear un lenguaje de programacin para implementar esos algoritmos. Utilizar un ordenador capaz de ejecutar los algoritmos en el menor tiempo posible.

W. Mauchly a instancias Armamento del Ejrcito.

del

Departamento

de

El cableado del ENIAC deba ser adaptado a cada problema, por lo que deba ser modificado cada vez que se cambiaba de problema. Tena 18,000 vlvulas, era capaz de realizar 5,000 clculos por segundo y permaneca ms tiempo averiado que en funcionamiento. No es justo considerar el ENIAC como el primer ordenador propiamente dicho. Esta primogenitura debe reservarse para el COLOSSUS, diseado por el matemtico Max Newman y construido por Tom Flowes en diciembre de 1943 en el centro de investigacin de la Oficina de Correos de Dollis Hill de Londres, fue utilizada por los alemanes para encriptar las comunicaciones entre Hitler y sus generales. Max Newman se haba inspirado en las mquinas diseadas por Alan Turing para averiguar el cdigo numrico generado por la mquina alemana ENIGMA, que encriptaba las comunicaciones alemanas durante la primera Guerra Mundial. Von Neumann cambi el diseo lgico del ENIAC y estableci un cableado capaz de abordar muchos problemas diferentes. En 1944 obtuvo por computacin la descripcin del comportamiento oscilatorio de la solucin del problema hidrodinmico que estaba estudiando para el Proyecto Manhatan.

Von Neumann dedic sus energas al desarrollo de este programa de trabajo. Partiendo de un artculo de Courant, Friedrichs y Lewy obtuvo contribuciones notables en la investigacin de la estabilidad numrica de los mtodos de diferencias finitas, tras lo que concentr su inters en la obtencin de aplicaciones de los ordenadores a la resolucin de problemas de anlisis numrico. Por ello von Neumann se mostr interesado en el Calculador ASCC de Howard Airen, en los computadores de rels electromecnicos de George Stibitz y en los trabajos de Jan Schilt del Watson Scientific Computing Laboratory de la Universidad de Columbia. Pero su problema de ecuaciones en diferencias finitas lo resolvi con una mquina IBM de tarjetas perforadas y el ordenador ENIAC (Electronic Numerical Integrator and Calculador) que haba sido construido en secreto en 1943 en la Escuela Moore de Ingeniera Elctrica de la Universidad de Pensilvania por Presper Eckertt y John

Pg. 23/52

Ing. Cip. Carlos Gonzlez Aspajo

Pg. 24/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

Despus de la guerra Von Neumann colabor en el proyecto de diseo y fabricacin del EDVAC (Electronic Discrete Variable Automatic Computer), sobre el que termin su informe tcnico en primavera de 1945, proponiendo un sistema de computacin digital de alta velocidad totalmente automatizado. Con este ordenador sent las bases de la arquitectura de ordenadores que hoy lleva su nombre y corrigi los fallos estructurales del ENIAC. En el proyecto inicial del EDVAC participaron Eckert y Mauchly, que luego lo abandonaron por una controversia con von Neumann sobre derechos de patentes, quedando von Neumann al frente de un equipo de matemticos e ingenieros que completaron la fabricacin del nuevo ordenador en el Instituto de Estudios Avanzados de Princeton. El EDVAC se inaugur oficialmente el 10 de junio de 1952 y se realizaron varias copias, como el JOHNIAC, construido por la RAND Corporation, fundada por la Army Air Force en 1946, con la que Von Neumann colabor activamente desde 1948 como asesor cientfico de la Fuerza Area, llegando a presidir el denominado comit von Neumann, encargado de la evaluacin de misiles estratgicos y aprobando el proyecto Atlas para el desarrollo de un misil balstico intercontinental. Durante los aos de fabricacin del EDVAC recibi otros nombramientos. En 1946 fue nombrado presidente del Comit de Computacin de Alta Velocidad del Consejo de
Pg. 25/52 Ing. Cip. Carlos Gonzlez Aspajo

Investigacin Nacional de EEUU al tiempo que segua colaborando con la Comisin de Energa Atmica. En 1950 la compaa IBM lo emple como consultor para evaluar proyectos de tecnologa avanzada. En 1952 pas a formar parte del Comit General de Expertos de la Comisin de Energa Atmica, presidiendo el Subcomit de Armas desde 1953. Con posterioridad, en 1955, von Neumann fue nombrado por el Congreso de los EEUU uno de los cinco miembros de la Comisin de Energa Atmica, cargo que ocup hasta su muerte el 8 de febrero de 1957 y que le oblig a trasladarse a Wasinghton. Adems del desarrollo de los ordenadores, von Neumann observ que los mtodos de anlisis numrico desarrollados hasta entonces no siempre eran los ms adecuados para implementarlos en un ordenador programable, lo que le llev a modificar algunos mtodos clsicos, a desarrollar otros nuevos y a escribir rutinas que desarrollaban algoritmos para resolver ecuaciones, encontrar valores propios, invertir matrices, hallar extremos de funciones de varias variables, etc.

Pg. 26/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

HISTORIA DE LOS SISTEMAS OPERATIVOS Un sistema operativo es un software de sistema, es decir, un conjunto de programas de computadora destinado a permitir una administracin eficaz de sus recursos. Comienza a trabajar cuando se enciende el computador, y gestiona el hardware de la mquina desde los niveles ms bsicos, permitiendo tambin la interaccin con el usuario. Un sistema operativo es posible encontrar normalmente en la mayora de los aparatos electrnicos que utilicen microprocesadores para funcionar, ya que gracias a stos podemos entender la mquina y que sta cumpla con sus funciones (telfonos mviles, reproductores de DVD, autoradios, computadoras, etc). Actualmente el concepto de computadora esta intrnsecamente relacionado al de sistema operativo, aunque ste existe en otros aparatos electrnicos y no slo en las computadoras. A finales de los aos 40, con lo que podramos llamar la aparicin de la primera generacin de computadoras, se acceda directamente a la consola de la computadora desde la cual se actuaba sobre una serie de micro interruptores que permitan introducir directamente el programa en la memoria de la computadora (en realidad al existir tan pocas computadoras todos podran considerarse prototipos y cada constructor lo haca sin seguir ningn criterio predeterminado). Por aquel entonces no existan los sistemas operativos, y los programadores deban interactuar con el hardware del
Pg. 27/52 Ing. Cip. Carlos Gonzlez Aspajo

computador sin ayuda externa. Esto haca que el tiempo de preparacin para realizar una tarea fuera considerable. A principios de los aos 50 con el objeto de facilitar la interaccin entre persona y computador, los sistemas operativos hacen una aparicin discreta y bastante simple, con conceptos tales como el monitor residente, el proceso por lotes y el almacenamiento temporal. Monitor residente Su funcionamiento era bastante simple, se limitaba a cargar los programas a memoria, leyndolos de una cinta o de tarjetas perforadas, y ejecutarlos. El problema era encontrar una forma de optimizar el tiempo entre la retirada de un trabajo y el montaje del siguiente. era sumamente complicado, por el hecho de que eran tarjetas perforadas las cuales las tena que leer el sistema. Procesamiento por lotes Como solucin para optimizar, en un mismo ncleo de cinta o conjunto de tarjetas se montaban los programas, de forma que se ejecutaran uno a continuacin de otro sin perder apenas tiempo en la transicin. Almacenamiento temporal Su objetivo era disminuir el tiempo de carga de los programas, haciendo simultnea la carga del programa o la salida de datos con la ejecucin de la siguiente tarea. Para ello se utilizaban dos tcnicas, el buffering y el spooling.

Pg. 28/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

En los aos 60 se produjeron cambios notorios en varios campos de la informtica, con la aparicin del circuito integrado la mayora orientados a seguir incrementando el potencial de los computadores. Para ello se utilizaban tcnicas de lo ms diversas: Multiprogramacin En un sistema multiprogramado, la memoria principal alberga a ms de un programa de usuario. La CPU ejecuta instrucciones de un programa, cuando el que se encuentra en ejecucin realiza una operacin de E/S; en lugar de esperar a que termine la operacin de E/S, se pasa a ejecutar otro programa. Si ste realiza, a su vez, otra operacin de E/S, se mandan las rdenes oportunas al controlador, y pasa a ejecutarse otro. De esta forma es posible, teniendo almacenado un conjunto adecuado de tareas en cada momento, utilizar de manera ptima los recursos disponibles. Tiempo compartido En este punto tenemos un sistema que hace buen uso de la electrnica disponible, pero adolece la falta de interactividad; para conseguirla debe convertirse en un sistema multiusuario, en el cual existen varios usuarios con un terminal en lnea, utilizando el modo de operacin de tiempo compartido. En estos sistemas los programas de los distintos usuarios residen en memoria. Al realizar una operacin de E/S los programas ceden la CPU a otro programa, al igual que en la multiprogramacin. Pero, a diferencia de sta, cuando un programa lleva cierto tiempo ejecutndose el sistema operativo lo detiene para que se ejecute otra aplicacin.

Tiempo real Estos sistemas se usan en entornos donde se deben aceptar y procesar en tiempos muy breves un gran nmero de sucesos, en su mayora externos al ordenador. Si el sistema no respeta las restricciones de tiempo en las que las operaciones deben entregar su resultado se dice que ha fallado. El tiempo de respuesta a su vez debe servir para resolver el problema o hecho planteado. El procesamiento de archivos se hace de una forma continua, pues se procesa el archivo antes de que entre el siguiente, sus primeros usos fueron y siguen siendo en telecomunicaciones. Multiprocesador Permite trabajar con mquinas que poseen ms de un microprocesador. En un multiprocesador Se denomina multiprocesador a un ordenador que cuenta con dos o ms microprocesadores (CPUs). Gracias a esto, el multiprocesador puede ejecutar simultneamente varios hilos pertenecientes a un mismo proceso o bien a procesos diferentes. Los ordenadores multiprocesadores presentan problemas de diseo que no se encuentran en ordenadores monoprocesador. Estos problemas derivan del hecho de que dos programas pueden ejecutarse simultneamente y, potencialmente, pueden interferirse entre s. Concretamente, en lo que se refiere a las lecturas y escrituras en memoria.

Pg. 29/52

Ing. Cip. Carlos Gonzlez Aspajo

Pg. 30/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

Existen dos problemas:

arquitecturas

que

resuelven

estos

La arquitectura NUMA, donde cada procesador tiene acceso y control exclusivo a una parte de la memoria. La arquitectura SMP, donde todos los procesadores comparten toda la memoria. Esta ltima debe lidiar con el problema de la coherencia de cach. Cada microprocesador cuenta con su propia memoria cache local. De manera que cuando un microprocesador escribe en una direccin de memoria, lo hace nicamente sobre su copia local en cach. Si otro microprocesador tiene almacenada la misma direccin de memoria en su cach, resultar que trabaja con una copia obsoleta del dato almacenado. Para que un multiprocesador opere correctamente necesita un sistema operativo especialmente diseado para ello. La mayora de los sistemas operativos actuales poseen esta capacidad. Sistemas operativos desarrollados Adems del Atlas Supervisor y el OS/360, los aos 70 marcaron el inicio de UNIX, a mediados de los 60 aparece Multics, sistema operativo multiusuario multitarea desarrollado por los laboratorios Bell de AT&T y programado en PL/1 uno de los pocos SO desarrollados en un lenguaje de alto nivel en aquel tiempo, luego del fracaso del proyecto, UNIX comienza a desarrollarse a partir de este a finales de la dcada. Debido al avance de la electrnica, pudo empezar a crearse circuitos con miles de transistores en un
Pg. 31/52 Ing. Cip. Carlos Gonzlez Aspajo

centmetro cuadrado de silicio, lo que llevara, pocos aos despus, a producir los primeros sistemas integrados. sta dcada se podra definir como la de los sistemas de propsito general y en ella se desarrollan tecnologas que se siguen utilizando en la actualidad. Es en los aos 70 cuando se produce el boom de los miniordenadores y la informtica se acerca al nivel de usuario. En lo relativo a lenguajes de programacin, es de sealar la aparicin de Pascal y C, el ltimo de los cuales se cre especficamente para reescribir por completo el cdigo del sistema operativo Unix, convirtindolo en uno de los pocos SO escrito en un lenguaje de alto nivel. En el campo de la programacin lgica se dio a luz la primera implementacin de Prolog, y en la revolucionaria orientacin a objetos, Smalltalk. Inconvenientes de los sistemas existentes Se trataba de sistemas grandes y costosos, pues antes no se haba construido nada similar y muchos de los proyectos desarrollados terminaron con costos muy por encima del presupuesto y mucho despus de lo que se marcaba como fecha de finalizacin. Adems, aunque formaban una capa entre el hardware y el usuario, ste deba conocer un complejo lenguaje de control para realizar sus trabajos. Otro de los inconvenientes es el gran consumo de recursos que ocasionaban, debido a los grandes espacios de memoria principal y secundaria ocupados, as como el tiempo de procesador consumido. Es por esto que se intent hacer hincapi en mejorar las tcnicas ya existentes de multiprogramacin y tiempo compartido.

Pg. 32/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

Caractersticas de los nuevos sistemas Para solventar los problemas antes comentados, se realiz un costossimo trabajo para interponer una amplia capa de software entre el usuario y la mquina, de forma que el primero no tuviese que conocer ningn detalle de la circuitera. Sistemas operativos desarrollados MULTICS (Multiplexed Information and Computing Service): Originalmente era un proyecto cooperativo liderado por Fernando Corbat del MIT, con General Electric y los laboratorios Bell, que comenz en los 60, pero los laboratorios Bell abandonaron en 1969 para comenzar a crear el sistema UNIX. Se desarroll inicialmente para el mainframe GE-645, un sistema de 36 bits; despus fue soportado por la serie de mquinas Honeywell 6180. Fue uno de los primeros sistemas operativos de tiempo compartido, que implement un solo nivel de almacenamiento para el acceso a los datos, desechando la clara distincin entre los ficheros y los procesos en memoria, y uno de los primeros sistemas multiprocesador. MVS (Multiple Virtual Storage): Fue el sistema operativo ms usado en los modelos de mainframes ordenadores grandes, potentes y caros usados principalmente por grandes compaas para el procesamiento de grandes cantidades de datosSystem/370 y System/390 de IBM, desarrollado tambin por IBM y lanzado al mercado por primera vez en 1974.

Como caractersticas destacables, permita la ejecucin de mltiples tareas, adems de que introdujo el concepto de memoria virtual y finalmente aadi la capacidad de que cada programa tuviera su propio espacio de direccionamiento de memoria, de ah su nombre. CP/M (Control Program/Monitor): Desarrollado por Gary Kildall para el microprocesador 8080/85 de Intel y el Zilog Z80, sali al mercado en 1976, distribuyndose en disquetes de ocho pulgadas. Fue el SO ms usado en las computadoras personales de esta dcada. Su xito se debi a que era porttil, permitiendo que diferentes programas interactuasen con el hardware de una manera estandarizada. Estaba compuesto de dos subsistemas: CCP (Comand Control Processor): Intrprete de comandos que permita introducir los mandatos con sus parmetros separados por espacios. Adems, los traduca a instrucciones de alto nivel destinadas a BDOS. BDOS (Basic Disk Operating System): Traductor de las instrucciones en llamadas a la BIOS. El hecho de que, aos despus, IBM eligiera para sus PC a MS-DOS supuso su mayor fracaso, por lo que acab desapareciendo. Con la creacin de los circuitos LSI -integracin a gran escala-, chips que contenan miles de transistores en un centmetro cuadrado de silicio, empez el auge de los ordenadores personales. En stos se dej un poco de lado el rendimiento y se busc ms que el sistema operativo fuera amigable, surgiendo mens, e interfaces
Pg. 34/52 Ing. Cip. Carlos Gonzlez Aspajo

Pg. 33/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

grficas. Esto reduca la rapidez de las aplicaciones, pero se volvan ms prcticos y simples para los usuarios. En esta poca, siguieron utilizndose lenguajes ya existentes, como Smalltalk o C, y nacieron otros nuevos, de los cuales se podran destacar: C++ y Eiffel dentro del paradigma de la orientacin a objetos, y Haskell y Miranda en el campo de la programacin declarativa. Un avance importante que se estableci a mediados de la dcada de 1980 fue el desarrollo de redes de computadoras personales que corran sistemas operativos en red y sistemas operativos distribuidos. En esta escena, dos sistemas operativos eran los mayoritarios: MS-DOS(MicroSoft Disk Operating), escrito por Microsoft para IBM PC y otras computadoras que utilizaban la CPU Intel 8088 y sus sucesores, y UNIX, que dominaba en los ordenadores personales que hacan uso del Motorola 68000. Apple Macintosh El lanzamiento oficial se produjo en enero de 1984, al precio de 2,495 dlares. Muchos usuarios, al ver que estaba completamente diseado para funcionar a travs de una GUI (Graphic User Interface), acostumbrados a la lnea de comandos, lo tacharon de juguete. A pesar de todo, el Mac se situ a la cabeza en el mundo de la edicin a nivel grfico. MS-DOS En 1981 Microsoft compr un sistema operativo llamado QDOS que, tras realizar unas pocas modificaciones, se convirti en la primera versin de MS-DOS (MicroSoft Disk Operating System). A partir de aqu se sucedieron una serie de cambios hasta llegar a la versin 7.1, a partir de la cual MS-DOS dej de existir como tal y se
Pg. 35/52 Ing. Cip. Carlos Gonzlez Aspajo

convirti en una parte integrada del sistema operativo Windows. GNU/Linux La idea de un Sistema Operativo Libre para la humanidad nace en 1984, impulsada por Richard Stallman, exempleado del MIT. Motivado por esta idea comienza la construccin y desarrollo de las herramientas elementales que componen a un Sistema Operativo, a esta parte del desarrollo del Sistema Operativo se le conoce como proyecto GNU. En esta etapa Richard Stallman cuenta con la colaboracin de miles de programadores a nivel mundial. En 1991 aparece la primera versin del ncleo de Linux. Creado por Linus Torvalds, pero antes de que este apareciera ya exista la mayora de las herramientas que componan al SO, pero aun as el Kernel Linux tiene una importancia fundamental para el proyecto, es tal la importancia del este que el proyecto termina llamndose GNU/Linux, dando un 50% de importancia a ambas partes. Este sistema es similar a Unix, basado en el estndar POSIX, un sistema que en principio trabajaba en modo comandos. Hoy en da dispone de Ventanas, gracias a un servidor grfico y a gestores de ventanas como KDE, GNOME entre muchos. Recientemente GNU/Linux dispone de un aplicativo que convierte las ventanas en un entorno 3D como por ejemplo Beryl. Lo que permite utilizar linux de una forma visual atractiva. Microsoft Windows A mediados de los aos 80 se crea este sistema operativo, pero no es hasta la salida de Windows 95 que se le puede considerar un sistema operativo, solo era
Pg. 36/52 Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

una interfaz grfica del MS-DOS. Hoy en da es el sistema operativo ms difundido en el mbito domstico aunque tambin hay versiones para servidores como Windows NT. Microsoft ha diseado tambin algunas versiones para superordenadores, pero sin mucho xito. Aos despus se hizo el Windows 98 que era el ms eficaz de esa poca despus se creara el sistema operativo de Windows ME (Windows Millenium Edition) aproximadamente entre el ao 1999 y el ao 2000. Un ao despus se creara el sistema operativo de Windows 2000 en ese mismo ao. despus le seguira el sistema operativo ms utilizado en la actualidad, Windows XP y otros sistemas operativos de esta familia especializados en las empresas. Ahora el ms reciente es Windows Vista, que, actualmente, tiene muchas crticas. Ahora est en el mercado el sistema operativo Windows 7, que ser una especie de "actualizacin" a Windows Vista, sacando novedades y mejorando problemas de incompatibilidad, rendimiento y dems. Actualmente se puede contar en el mercado con el Sistema Operativo Windows 8 creado para dispositivos con interfaces tctiles.

ELEMENTOS ESTRUCTURALES: Un sistema informtico consta de procesador, memoria y componentes de E/S, con uno o ms mdulos de cada tipo. Estos componentes estn interconectados de alguna forma para llevar a cabo la funcin principal del computador, que es ejecutar programas. As pues, se tienen cuatro elementos principales: Procesador: Controla la operacin del computador y lleva a cabo las funciones de procesamiento de datos. Cuando hay un solo procesador, se suele denominar unidad central de procesamiento (CPU, Central Processing Unit). Memoria Principal: Almacena los datos y los programas. Esta memoria es normalmente voltil; tambin se le conoce como memoria real o memoria primaria. Interconexin de sistemas: Ciertos mecanismos y estructuras que permiten la comunicacin entre procesadores, memoria principal y los mdulos de E/S.

Pg. 37/52

Ing. Cip. Carlos Gonzlez Aspajo

Pg. 38/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

REGISTRO Dentro del procesador, hay un conjunto de registros que ofrecen un nivel de memoria que es ms rpido y pequeo que la memoria principal. Los registros del procesador sirven para dos funciones: "Registros visibles de usuario: Un programador de lenguaje de mquina o ensamblador puede minimizar las referencias a memoria principal mediante un uso ptimo de estos registros. Con lenguajes de alto nivel, un compilador que optimice cdigo intentar hacer una seleccin inteligente de qu variables asignar a registros y cules a ubicaciones de la memoria principal. Algunos lenguajes de alto nivel, como C, permiten que el programador indique al compilador qu variables se deben almacenar en registros. "Registros de control y de estado: Son utilizados por el procesador para el control de las operaciones o por rutinas privilegiadas del sistema operativo para controlar la ejecucin de los programas.

INSTRUCCIONES La tarea bsica que realiza un computador es la ejecucin de los programas. El programa a ejecutar consta de un conjunto de instrucciones almacenadas en memoria. El procesador lleva a cabo el trabajo, ejecutando las instrucciones especificadas en el programa. Para alcanzar una mayor comprensin de esta funcin y de la manera en que los componentes principales del computador interactan para ejecutar un programa, hace falta analizar con cierto detalle los elementos de la ejecucin de un programa. El punto de vista ms sencillo es considerar que el procesamiento de instrucciones consta de dos pasos. El procesador (1) trae las instrucciones desde la memoria, una cada vez y (2) ejecuta cada instruccin. La ejecucin de un programa consiste en la repeticin de este proceso de lectura y ejecucin de la instruccin. La ejecucin de la instruccin puede involucrar varias operaciones y depende de la naturaleza de la instruccin. El procesamiento requerido para una instruccin simple se llama ciclo de instruccin.

No hay una separacin clara de los registros en estas dos categoras. Por ejemplo, en algunas mquinas el contador de programa es visible para los usuarios, pero en otras muchas no lo es.

Pg. 39/52

Ing. Cip. Carlos Gonzlez Aspajo

Pg. 40/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

INTERRUPCIONES Casi todos los computadores tienen un mecanismo mediante el cual otros mdulos (E/S, memoria) pueden interrumpir la ejecucin normal del procesador. Clases ms comunes de interrupciones. De programa: Generadas por alguna condicin que se produce como resultado de la ejecucin de una instruccin, como el desbordamiento aritmtico, la divisin por cero, el intento de ejecutar una instruccin ilegal de la mquina o una referencia a una zona de memoria fuera del espacio permitido al usuario. De reloj: Generadas por un reloj interno del procesador. Esto permite al sistema operativo llevar a cabo ciertas funciones con determinada regularidad. De E/S: Generadas por un controlador de E/S, para indicar que una operacin ha terminado normalmente o para indicar diversas condiciones de error.

miles de ciclos de instruccin en los que la memoria no est implicada. Est claro que esto es un derroche en la utilizacin del procesador Las Interrupciones y el Ciclo de Instruccin. Con las interrupciones, el procesador se puede dedicar a la ejecucin de otras instrucciones mientras una operacin de E/S est en proceso. Considrese el flujo de control. Al igual que antes, el programa de usuario alcanza un punto en el que hace una llamada al sistema en forma de una llamada ESCRIBIR. El programa de E/S que se invoca consta solo del cdigo de preparacin y de la orden concreta de E/S. Despus de que se ejecuten estas pocas instrucciones, se devuelve el control al programa de usuario. Mientras tanto, el dispositivo externo estar ocupado recibiendo datos desde la memoria del computador e imprimindolos. Esta operacin de E/S se lleva a cabo concurrentemente con la ejecucin de las instrucciones del programa de usuario. Cuando el dispositivo de E/S est disponible, es decir, cuando est preparado para aceptar ms datos desde el procesador, el mdulo de E/S de dicho dispositivo enviar una seal de solicitud de interrupcin al procesador. El procesador responde suspendiendo la operacin del programa en curso y saltando a un programa que da servicio al dispositivo de E/S en particular, conocido como rutina de tratamiento de la interrupcin (interrupt handler), reanudando la

Las interrupciones aparecen, principalmente, como una va para mejorar la eficiencia del procesamiento. Por ejemplo, la mayora de los dispositivos externos son mucho ms lentos que el procesador. Supngase que el procesador est transfiriendo datos hacia una impresora, utilizando un esquema para el ciclo de instruccin. Despus de cada operacin ESCRIBIR, el procesador har una pausa y permanecer desocupado hasta que la impresora se ponga al corriente. La duracin de esta pausa puede ser del orden de varios cientos o incluso
Pg. 41/52 Ing. Cip. Carlos Gonzlez Aspajo

Pg. 42/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

puede reanudar ejecucin original la ejecucin despusdel de programa haber de atendido usuario en al dispositivo. el punto en que sucedi la interrupcin.

Desde el punto de vista del programa de usuario, una Tratamiento de Interrupciones. interrupcin es solamente eso: una interrupcin de la secuencia El acontecimiento normal de deejecucin. una interrupcin Cuando desencadena el tratamiento una de la interrupcin se tanto termina, la hardware ejecucindel contina. As serie de sucesos, en el procesador pues, el como enprograma el software. de La usuario figura no muestra tiene que una disponer secuencia de ningn cdigo especial para dar cabida a las tpica. interrupciones; el procesador y el sistema operativo son los responsables de suspender el programa de usuario y reanudarlo despus en el mismo punto. Para dar cabida a las interrupciones, se aade un ciclo de interrupcin al ciclo de instruccin. En el ciclo de interrupcin, el procesador comprueba si ha ocurrido alguna interrupcin, lo que se indicar con la presencia de una seal de interrupcin. Si no hay interrupciones pendientes, el procesador sigue con el ciclo de lectura y trae la prxima instruccin del programa en curso. Si hay una interrupcin pendiente, el procesador suspende la ejecucin del programa en curso y ejecuta una rutina de tratamiento de la interrupcin. La rutina de tratamiento de la interrupcin forma parte generalmente del sistema operativo. Normalmente este programa determina la naturaleza de la interrupcin y realiza cuantas acciones sean necesarias. De hecho, en el ejemplo que se ha estado siguiendo, la rutina de tratamiento determina el mdulo de E/S que Cuando un dispositivo y de E/S completa operacin de gener la interrupcin puede saltar a una un programa que E/S, se produce en el hardware la siguiente secuencia de escribir ms datos a dicho mdulo. Cuando termina la sucesos: rutina de tratamiento de la interrupcin, el procesador
Pg. 43/ 44/52 Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

1. El dispositivo emite una seal de interrupcin al procesador. 2. El procesador finaliza la ejecucin de la instruccin en curso antes de responder a la interrupcin, tal como se indica en la figura. 3. El procesador pregunta por la interrupcin, comprueba que hay una y enva una seal de reconocimiento al dispositivo que gener la interrupcin. Este reconocimiento le permite al dispositivo suprimir la seal de interrupcin. 4. El procesador necesita ahora prepararse para transferir el control a la rutina de interrupcin. Para empezar, hace falta salvar la informacin necesaria para reanudar la ejecucin del programa en curso en el punto de la interrupcin. La mnima informacin requerida es la palabra de estado del programa (PSW) y la ubicacin de la prxima instruccin a ejecutar, que se almacena en el contador de programa. Estos pueden meterse en la pila de control del sistema. 5. El procesador carga ahora el contador de programa con la ubicacin de entrada del programa de tratamiento de la interrupcin. Dependiendo de la arquitectura del computador y del diseo del sistema operativo, puede haber un solo programa por cada tipo de interrupcin, o uno por cada dispositivo y por cada tipo de interrupcin. Si hay ms de una rutina de tratamiento de interrupcin, el procesador debe determinar a cul invocar. Esta informacin pudiera estar incluida en la seal original de la interrupcin, o el procesador debe preguntarle al dispositivo que cre la interrupcin para obtener respuesta sobre la informacin que necesita. Una vez que se ha cargado el contador de programa, el procesador procede con el prximo ciclo de instruccin,
Pg. 45/52 Ing. Cip. Carlos Gonzlez Aspajo

que comienza trayendo la prxima instruccin. Debido a que esta instruccin se determina por el contenido del contador de programa, el resultado es que el control se le transfiere al programa que trata la interrupcin. La ejecucin de este programa se traduce en las operaciones siguientes: 6. En este punto, el contador de programa y la PSW relativa al programa interrumpido han sido salvadas en la pila del sistema. Sin embargo, hay ms informacin que es considerada parte del "estado" de ejecucin del programa. En particular se necesita salvar el contenido de los registros del procesador ya que estos registros pudieran ser utilizados por la rutina de tratamiento de la interrupcin. As pues es necesario salvar todos estos valores ms cualquier otra informacin sobre el estado. Normalmente la rutina de tratamiento de la interrupcin comienza salvando en la pila el contenido de todos los registros. 7. La rutina de tratamiento de la interrupcin puede ahora proceder a procesar la interrupcin. Esto incluir un examen del estado de la informacin relativa a la operacin de E/S o a cualquier otro evento que haya causado la interrupcin. Esto puede tambin involucrar el envo adicional de rdenes o reconocimientos al dispositivo de E/S. 8. Cuando se completa el tratamiento de la interrupcin, se recuperan de la pila los valores de los registros que se salvaron y se restauran los registros. 9. El acto final es restaurar los valores de la PSW y del contador de programa a partir de la pila. Como resultado, la prxima instruccin a ser ejecutada ser del programa interrumpido previamente.

Pg. 46/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

Es importante salvar toda la informacin sobre el estado del programa interrumpido para su reanudacin posterior, porque la rutina de tratamiento de la interrupcin no es una rutina llamada desde el programa. Por el contrario, la interrupcin puede producirse en cualquier momento y por tanto en cualquier punto de la ejecucin de un programa de usuario. Su ocurrencia es impredecible. Ms an, como se ver ms adelante en esta seccin, los dos programas pueden no tener nada en comn y pueden pertenecer a dos usuarios diferentes.

MEMORIA Las limitaciones de diseo de la memoria de un computador se pueden resumir en tres preguntas: qu cantidad? qu velocidad? y qu coste? Segn sea la capacidad, probablemente se construirn aplicaciones que la utilicen. La cuestin de la velocidad es, en cierto sentido, fcil de responder. Para lograr un mayor rendimiento, la memoria debe ser capaz de ir al ritmo del procesador. Es decir, mientras el procesador est ejecutando instrucciones, sera conveniente no tener que hacer pausas esperando a instrucciones u operandos. La ltima pregunta tambin hay que tenerla en cuenta. Para un sistema prctico, el coste de la memoria debe ser razonable en relacin a los otros componentes. Como se puede suponer, estas tres caractersticas compiten entre s: coste, capacidad y tiempo de acceso. Desde siempre se ha utilizado una gran variedad de tecnologas para implementar los sistemas de memoria. A lo largo de este abanico de tecnologas, se cumplen las Siguientes relaciones:

" A menor tiempo de acceso, mayor coste por bit " A mayor capacidad, menor coste por bit " A mayor capacidad, mayor tiempo de acceso

Pg. 47/52

Ing. Cip. Carlos Gonzlez Aspajo

Pg. 48/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

El dilema que se plantea el diseador es evidente. El diseador deseara usar tecnologas de memoria que le ofrezcan una gran capacidad, porque se necesita y para que el coste por bit sea bajo. Sin embargo, para cumplir con los requisitos de rendimiento, puede necesitar usar memoria cara, de capacidad relativamente menor y con tiempos de acceso rpidos. La salida a este dilema no es depender de un nico componente de memoria o una tecnologa, sino emplear una jerarqua de memoria.

En la figura se ilustra una jerarqua tradicional. A medida que se desciende por la jerarqua se tienen las siguientes condiciones: 1. 2. 3. 4. Disminucin del coste por bit Aumento de la capacidad Aumento del tiempo de acceso Disminucin de la frecuencia de acceso a la memoria por parte del procesador

As pues, las memorias ms pequeas, caras y rpidas son reemplazadas por memorias de ms capacidad, ms baratas y lentas. La clave del xito de esta organizacin es el ltimo punto: disminuir la frecuencia de acceso. Memoria Cache. Aunque la memoria cach es invisible para el sistema operativo, interacta con otras partes del hardware de gestin de memoria. Es ms, muchos de los principios utilizados en la memoria virtual son tambin aplicables a la memoria cach.

Pg. 49/52

Ing. Cip. Carlos Gonzlez Aspajo

Pg. 50/52

Ing. Cip. Carlos Gonzlez Aspajo

Sistemas Operativos

1 Unidad

Sistemas Operativos

1 Unidad

LOGROS Los sistemas operativos estn entre los elementos de software ms complejos que se han desarrollado. Esto refleja el reto de tratar de conjugar las dificultades y, en algunos casos, objetivos opuestos de comodidad, eficiencia y capacidad de evolucin. Denning y sus colegas [DENN80a] proponen que, hasta la fecha, se han obtenido cuatro logros intelectuales significativos en el desarrollo de los sistemas operativos: " Los procesos " La gestin de memoria " La seguridad y la proteccin de la informacin " La planificacin y la gestin de recursos " La estructura del sistema Cada logro viene caracterizado por unos principios o abstracciones que se han desarrollado para solucionar las dificultades de los problemas prcticos. En conjunto, estos cinco campos abarcan los puntos clave del diseo e implementacin de los sistemas operativos modernos.

BIBLIOGRAFA:

Sistemas Operativos; Stalling William Principios de Sistemas de informacin; Ralph M. Stair, George W. Reynolds Ingeniera de Sistemas; Arthur D. Hall. "http://es.wikipedia.org/wiki/Historia_de_los_sistem as_operativos"

Pg. 51/52

Ing. Cip. Carlos Gonzlez Aspajo

Pg. 52/52

Ing. Cip. Carlos Gonzlez Aspajo

También podría gustarte