SlideShare ist ein Scribd-Unternehmen logo
1 von 92
1




     DISEÑO DE
SISTEMAS OPERATIVOS


 ING. ÁNGEL CAFFA


          Facultad de Ingeniería
            Universidad ORT
Temario
2



                    Generalidades de Sistemas Operativos
    Generalidades   is a Design Digital      Content &
       de S.O.      Contents mall developed by Guild Design Inc.



                    Gestión de procesos
     Gestión de     is a Design Digital Content & ontents
      procesos      mall developed by Guild Design Inc.



                    Memoria
      Memoria       Contents mall developed by Guild
                    Design Inc.
Temario
3



                    Disco
        Disco       is a Design Digital      Content &
                    Contents mall developed by Guild Design Inc.



                    Conceptos de Seguridad
      Conceptos     Contents mall developed by Guild
     de Seguridad   Design Inc.
Bibliografía
4

       Sistemas Operativos. Deitel.
       Sistemas Operativos. Peterson.
       Sistemas Operativos Modernos. Tanenbaum.
       Conceptos de Sistemas Operativos. Silberchatz-otros.
       The Logical Design of Operating Systems. Bic-Shaw.
       El Entorno de Programación Unix. Kernighan-Pike.
       Sistemas Operativos, diseño e implementación. Tanenbaum.
Aprobación del curso
5

        2 Parciales y 1 obligatorio.
        Pruebas sin material.
        El segundo parcial abarca todos los temas.
        Preguntas teóricas, ejercicios, problemas, situaciones
        reales.
        Ganancia de curso.
        Aprobación del curso.
       Examen individual, solo preguntas letra, solos.
Horarios
6


       Grupo Matutino
         Grupo Nocturno
         Cada semana se ven los mismos temas con los dos
          grupos (recuperación).
Cronograma
7


        Comienzo: Lunes 15 de Marzo.
        Lectura obligatorio.
       Preparación primer parcial (simulacro y corrección).
        Primer parcial.
        Resultados primer parcial, muestra.
        Entrega obligatorio.
        Preparación segundo parcial.
        Segundo parcial.
        Defensas obligatorio.
        Resultados segundo parcial y obligatorio, muestra.
        Consulta examen.
        Examen.
        Resultados examen, muestra.
El curso dentro de la formación de
un informático
 Arquitectura       Sistemas
 de sistemas        operativos        Redes       Prog.     B.D.      ...




          Administración de sistemas                Programación en un
          bajo un sistema operativo                 lenguaje determinado
          determinado

                                              Configuración de redes
         Diseño y configuración de
                                              bajo un conjunto determinado
         Sistemas, servicio técnico
                                              de protocolos.

                            ...                                8
El curso dentro de la formación de
9
    un informático
         Se trata de una asignatura básica, general, al
        igual que el resto de las marcadas en el bloque.
        Sirve de base para comprender aspectos técnicos
        concretos (pasados, presentes y muchas veces
        futuros).
        Marca la diferencia con los técnicos.
Enfoque del curso
10

           Se trata de temas clásicos dentro de la
         informática.
         Los sistemas operativos actuales, cumplen con los
         modelos teóricos que se ven en el curso.
         Las variantes se ven en los estudios de caso.
Enfoque del curso
11


           Sistema operativo = Software para gestión de los
                                    recursos del sistema

         Recursos críticos = CPU, memoria y disco



        Gestión de CPU                             Gestión de memoria


                             Gestión de disco



                    Gestión de otros recursos del sistema
12




I - GENERALIDADES DE LOS
SISTEMAS OPERATIVOS
Sistemas Operativos
Repaso de conceptos básicos
13

          Componentes de un sistema informático: hardware,
         software y gente.
           El hardware proporciona la capacidad bruta de
         cómputo, abarca todas las componentes tangibles del
         sistema.
         El software abarca los programas y datos (no tangibles).
        Sistema informático = conjunto de recursos.
        Sistemas abiertos. Esta tendencia implica componentes
         compatibles a nivel de hardware, software,
         comunicaciones, etc.
Repaso de conceptos básicos
14

          Componentes de un sistema informático: hardware,
         software y gente.
           El hardware proporciona la capacidad bruta de
         cómputo, abarca todas las componentes tangibles del
         sistema.
         El software abarca los programas y datos (no tangibles).
        Sistema informático = conjunto de recursos.
        Sistemas abiertos. Esta tendencia implica componentes
         compatibles a nivel de hardware, software,
         comunicaciones, etc.
Recursos
15




         Son los componentes del sistema. El conjunto de
         recursos constituye la capacidad bruta de cómputo
         para el sistema.

        Ejemplos de recursos: (Micro) procesador, memoria,
         disco, unidad de CD, impresora, scanner, lector de
         barras, mouse, teclado, etc.
Definición de sistema operativo
16




            Un sistema operativo es un conjunto de
          programas que administran los recursos del
          sistema, proporcionando y arbitrando el acceso
          a los mismos por parte de los usuarios del
          sistema.
Definición de SO
17

        Desglosando lo anterior, el SO:
            Está compuesto por programas.
            Trata el hardware como un conjunto de recursos.
            Puede reconocer diferentes usuarios.
            Administra los recursos.
            Permite acceso a recursos.
            Proporciona a usuarios una interfaz para interactuar con el
             sistema y sus recursos.
            Proporciona a otros programas una interfaz para interactuar
             con el sistema y sus recursos.
            Arbitra el acceso a recursos.
            Proporciona mecanismos de seguridad.
Además...
18




          El sistema operativo es de alguna forma el nexo
         entre el hardware y el software.
         El sistema operativo brinda al usuario un ambiente
         de trabajo (más cómodo que tener que resolver cada
         vez los problemas de bajo nivel, etc.).
         El sistema operativo asigna (y por lo tanto arbitra)
         los recursos del sistema.
Analogía
19

         Hardware = automóvil.
         Sistema operativo = conductor.
         El automóvil no funciona sin el conductor.
            Distintos conductores logran funcionamientos
         diferentes para el mismo auto.
          El auto consta de un conjunto de recursos que
         constituyen su capacidad bruta de funcionamiento.
         El motor, la dirección, el sistema de frenos, el sistema
         eléctrico, etc., son los recursos.
Primer esquema de capas
20




                      Programas

                       Sistema

                      Hardware
     USUARIO




                          =
                      Recursos


                      Operativo
Evolución de los SO
21

          1822 – Charles Babbage idea una máquina diferencial
         mecánica que calculaba polinomios de grado <= 6 sobre Z.
         Totalmente diseñada, no se pudo construir.
        1830 – Charles Babbage diseña una máquina analítica
         mecánica. No se pudo construir por la complejidad de sus
         piezas. Aparece conceptos de: almacenamiento en tarjetas,
         almacenamiento en variables (memoria), almacenamiento de
         un conjunto de operaciones (programa).
          1896 – Primera computadora real. Censo USA, tarjetas
         perforadas, primer sistema de codificación. Horelitz, que
         luego fundaría IBM.
Primera generación
22

        Décadas de 1940 y 1950.
        A válvula (necesidad de refrigeración), muy lentas,
         cuartos enteros.
        Los programas se introducían bit a bit con interruptores
         mecánicos, luego pasaban a la computadora vía tarjetas
         perforadas.
        Los resultados se expresaban a través de leds.
        ENIAC – Cálculo trayectorias balísticas, 1800 válvulas de
         vacío, 32 bits de memoria, una suma en 0,2 ms.
Primera generación
23


         1951 – ENIAC I, primera computadora para uso comercial.
          Programas perforados en tarjetas, pero aún no habían
         nada parecido a un sistema operativo.
         1953 – Aparece el primer sistema operativo. Escrito por
         General Motors para la IBM 701.
         La necesidad original era de un programa que gestionara
         la E/S. Además, este SO, cuando un programa finalizaba,
         una rutina saltaba el flujo de ejecución al programa
         siguiente. Era monotarea.
          Denominados sistemas de procesamiento por lotes de
         secuencia única.
Segunda generación: 1955-65
24

         Hardware: sustitución de válvulas por transistores.
         Primeras máquinas fabricadas en serie.
         El que fabrica la computadora ya no es el usuario.
         Muy grandes, cuartos especiales, temperatura.
         Job sequencing: Al finalizar un trabajo se lanza otro en
         forma automática, sin necesidad de monitoreo ni
         intervención del operador.
         Se gana en eficiencia de uso del sistema al aparecer los
         sistemas de procesamiento por lotes (batch).
Sistemas de proceso por lotes (batch).
25


        Antes, la forma de utilizar los sistemas era:
          Se escribe el programa en papel.
          Se perfora el programa en tarjetas, con una máquina
           especial.
          Se ponen todas las tarjetas en la computadora para la
           ejecución.
          Por ejemplo, si se precisa el compilador Fortran, o alguna
           biblioteca, se incluyen también esas tarjetas.
Sistemas de proceso por lotes
26


        Con los sistemas batch:
            Se pasan varios programas de tarjeta a una cinta (con una
             computadora que haga eso eficientemente).
            La cinta resultado es la entrada de otra computadora (que realiza
             cálculos eficientemente), que es donde corren los programas.
            La salida de esa ejecución se envía a una cinta, y otra máquina
             manda la salida a la impresora.
            Un sistema operativo de esta época era, por ejemplo, el Fortran
             Monitor System.
            Los usuarios no están en el centro de cómputos mientras se ejecutan
             sus programas. Los programas debían esperar, y si ocurrían errores
             (incluso sintácticos), había que repetir todo este proceso tan lento.
Sistemas de proceso por lotes
27

          Aparece el concepto de buffering: consiste en solapar las
         operaciones de entrada/salida con la computación del
         proceso.
         Así, se aprovecha mejor la CPU.
         En hardware, la innovación que posibilitó el buffering fue que
         los procesadores tienen registros e instrucciones propios para
         la comunicación entre CPU y canales controladores de
         entrada/salida.
         El proceso en ejecución solicita una operación de E/S (que es
         lenta). El controlador la hace, y mientras ese proceso sigue,
         hasta que, vía una interrupción, el controlador avisa que
         terminó.
         Esta es una primera forma de multitarea.
Sistemas de proceso por lotes
28

        Estos dispositivos periféricos (algunos realizan la E/S
         por interrupciones):
            Lectoras de tarjetas.
            Perforadoras de tarjetas.
            Impresoras.
            Unidades de cinta.
            Unidades de disco.
         El desafío era usar estos recursos eficientemente, y en
         particular el recurso procesador al interactuar con ellos.
        En definitiva es importante no tener procesador ocioso.
Multiprogramación
29

          Cuando una tarea utilizaba el procesador, otras
         podían usar los dispositivos de E/S.
         La mejor forma de usar el tiempo de CPU, es que, en
         un momento dado, el sistema ejecute no una tarea,
         sino un conjunto de tareas.
         En esto se basa el concepto de multiprogramación:
         varias tareas se encuentran simultáneamente en
         memoria principal, y el procesador se conmuta de
         una tarea a otra buscando su avance a medida que
         requieren uso de los dispositivos periféricos.
Tercera generación: 1965-70
30


         Innovación en hardware: aparecen circuitos integrados (a
         baja escala).
         Aparece la primer minicomputadora: PDP-8 (antecesoras
         de las Digital VAX).
         Aparece la familia de computadoras de IBM, System/360
         (1964). 16 Kb. RAM, 300.000 ops./seg. Primera serie que
         busca unificar máquinas científicas y comerciales. Costo del
         orden del millón de dólares.
         La siguió la serie 370 y luego 4300 y 30X0.
         Hardware compatible dentro y entre las series IBM (no así
         en las PDP por ejemplo).
OS/360
31

         El IBM 360, tiene un sistema operativo, OS/360.
         Sistema operativo muy grande, millones de instrucciones
         Assembler, muchos bugs.
         Se arreglaban algunos bugs y surgían otros.
         Aparecen algunas ideas de ingeniería de software, al
         tratarse lo relativo al desarrollo de programas grandes.
         Multiprogramación:
            Mientras un proceso espera E/S, otro toma la CPU.
            Memoria dividida en áreas, asignadas a diferentes procesos.
            Mecanismos de protección de memoria.
Spooling
32

         Las computadoras de la tercera generación tenían
         almacenamiento secundario, no volátil, basado en:
            Cintas: acceso secuencial, se agregan datos al final.
            Discos: acceso aleatorio, se puede modificar un archivo “por la
             mitad”.
         Así, siempre que se termina de ejecutar un trabajo, el
         SO puede cargar uno nuevo del disco y comenzar a
         ejecutarlo.
         También esto permite spooling, para el manejo de colas
         de impresión, y para la salida.
        Spool=Simultaneous peripheral operation on line.
Spooling
33

         Si un proceso va a imprimir, no manda directamente
         a la impresora sino a un archivo.
         Luego se imprime desde dicho archivo.
         Si varios procesos producen salidas a impresora,
         entonces todos sacan su salida a disco, y luego de ahí
         a la impresora.
         Aparece la cola de impresión.
         Así, se comienza a aprovechar mejor un recurso caro
         como lo es la CPU, al liberarlo de atender
         dispositivos lentos.
Tiempo compartido
34

         Aún no se trabajaba de la forma más eficiente.
          Los programas entregaban las tarjetas al operador, si
         había errores de compilación, había que cambiar algunas
         tarjetas y reiniciar el proceso.
         Surgen las máquinas de tiempo compartido (time sharing).
         Varios usuarios utilizan al mismo tiempo la computadora, en
         principio compitiendo (más que compartiendo) por sus
         recursos.
          Así, los sistemas operativos podían atender a varios
         usuarios interactivos, que se comunican con el computador
         a través de terminales en línea.
Tiempo compartido
35

          Un gran número de usuarios pueden trabajar simultáneamente en forma
         interactiva.
         De alguna forma, se ofrece a cada usuario la ilusión de que dispone de
         el sistema para él.
         Los sistemas de tiempo compartido de los años 60, trabajaban también en
         modo de proceso por lotes y con aplicaciones de tiempo real.
          Los sistemas de tiempo real dan respuestas en tiempos mínimos
         preestablecidos. Ejemplo: sensores de estabilidad en un avión.
         En general son usados por debajo de su capacidad, a fin de asegurar
         esos tiempos mínimos, y eso explica su alto costo.
        En los sistemas de tiempo real, la multiprogramación debe ser controlada
         de acuerdo a restricciones de tiempo y prioridades.
Tiempo compartido
36


         En 1961 aparece el CTSS, sistema operativo time sharing,
         desarrollado por el MIT. También el TSS de IBM. TSS=Time
         Shared System.
         Otros sistemas de tiempo compartido:
            Multics del MIT, sucesor de CTSS, antecedente de Unix. Primer SO que
             intentó escribirse en un LP de alto nivel (PL/I).
            CP/CMS, antecesor del VM de IBM.
          Todos estos eran sistemas de tiempo compartido, permitían
         compartir programas y datos, y mostraron el valor de la
         computación interactiva en los ambientes de desarrollo de
         programas.
        El tiempo de retorno (tiempo entre introducción de una tarea y
         recepción de su resultado) bajó a segundos.
Tiempo compartido
37

          El usuario podía introducir programas, compilarlos,
         corregir errores (sintácticos), recompilar hasta librarlo
         de errores, ejecutarlo, depurarlo (errores semánticos)
         hasta producir la versión final.
          Esta modalidad de proceso de desarrollo es muy
         similar a la actual. Notar como se llega a la misma
         gracias a los progresos en los sistemas operativos.
         Los sistemas operativos comienzan a ser vistos como
         ambientes de trabajo.
Multiprogramación
38

         Estos sistemas permitían trabajar con varios procesos
         simultáneos en ejecución.
         El procesador va turnando la ejecución de partes de
         cada uno.
         El cambio de un proceso a otro se logra gracias a
         las interrupciones.
         Aparecen los mecanismos de protección de memoria
         de modo de que coexistan varios procesos en
         ejecución.
Memoria virtual
39


         El concepto de memoria virtual ya estaba presente en
         TSS, Multics y CP/CMS.
         Así, los programas pueden usar más memoria de la que
         físicamente el sistema proporciona.
         Esto se logra combinando memoria RAM y disco.
         Así, los programadores dejaron de preocuparse por los
         procedimientos y trucos para que un programa entrara
         completamente en memoria, concentrándose en el
         problema en sí.
Ingeniería de software
40

         Los programas en general, y los sistemas operativos en
         particular, comenzaron a resolver situaciones cada vez más
         complejas.
         Así, crecieron en tamaño y complejidad.
         Comenzaron a aparecer versiones que corregían errores
         de otras versiones, y en ellas aparecían nuevos.
          La necesidad de producir software confiable, fácil de
         mantener, comprensible, etc. dieron origen a la ingeniería
         de software.
          Con esta disciplina se reconoce que todo software es
         producto de un proceso de desarrollo.
Proceso de desarrollo de software
41

         Controlando la calidad en el proceso de desarrollo, se
         logra dar calidad al producto del mismo.
         Aparecen técnicas de project management aplicadas a
         los proyectos de desarrollo de software.
         En general, se agregan herramientas para lograr un PDS
         estructurado, predecible, disciplinado.
          De alguna manera se sentaron bases firmes para el
         desarrollo de programas grandes, y en particular,
         sistemas operativos más complejos.
Origen de Unix
42

         En 1969, fracasa el proyecto Multics de Bell y General
         Electric.
         Multics = Miltiplexed Information Computer Service.
         Se trataba de un ambicioso proyecto de sistema operativo
         grande, multitarea y multiusuario.
         Primera vez que se intentó usar un LP de alto nivel en la
         codificación de un SO (PL/I).
         En Bell, Thompson y Ritchie escribieron, sobre una PDP-7 un
         juego llamado Space Travel.
         Para éste, Thompson escribió un ambiente de trabajo para
         esa computadora, llamado Unics (U por Uniplexed).
Origen de Unix
43


         Luego, se pasó a una versión de 16 Kb. sobre un
         PDP-11.
         Luego se desarrollaron el lenguaje B (Thompson) y el
         lenguaje C (Ritchie).
         Luego se reescribió gran parte del Unix en C.
         Con un fuente abierto, y adoptado primero en
         ambientes académicos y luego también comerciales,
         Unix inició su expansión.
Los años 70
44

           Predominaron los sistemas de tiempo compartido con
         múltiples modos de operación: procesamiento por lotes,
         tiempo compartido y tiempo real.
          Los computadores personales estaban en la etapa inicial
         de su desarrollo, que vendría de la mano del desarrollo de
         los microprocesadores.
          Ya habían productos comerciales sólidos. Entonces, surgió
         el problema de comunicar sistemas.
           Aparecieron protocolos estándares de comunicación:
         TCP/IP (Depto. de Defensa de USA), Ethernet (Xerox).
            Comenzaron a surgir los primeros problemas de
         seguridad. Aparece la criptografía, etc.
          Todo esto se traduce en nuevas necesidades para los
         sistemas operativos.
Cuarta generación: 1980-90 y
45
     actualidad
          En hardware, se logra la integración de transistores en alta y
          gran escala.
          Aparecen los PCs. Son similares a los minicomputadores en
          estructura y conceptos, pero más pequeños y más baratos.
           fines 60’s – Apple con CP/M. (CP = Control Program).
          Diskettes.
           80-81: IBM lanza el primer PC. Procesador Intel 8086.
          Sistema operativo DOS de Microsoft.
          DOS = Disk Operating System.
          1970 – Xerox. Antecedentes de manejo a través de íconos.
          Luego Mac OS (Apple), OS/2 (IBM) y Windows (Microsoft).
Redes
46

         Idea: Compartir recursos.
         Una red es un conjunto de computadoras autónomas interconectadas.
        Se lograron redes cuya potencia de cómputo es comparable a las de los
         mainframes que predominaron en los años 1970s.
        Ventajas frente a los mainframes:
            Ambos comparten recursos.
            En la red no se compite por los recursos críticos CPU y memoria.
            Permiten administración centralizada.
            La red implica una inversión escalable.
         Sistemas operativos distribuidos: trabajan sobre una red, pero ocultan al
         usuario la presencia de la misma. Para el usuario es transparente en qué
         sistema de la red se ejecutan sus órdenes, eso lo resuelve el sistema
         operativo.
Redes
47

         Con las redes aparecieron nuevas herramientas de
         comunicación.
         Aparecen redes de área local y de área extensa,
         resultantes de la interconexión de las primeras.
         Aparece la red Internet (70’s).
         Crecen los requerimientos de los sistemas operativos
         en cuanto a dar soporte a múltiples usuarios, permitir
         el uso de redes y permitir los niveles de seguridad y
         auditoría necesarios.
Redes
48

        Con el desarrollo de las redes aparecen nuevas
         posibilidades y problemas:
            Publicación de bases de datos.
            Distribución de bases de datos.
            Protección de accesos.
            Auditoría de accesos.
            Ataques (hackers).
            Aplicaciones de red.
            Herramientas de publicación y de comunicación.
            Aplicaciones cliente/servidor.
            Transmisión de datos en tiempo real (imágenes, etc.)
             Comunicación entre distintas plataformas.
Los desafíos en arquitectura y sistemas
49
     operativos
        Conectividad
        Sistemas abiertos.
        Paralelismo.
        Sistemas distribuidos.
        Mejoramiento de la interfaz con el usuario.
Sistemas operativos de los últimos años
50


        La familia Microsoft:
            MS-DOS
            Windows 3.X
            Windows 95/98/ME
            Windows NT / 2000 / XP
        La familia Unix:
             Unix SVR4, Unix BSD, Solaris, AIX, SCO Unix, HP Ux, Irix,
             Linux.
        Otros: OS/2, Mac, VM, etc.
Clasificaciones
51

        Proceso o tarea: es un programa en ejecución.
        Sistema operativo:
            Monotarea: sólo permite un proceso en ejecución a la vez.
            Multitarea: permite la ejecución simultánea de varios procesos.
        Sistema operativo:
            Monousuario: no reconoce la existencia de diferentes usuarios.
            Multiusuario: reconoce la existencia de diferentes usuarios y
             arbitra el acceso de los mismos a los recursos del sistema.
El núcleo o kernel
52


        Sus funciones principales:
          Schedullingde procesos
          Manejo de memoria

          Gestión de file systems
Control de lectura
53


         A esta altura ya debe haber leído los capítulos 1
         y 2 de Deitel o sus equivalentes en los otros textos.
Recursos
54




         Son los componentes del sistema. El conjunto de
         recursos constituye la capacidad bruta de cómputo
         para el sistema.

        Ejemplos de recursos: (Micro) procesador, memoria,
         disco, unidad de CD, impresora, scanner, lector de
         barras, mouse, teclado, etc.
Definición de sistema operativo
55




            Un sistema operativo es un conjunto de
          programas que administran los recursos del
          sistema, proporcionando y arbitrando el acceso
          a los mismos por parte de los usuarios del
          sistema.
Definición de SO
56

        Desglosando lo anterior, el SO:
            Está compuesto por programas.
            Trata el hardware como un conjunto de recursos.
            Puede reconocer diferentes usuarios.
            Administra los recursos.
            Permite acceso a recursos.
            Proporciona a usuarios una interfaz para interactuar con el
             sistema y sus recursos.
            Proporciona a otros programas una interfaz para interactuar
             con el sistema y sus recursos.
            Arbitra el acceso a recursos.
            Proporciona mecanismos de seguridad.
Además...
57




          El sistema operativo es de alguna forma el nexo
         entre el hardware y el software.
         El sistema operativo brinda al usuario un ambiente
         de trabajo (más cómodo que tener que resolver cada
         vez los problemas de bajo nivel, etc.).
         El sistema operativo asigna (y por lo tanto arbitra)
         los recursos del sistema.
Analogía
58

         Hardware = automóvil.
         Sistema operativo = conductor.
         El automóvil no funciona sin el conductor.
            Distintos conductores logran funcionamientos
         diferentes para el mismo auto.
          El auto consta de un conjunto de recursos que
         constituyen su capacidad bruta de funcionamiento.
         El motor, la dirección, el sistema de frenos, el sistema
         eléctrico, etc., son los recursos.
Primer esquema de capas
59




                      Programas

                       Sistema

                      Hardware
     USUARIO




                          =
                      Recursos


                      Operativo
Evolución de los SO
60

          1822 – Charles Babbage idea una máquina diferencial
         mecánica que calculaba polinomios de grado <= 6 sobre Z.
         Totalmente diseñada, no se pudo construir.
        1830 – Charles Babbage diseña una máquina analítica
         mecánica. No se pudo construir por la complejidad de sus
         piezas. Aparece conceptos de: almacenamiento en tarjetas,
         almacenamiento en variables (memoria), almacenamiento de
         un conjunto de operaciones (programa).
          1896 – Primera computadora real. Censo USA, tarjetas
         perforadas, primer sistema de codificación. Horelitz, que
         luego fundaría IBM.
Primera generación
61

        Décadas de 1940 y 1950.
        A válvula (necesidad de refrigeración), muy lentas,
         cuartos enteros.
        Los programas se introducían bit a bit con interruptores
         mecánicos, luego pasaban a la computadora vía tarjetas
         perforadas.
        Los resultados se expresaban a través de leds.
        ENIAC – Cálculo trayectorias balísticas, 1800 válvulas de
         vacío, 32 bits de memoria, una suma en 0,2 ms.
Primera generación
62


         1951 – ENIAC I, primera computadora para uso comercial.
          Programas perforados en tarjetas, pero aún no habían
         nada parecido a un sistema operativo.
         1953 – Aparece el primer sistema operativo. Escrito por
         General Motors para la IBM 701.
         La necesidad original era de un programa que gestionara
         la E/S. Además, este SO, cuando un programa finalizaba,
         una rutina saltaba el flujo de ejecución al programa
         siguiente. Era monotarea.
          Denominados sistemas de procesamiento por lotes de
         secuencia única.
Segunda generación: 1955-65
63

         Hardware: sustitución de válvulas por transistores.
         Primeras máquinas fabricadas en serie.
         El que fabrica la computadora ya no es el usuario.
         Muy grandes, cuartos especiales, temperatura.
         Job sequencing: Al finalizar un trabajo se lanza otro en
         forma automática, sin necesidad de monitoreo ni
         intervención del operador.
         Se gana en eficiencia de uso del sistema al aparecer los
         sistemas de procesamiento por lotes (batch).
Sistemas de proceso por lotes (batch).
64


        Antes, la forma de utilizar los sistemas era:
          Se escribe el programa en papel.
          Se perfora el programa en tarjetas, con una máquina
           especial.
          Se ponen todas las tarjetas en la computadora para la
           ejecución.
          Por ejemplo, si se precisa el compilador Fortran, o alguna
           biblioteca, se incluyen también esas tarjetas.
Sistemas de proceso por lotes
65


        Con los sistemas batch:
            Se pasan varios programas de tarjeta a una cinta (con una
             computadora que haga eso eficientemente).
            La cinta resultado es la entrada de otra computadora (que realiza
             cálculos eficientemente), que es donde corren los programas.
            La salida de esa ejecución se envía a una cinta, y otra máquina
             manda la salida a la impresora.
            Un sistema operativo de esta época era, por ejemplo, el Fortran
             Monitor System.
            Los usuarios no están en el centro de cómputos mientras se ejecutan
             sus programas. Los programas debían esperar, y si ocurrían errores
             (incluso sintácticos), había que repetir todo este proceso tan lento.
Sistemas de proceso por lotes
66

          Aparece el concepto de buffering: consiste en solapar las
         operaciones de entrada/salida con la computación del
         proceso.
         Así, se aprovecha mejor la CPU.
         En hardware, la innovación que posibilitó el buffering fue que
         los procesadores tienen registros e instrucciones propios para
         la comunicación entre CPU y canales controladores de
         entrada/salida.
         El proceso en ejecución solicita una operación de E/S (que es
         lenta). El controlador la hace, y mientras ese proceso sigue,
         hasta que, vía una interrupción, el controlador avisa que
         terminó.
         Esta es una primera forma de multitarea.
Sistemas de proceso por lotes
67

        Estos dispositivos periféricos (algunos realizan la E/S
         por interrupciones):
            Lectoras de tarjetas.
            Perforadoras de tarjetas.
            Impresoras.
            Unidades de cinta.
            Unidades de disco.
         El desafío era usar estos recursos eficientemente, y en
         particular el recurso procesador al interactuar con ellos.
        En definitiva es importante no tener procesador ocioso.
Multiprogramación
68

          Cuando una tarea utilizaba el procesador, otras
         podían usar los dispositivos de E/S.
         La mejor forma de usar el tiempo de CPU, es que, en
         un momento dado, el sistema ejecute no una tarea,
         sino un conjunto de tareas.
         En esto se basa el concepto de multiprogramación:
         varias tareas se encuentran simultáneamente en
         memoria principal, y el procesador se conmuta de
         una tarea a otra buscando su avance a medida que
         requieren uso de los dispositivos periféricos.
Tercera generación: 1965-70
69


         Innovación en hardware: aparecen circuitos integrados (a
         baja escala).
         Aparece la primer minicomputadora: PDP-8 (antecesoras
         de las Digital VAX).
         Aparece la familia de computadoras de IBM, System/360
         (1964). 16 Kb. RAM, 300.000 ops./seg. Primera serie que
         busca unificar máquinas científicas y comerciales. Costo del
         orden del millón de dólares.
         La siguió la serie 370 y luego 4300 y 30X0.
         Hardware compatible dentro y entre las series IBM (no así
         en las PDP por ejemplo).
OS/360
70

         El IBM 360, tiene un sistema operativo, OS/360.
         Sistema operativo muy grande, millones de instrucciones
         Assembler, muchos bugs.
         Se arreglaban algunos bugs y surgían otros.
         Aparecen algunas ideas de ingeniería de software, al
         tratarse lo relativo al desarrollo de programas grandes.
         Multiprogramación:
            Mientras un proceso espera E/S, otro toma la CPU.
            Memoria dividida en áreas, asignadas a diferentes procesos.
            Mecanismos de protección de memoria.
Spooling
71

         Las computadoras de la tercera generación tenían
         almacenamiento secundario, no volátil, basado en:
            Cintas: acceso secuencial, se agregan datos al final.
            Discos: acceso aleatorio, se puede modificar un archivo “por la
             mitad”.
         Así, siempre que se termina de ejecutar un trabajo, el
         SO puede cargar uno nuevo del disco y comenzar a
         ejecutarlo.
         También esto permite spooling, para el manejo de colas
         de impresión, y para la salida.
        Spool=Simultaneous peripheral operation on line.
Spooling
72

         Si un proceso va a imprimir, no manda directamente
         a la impresora sino a un archivo.
         Luego se imprime desde dicho archivo.
         Si varios procesos producen salidas a impresora,
         entonces todos sacan su salida a disco, y luego de ahí
         a la impresora.
         Aparece la cola de impresión.
         Así, se comienza a aprovechar mejor un recurso caro
         como lo es la CPU, al liberarlo de atender
         dispositivos lentos.
Tiempo compartido
73

         Aún no se trabajaba de la forma más eficiente.
          Los programas entregaban las tarjetas al operador, si
         había errores de compilación, había que cambiar algunas
         tarjetas y reiniciar el proceso.
         Surgen las máquinas de tiempo compartido (time sharing).
         Varios usuarios utilizan al mismo tiempo la computadora, en
         principio compitiendo (más que compartiendo) por sus
         recursos.
          Así, los sistemas operativos podían atender a varios
         usuarios interactivos, que se comunican con el computador
         a través de terminales en línea.
Tiempo compartido
74

          Un gran número de usuarios pueden trabajar simultáneamente en forma
         interactiva.
         De alguna forma, se ofrece a cada usuario la ilusión de que dispone de
         el sistema para él.
         Los sistemas de tiempo compartido de los años 60, trabajaban también en
         modo de proceso por lotes y con aplicaciones de tiempo real.
          Los sistemas de tiempo real dan respuestas en tiempos mínimos
         preestablecidos. Ejemplo: sensores de estabilidad en un avión.
         En general son usados por debajo de su capacidad, a fin de asegurar
         esos tiempos mínimos, y eso explica su alto costo.
        En los sistemas de tiempo real, la multiprogramación debe ser controlada
         de acuerdo a restricciones de tiempo y prioridades.
Tiempo compartido
75


         En 1961 aparece el CTSS, sistema operativo time sharing,
         desarrollado por el MIT. También el TSS de IBM. TSS=Time
         Shared System.
         Otros sistemas de tiempo compartido:
            Multics del MIT, sucesor de CTSS, antecedente de Unix. Primer SO que
             intentó escribirse en un LP de alto nivel (PL/I).
            CP/CMS, antecesor del VM de IBM.
          Todos estos eran sistemas de tiempo compartido, permitían
         compartir programas y datos, y mostraron el valor de la
         computación interactiva en los ambientes de desarrollo de
         programas.
        El tiempo de retorno (tiempo entre introducción de una tarea y
         recepción de su resultado) bajó a segundos.
Tiempo compartido
76

          El usuario podía introducir programas, compilarlos,
         corregir errores (sintácticos), recompilar hasta librarlo
         de errores, ejecutarlo, depurarlo (errores semánticos)
         hasta producir la versión final.
          Esta modalidad de proceso de desarrollo es muy
         similar a la actual. Notar como se llega a la misma
         gracias a los progresos en los sistemas operativos.
         Los sistemas operativos comienzan a ser vistos como
         ambientes de trabajo.
Multiprogramación
77

         Estos sistemas permitían trabajar con varios procesos
         simultáneos en ejecución.
         El procesador va turnando la ejecución de partes de
         cada uno.
         El cambio de un proceso a otro se logra gracias a
         las interrupciones.
         Aparecen los mecanismos de protección de memoria
         de modo de que coexistan varios procesos en
         ejecución.
Memoria virtual
78


         El concepto de memoria virtual ya estaba presente en
         TSS, Multics y CP/CMS.
         Así, los programas pueden usar más memoria de la que
         físicamente el sistema proporciona.
         Esto se logra combinando memoria RAM y disco.
         Así, los programadores dejaron de preocuparse por los
         procedimientos y trucos para que un programa entrara
         completamente en memoria, concentrándose en el
         problema en sí.
Ingeniería de software
79

         Los programas en general, y los sistemas operativos en
         particular, comenzaron a resolver situaciones cada vez más
         complejas.
         Así, crecieron en tamaño y complejidad.
         Comenzaron a aparecer versiones que corregían errores
         de otras versiones, y en ellas aparecían nuevos.
          La necesidad de producir software confiable, fácil de
         mantener, comprensible, etc. dieron origen a la ingeniería
         de software.
          Con esta disciplina se reconoce que todo software es
         producto de un proceso de desarrollo.
Proceso de desarrollo de software
80

         Controlando la calidad en el proceso de desarrollo, se
         logra dar calidad al producto del mismo.
         Aparecen técnicas de project management aplicadas a
         los proyectos de desarrollo de software.
         En general, se agregan herramientas para lograr un PDS
         estructurado, predecible, disciplinado.
          De alguna manera se sentaron bases firmes para el
         desarrollo de programas grandes, y en particular,
         sistemas operativos más complejos.
Origen de Unix
81

         En 1969, fracasa el proyecto Multics de Bell y General
         Electric.
         Multics = Miltiplexed Information Computer Service.
         Se trataba de un ambicioso proyecto de sistema operativo
         grande, multitarea y multiusuario.
         Primera vez que se intentó usar un LP de alto nivel en la
         codificación de un SO (PL/I).
         En Bell, Thompson y Ritchie escribieron, sobre una PDP-7 un
         juego llamado Space Travel.
         Para éste, Thompson escribió un ambiente de trabajo para
         esa computadora, llamado Unics (U por Uniplexed).
Origen de Unix
82


         Luego, se pasó a una versión de 16 Kb. sobre un
         PDP-11.
         Luego se desarrollaron el lenguaje B (Thompson) y el
         lenguaje C (Ritchie).
         Luego se reescribió gran parte del Unix en C.
         Con un fuente abierto, y adoptado primero en
         ambientes académicos y luego también comerciales,
         Unix inició su expansión.
Los años 70
83

           Predominaron los sistemas de tiempo compartido con
         múltiples modos de operación: procesamiento por lotes,
         tiempo compartido y tiempo real.
          Los computadores personales estaban en la etapa inicial
         de su desarrollo, que vendría de la mano del desarrollo de
         los microprocesadores.
          Ya habían productos comerciales sólidos. Entonces, surgió
         el problema de comunicar sistemas.
           Aparecieron protocolos estándares de comunicación:
         TCP/IP (Depto. de Defensa de USA), Ethernet (Xerox).
            Comenzaron a surgir los primeros problemas de
         seguridad. Aparece la criptografía, etc.
          Todo esto se traduce en nuevas necesidades para los
         sistemas operativos.
Cuarta generación: 1980-90 y
84
     actualidad
          En hardware, se logra la integración de transistores en alta y
          gran escala.
          Aparecen los PCs. Son similares a los minicomputadores en
          estructura y conceptos, pero más pequeños y más baratos.
           fines 60’s – Apple con CP/M. (CP = Control Program).
          Diskettes.
           80-81: IBM lanza el primer PC. Procesador Intel 8086.
          Sistema operativo DOS de Microsoft.
          DOS = Disk Operating System.
          1970 – Xerox. Antecedentes de manejo a través de íconos.
          Luego Mac OS (Apple), OS/2 (IBM) y Windows (Microsoft).
Redes
85

         Idea: Compartir recursos.
         Una red es un conjunto de computadoras autónomas interconectadas.
        Se lograron redes cuya potencia de cómputo es comparable a las de los
         mainframes que predominaron en los años 1970s.
        Ventajas frente a los mainframes:
            Ambos comparten recursos.
            En la red no se compite por los recursos críticos CPU y memoria.
            Permiten administración centralizada.
            La red implica una inversión escalable.
         Sistemas operativos distribuidos: trabajan sobre una red, pero ocultan al
         usuario la presencia de la misma. Para el usuario es transparente en qué
         sistema de la red se ejecutan sus órdenes, eso lo resuelve el sistema
         operativo.
Redes
86

         Con las redes aparecieron nuevas herramientas de
         comunicación.
         Aparecen redes de área local y de área extensa,
         resultantes de la interconexión de las primeras.
         Aparece la red Internet (70’s).
         Crecen los requerimientos de los sistemas operativos
         en cuanto a dar soporte a múltiples usuarios, permitir
         el uso de redes y permitir los niveles de seguridad y
         auditoría necesarios.
Redes
87

        Con el desarrollo de las redes aparecen nuevas
         posibilidades y problemas:
            Publicación de bases de datos.
            Distribución de bases de datos.
            Protección de accesos.
            Auditoría de accesos.
            Ataques (hackers).
            Aplicaciones de red.
            Herramientas de publicación y de comunicación.
            Aplicaciones cliente/servidor.
            Transmisión de datos en tiempo real (imágenes, etc.)
             Comunicación entre distintas plataformas.
Los desafíos en arquitectura y sistemas
88
     operativos
        Conectividad
        Sistemas abiertos.
        Paralelismo.
        Sistemas distribuidos.
        Mejoramiento de la interfaz con el usuario.
Sistemas operativos de los últimos años
89


        La familia Microsoft:
            MS-DOS
            Windows 3.X
            Windows 95/98/ME
            Windows NT / 2000 / XP
        La familia Unix:
             Unix SVR4, Unix BSD, Solaris, AIX, SCO Unix, HP Ux, Irix,
             Linux.
        Otros: OS/2, Mac, VM, etc.
Clasificaciones
90

        Proceso o tarea: es un programa en ejecución.
        Sistema operativo:
            Monotarea: sólo permite un proceso en ejecución a la vez.
            Multitarea: permite la ejecución simultánea de varios procesos.
        Sistema operativo:
            Monousuario: no reconoce la existencia de diferentes usuarios.
            Multiusuario: reconoce la existencia de diferentes usuarios y
             arbitra el acceso de los mismos a los recursos del sistema.
El núcleo o kernel
91


        Sus funciones principales:
          Schedullingde procesos
          Manejo de memoria

          Gestión de file systems
Control de lectura
92


         A esta altura ya debe haber leído los capítulos 1
         y 2 de Deitel o sus equivalentes en los otros textos.

Weitere ähnliche Inhalte

Andere mochten auch

Sistemas operativos isc
Sistemas operativos iscSistemas operativos isc
Sistemas operativos iscmaypagonzalez
 
Fundamentos de los sistemas operativos
Fundamentos de los sistemas operativosFundamentos de los sistemas operativos
Fundamentos de los sistemas operativosJohan Olarte
 
Historia y evolución MAC OS
Historia y evolución MAC OSHistoria y evolución MAC OS
Historia y evolución MAC OSlubarragan
 
Importancia de los sistemas operativos
Importancia de los sistemas operativosImportancia de los sistemas operativos
Importancia de los sistemas operativosVictor Miles
 
La evolucion de la computadora y su uso en los procesos de la informatica
La evolucion de la computadora y su uso en los procesos de la informaticaLa evolucion de la computadora y su uso en los procesos de la informatica
La evolucion de la computadora y su uso en los procesos de la informaticaAtziDiaz
 
Osciloscopio para-electromecanicos
Osciloscopio para-electromecanicosOsciloscopio para-electromecanicos
Osciloscopio para-electromecanicosjoaquinin1
 
EvolucióN De Los Sistemas Operativos
EvolucióN De Los Sistemas OperativosEvolucióN De Los Sistemas Operativos
EvolucióN De Los Sistemas Operativosmarcoslibido
 
Importancia de los Sistemas Operativos
Importancia de los Sistemas OperativosImportancia de los Sistemas Operativos
Importancia de los Sistemas OperativosMarvin Romero
 
Evolución de los sistemas operativos
Evolución de los sistemas operativosEvolución de los sistemas operativos
Evolución de los sistemas operativosggongar96
 
Electricidad del automovil
Electricidad del automovilElectricidad del automovil
Electricidad del automovilricrodriguez
 
Historia y evolucion del sistema operativo
Historia y evolucion del sistema operativoHistoria y evolucion del sistema operativo
Historia y evolucion del sistema operativoslipkdany21
 
Refrigeracion automotriz
Refrigeracion automotrizRefrigeracion automotriz
Refrigeracion automotrizSENA
 
Sistemas operativos y sus funciones basicas
Sistemas operativos y sus funciones basicasSistemas operativos y sus funciones basicas
Sistemas operativos y sus funciones basicasjanet012
 
Electricidad Y Electrónica
Electricidad Y ElectrónicaElectricidad Y Electrónica
Electricidad Y Electrónicatrashrudeboy
 
Historia y evolucion de los sistemas operativos
Historia y evolucion de los sistemas operativosHistoria y evolucion de los sistemas operativos
Historia y evolucion de los sistemas operativosalexitopico
 

Andere mochten auch (20)

Sistemas operativos isc
Sistemas operativos iscSistemas operativos isc
Sistemas operativos isc
 
Fundamentos de los sistemas operativos
Fundamentos de los sistemas operativosFundamentos de los sistemas operativos
Fundamentos de los sistemas operativos
 
Historia y evolución MAC OS
Historia y evolución MAC OSHistoria y evolución MAC OS
Historia y evolución MAC OS
 
Importancia de los sistemas operativos
Importancia de los sistemas operativosImportancia de los sistemas operativos
Importancia de los sistemas operativos
 
La evolucion de la computadora y su uso en los procesos de la informatica
La evolucion de la computadora y su uso en los procesos de la informaticaLa evolucion de la computadora y su uso en los procesos de la informatica
La evolucion de la computadora y su uso en los procesos de la informatica
 
Softwarelibre Y Privado
Softwarelibre Y PrivadoSoftwarelibre Y Privado
Softwarelibre Y Privado
 
Osciloscopio para-electromecanicos
Osciloscopio para-electromecanicosOsciloscopio para-electromecanicos
Osciloscopio para-electromecanicos
 
EvolucióN De Los Sistemas Operativos
EvolucióN De Los Sistemas OperativosEvolucióN De Los Sistemas Operativos
EvolucióN De Los Sistemas Operativos
 
Importancia de los Sistemas Operativos
Importancia de los Sistemas OperativosImportancia de los Sistemas Operativos
Importancia de los Sistemas Operativos
 
Evolución de los sistemas operativos
Evolución de los sistemas operativosEvolución de los sistemas operativos
Evolución de los sistemas operativos
 
Historia de los Sistemas Operativos
Historia de los Sistemas OperativosHistoria de los Sistemas Operativos
Historia de los Sistemas Operativos
 
Direccion electrica
Direccion electricaDireccion electrica
Direccion electrica
 
Electricidad del automovil
Electricidad del automovilElectricidad del automovil
Electricidad del automovil
 
Historia y evolucion del sistema operativo
Historia y evolucion del sistema operativoHistoria y evolucion del sistema operativo
Historia y evolucion del sistema operativo
 
Refrigeracion automotriz
Refrigeracion automotrizRefrigeracion automotriz
Refrigeracion automotriz
 
Sistemas operativos y sus funciones basicas
Sistemas operativos y sus funciones basicasSistemas operativos y sus funciones basicas
Sistemas operativos y sus funciones basicas
 
Electricidad Y Electrónica
Electricidad Y ElectrónicaElectricidad Y Electrónica
Electricidad Y Electrónica
 
Sistemas operativos y sus funciones
Sistemas operativos y sus funcionesSistemas operativos y sus funciones
Sistemas operativos y sus funciones
 
Sistemas operativos power point
Sistemas operativos power pointSistemas operativos power point
Sistemas operativos power point
 
Historia y evolucion de los sistemas operativos
Historia y evolucion de los sistemas operativosHistoria y evolucion de los sistemas operativos
Historia y evolucion de los sistemas operativos
 

Ähnlich wie Diseño de Sistemas Operativos

Ähnlich wie Diseño de Sistemas Operativos (20)

7. software
7. software7. software
7. software
 
Rosa espinozamarinssoo introduccionehistoria
Rosa espinozamarinssoo introduccionehistoriaRosa espinozamarinssoo introduccionehistoria
Rosa espinozamarinssoo introduccionehistoria
 
Elementos del sistema informatico
Elementos del sistema informaticoElementos del sistema informatico
Elementos del sistema informatico
 
Elementos del sistema informatico
Elementos del sistema informaticoElementos del sistema informatico
Elementos del sistema informatico
 
Principios sobre software
Principios sobre softwarePrincipios sobre software
Principios sobre software
 
S.o
S.oS.o
S.o
 
7. software
7. software7. software
7. software
 
Tipos de software1
Tipos de software1Tipos de software1
Tipos de software1
 
UNIVERSIDAD CENTRAL DEL ECUADOR FACULTAD DE FILOSOFIA, LETRAS Y CIENCIAS DE ...
UNIVERSIDAD  CENTRAL DEL ECUADOR FACULTAD DE FILOSOFIA, LETRAS Y CIENCIAS DE ...UNIVERSIDAD  CENTRAL DEL ECUADOR FACULTAD DE FILOSOFIA, LETRAS Y CIENCIAS DE ...
UNIVERSIDAD CENTRAL DEL ECUADOR FACULTAD DE FILOSOFIA, LETRAS Y CIENCIAS DE ...
 
7. software
7. software7. software
7. software
 
ELEMENTOS DEL SISTEMA COMPUTACIONAL Y SISTEMAS OPERATIVOS
ELEMENTOS DEL SISTEMA COMPUTACIONAL Y SISTEMAS OPERATIVOSELEMENTOS DEL SISTEMA COMPUTACIONAL Y SISTEMAS OPERATIVOS
ELEMENTOS DEL SISTEMA COMPUTACIONAL Y SISTEMAS OPERATIVOS
 
Software
SoftwareSoftware
Software
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
7. softwareteken
7. softwareteken7. softwareteken
7. softwareteken
 
Interesantesoftware
InteresantesoftwareInteresantesoftware
Interesantesoftware
 
Romario vega ccorimanya
Romario vega ccorimanyaRomario vega ccorimanya
Romario vega ccorimanya
 
Presentacion sistemas operativos
Presentacion sistemas operativosPresentacion sistemas operativos
Presentacion sistemas operativos
 
7. software
7. software7. software
7. software
 
7.-Software.ppt
7.-Software.ppt7.-Software.ppt
7.-Software.ppt
 
7. software (1)
7. software (1)7. software (1)
7. software (1)
 

Kürzlich hochgeladen

DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...Martin M Flynn
 
PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2
PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2
PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2Eliseo Delgado
 
NUEVO PLAN Y PROGRAMAS DE ESTUDIO 2022.pdf
NUEVO PLAN Y PROGRAMAS DE ESTUDIO  2022.pdfNUEVO PLAN Y PROGRAMAS DE ESTUDIO  2022.pdf
NUEVO PLAN Y PROGRAMAS DE ESTUDIO 2022.pdfEDNAMONICARUIZNIETO
 
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE 9-4-24 (1).docx
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE     9-4-24 (1).docx4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE     9-4-24 (1).docx
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE 9-4-24 (1).docxMagalyDacostaPea
 
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJODIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJOLeninCariMogrovejo
 
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbalPPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbalRosarioChoque3
 
TEMA 13. LOS GOBIERNOS DEMOCRÁTICOS (1982-2018)
TEMA 13. LOS GOBIERNOS DEMOCRÁTICOS (1982-2018)TEMA 13. LOS GOBIERNOS DEMOCRÁTICOS (1982-2018)
TEMA 13. LOS GOBIERNOS DEMOCRÁTICOS (1982-2018)jlorentemartos
 
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...MagalyDacostaPea
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
Abregú, Podestá. Directores.Líderes en Acción.
Abregú, Podestá. Directores.Líderes en Acción.Abregú, Podestá. Directores.Líderes en Acción.
Abregú, Podestá. Directores.Líderes en Acción.profandrearivero
 
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADOCUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADOEveliaHernandez8
 
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docxMagalyDacostaPea
 
Secuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docxSecuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docxNataliaGonzalez619348
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfssuser50d1252
 
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfFichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfssuser50d1252
 
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfFichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfssuser50d1252
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Angélica Soledad Vega Ramírez
 

Kürzlich hochgeladen (20)

¿Amor o egoísmo? Esa es la cuestión.pptx
¿Amor o egoísmo? Esa es la cuestión.pptx¿Amor o egoísmo? Esa es la cuestión.pptx
¿Amor o egoísmo? Esa es la cuestión.pptx
 
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
 
PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2
PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2
PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2
 
NUEVO PLAN Y PROGRAMAS DE ESTUDIO 2022.pdf
NUEVO PLAN Y PROGRAMAS DE ESTUDIO  2022.pdfNUEVO PLAN Y PROGRAMAS DE ESTUDIO  2022.pdf
NUEVO PLAN Y PROGRAMAS DE ESTUDIO 2022.pdf
 
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE 9-4-24 (1).docx
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE     9-4-24 (1).docx4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE     9-4-24 (1).docx
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE 9-4-24 (1).docx
 
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJODIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
 
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbalPPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
 
TEMA 13. LOS GOBIERNOS DEMOCRÁTICOS (1982-2018)
TEMA 13. LOS GOBIERNOS DEMOCRÁTICOS (1982-2018)TEMA 13. LOS GOBIERNOS DEMOCRÁTICOS (1982-2018)
TEMA 13. LOS GOBIERNOS DEMOCRÁTICOS (1982-2018)
 
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
 
El Bullying.
El Bullying.El Bullying.
El Bullying.
 
Unidad 2 | Teorías de la Comunicación | MCDIU
Unidad 2 | Teorías de la Comunicación | MCDIUUnidad 2 | Teorías de la Comunicación | MCDIU
Unidad 2 | Teorías de la Comunicación | MCDIU
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
Abregú, Podestá. Directores.Líderes en Acción.
Abregú, Podestá. Directores.Líderes en Acción.Abregú, Podestá. Directores.Líderes en Acción.
Abregú, Podestá. Directores.Líderes en Acción.
 
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADOCUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
 
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx
4° UNIDAD 2 SALUD,ALIMENTACIÓN Y DÍA DE LA MADRE 933623393 PROF YESSENIA CN.docx
 
Secuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docxSecuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docx
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
 
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfFichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
 
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfFichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...
 

Diseño de Sistemas Operativos

  • 1. 1 DISEÑO DE SISTEMAS OPERATIVOS ING. ÁNGEL CAFFA Facultad de Ingeniería Universidad ORT
  • 2. Temario 2 Generalidades de Sistemas Operativos Generalidades is a Design Digital Content & de S.O. Contents mall developed by Guild Design Inc. Gestión de procesos Gestión de is a Design Digital Content & ontents procesos mall developed by Guild Design Inc. Memoria Memoria Contents mall developed by Guild Design Inc.
  • 3. Temario 3 Disco Disco is a Design Digital Content & Contents mall developed by Guild Design Inc. Conceptos de Seguridad Conceptos Contents mall developed by Guild de Seguridad Design Inc.
  • 4. Bibliografía 4  Sistemas Operativos. Deitel.  Sistemas Operativos. Peterson.  Sistemas Operativos Modernos. Tanenbaum.  Conceptos de Sistemas Operativos. Silberchatz-otros.  The Logical Design of Operating Systems. Bic-Shaw.  El Entorno de Programación Unix. Kernighan-Pike.  Sistemas Operativos, diseño e implementación. Tanenbaum.
  • 5. Aprobación del curso 5  2 Parciales y 1 obligatorio.  Pruebas sin material.  El segundo parcial abarca todos los temas.  Preguntas teóricas, ejercicios, problemas, situaciones reales.  Ganancia de curso.  Aprobación del curso.  Examen individual, solo preguntas letra, solos.
  • 6. Horarios 6  Grupo Matutino  Grupo Nocturno  Cada semana se ven los mismos temas con los dos grupos (recuperación).
  • 7. Cronograma 7  Comienzo: Lunes 15 de Marzo.  Lectura obligatorio.  Preparación primer parcial (simulacro y corrección).  Primer parcial.  Resultados primer parcial, muestra.  Entrega obligatorio.  Preparación segundo parcial.  Segundo parcial.  Defensas obligatorio.  Resultados segundo parcial y obligatorio, muestra.  Consulta examen.  Examen.  Resultados examen, muestra.
  • 8. El curso dentro de la formación de un informático Arquitectura Sistemas de sistemas operativos Redes Prog. B.D. ... Administración de sistemas Programación en un bajo un sistema operativo lenguaje determinado determinado Configuración de redes Diseño y configuración de bajo un conjunto determinado Sistemas, servicio técnico de protocolos. ... 8
  • 9. El curso dentro de la formación de 9 un informático  Se trata de una asignatura básica, general, al igual que el resto de las marcadas en el bloque.  Sirve de base para comprender aspectos técnicos concretos (pasados, presentes y muchas veces futuros).  Marca la diferencia con los técnicos.
  • 10. Enfoque del curso 10  Se trata de temas clásicos dentro de la informática.  Los sistemas operativos actuales, cumplen con los modelos teóricos que se ven en el curso.  Las variantes se ven en los estudios de caso.
  • 11. Enfoque del curso 11 Sistema operativo = Software para gestión de los recursos del sistema Recursos críticos = CPU, memoria y disco Gestión de CPU Gestión de memoria Gestión de disco Gestión de otros recursos del sistema
  • 12. 12 I - GENERALIDADES DE LOS SISTEMAS OPERATIVOS Sistemas Operativos
  • 13. Repaso de conceptos básicos 13  Componentes de un sistema informático: hardware, software y gente.  El hardware proporciona la capacidad bruta de cómputo, abarca todas las componentes tangibles del sistema.  El software abarca los programas y datos (no tangibles).  Sistema informático = conjunto de recursos.  Sistemas abiertos. Esta tendencia implica componentes compatibles a nivel de hardware, software, comunicaciones, etc.
  • 14. Repaso de conceptos básicos 14  Componentes de un sistema informático: hardware, software y gente.  El hardware proporciona la capacidad bruta de cómputo, abarca todas las componentes tangibles del sistema.  El software abarca los programas y datos (no tangibles).  Sistema informático = conjunto de recursos.  Sistemas abiertos. Esta tendencia implica componentes compatibles a nivel de hardware, software, comunicaciones, etc.
  • 15. Recursos 15  Son los componentes del sistema. El conjunto de recursos constituye la capacidad bruta de cómputo para el sistema.  Ejemplos de recursos: (Micro) procesador, memoria, disco, unidad de CD, impresora, scanner, lector de barras, mouse, teclado, etc.
  • 16. Definición de sistema operativo 16  Un sistema operativo es un conjunto de programas que administran los recursos del sistema, proporcionando y arbitrando el acceso a los mismos por parte de los usuarios del sistema.
  • 17. Definición de SO 17  Desglosando lo anterior, el SO:  Está compuesto por programas.  Trata el hardware como un conjunto de recursos.  Puede reconocer diferentes usuarios.  Administra los recursos.  Permite acceso a recursos.  Proporciona a usuarios una interfaz para interactuar con el sistema y sus recursos.  Proporciona a otros programas una interfaz para interactuar con el sistema y sus recursos.  Arbitra el acceso a recursos.  Proporciona mecanismos de seguridad.
  • 18. Además... 18  El sistema operativo es de alguna forma el nexo entre el hardware y el software.  El sistema operativo brinda al usuario un ambiente de trabajo (más cómodo que tener que resolver cada vez los problemas de bajo nivel, etc.).  El sistema operativo asigna (y por lo tanto arbitra) los recursos del sistema.
  • 19. Analogía 19  Hardware = automóvil.  Sistema operativo = conductor.  El automóvil no funciona sin el conductor.  Distintos conductores logran funcionamientos diferentes para el mismo auto.  El auto consta de un conjunto de recursos que constituyen su capacidad bruta de funcionamiento.  El motor, la dirección, el sistema de frenos, el sistema eléctrico, etc., son los recursos.
  • 20. Primer esquema de capas 20 Programas Sistema Hardware USUARIO = Recursos Operativo
  • 21. Evolución de los SO 21  1822 – Charles Babbage idea una máquina diferencial mecánica que calculaba polinomios de grado <= 6 sobre Z. Totalmente diseñada, no se pudo construir.  1830 – Charles Babbage diseña una máquina analítica mecánica. No se pudo construir por la complejidad de sus piezas. Aparece conceptos de: almacenamiento en tarjetas, almacenamiento en variables (memoria), almacenamiento de un conjunto de operaciones (programa).  1896 – Primera computadora real. Censo USA, tarjetas perforadas, primer sistema de codificación. Horelitz, que luego fundaría IBM.
  • 22. Primera generación 22  Décadas de 1940 y 1950.  A válvula (necesidad de refrigeración), muy lentas, cuartos enteros.  Los programas se introducían bit a bit con interruptores mecánicos, luego pasaban a la computadora vía tarjetas perforadas.  Los resultados se expresaban a través de leds.  ENIAC – Cálculo trayectorias balísticas, 1800 válvulas de vacío, 32 bits de memoria, una suma en 0,2 ms.
  • 23. Primera generación 23  1951 – ENIAC I, primera computadora para uso comercial.  Programas perforados en tarjetas, pero aún no habían nada parecido a un sistema operativo.  1953 – Aparece el primer sistema operativo. Escrito por General Motors para la IBM 701.  La necesidad original era de un programa que gestionara la E/S. Además, este SO, cuando un programa finalizaba, una rutina saltaba el flujo de ejecución al programa siguiente. Era monotarea.  Denominados sistemas de procesamiento por lotes de secuencia única.
  • 24. Segunda generación: 1955-65 24  Hardware: sustitución de válvulas por transistores.  Primeras máquinas fabricadas en serie.  El que fabrica la computadora ya no es el usuario.  Muy grandes, cuartos especiales, temperatura.  Job sequencing: Al finalizar un trabajo se lanza otro en forma automática, sin necesidad de monitoreo ni intervención del operador.  Se gana en eficiencia de uso del sistema al aparecer los sistemas de procesamiento por lotes (batch).
  • 25. Sistemas de proceso por lotes (batch). 25  Antes, la forma de utilizar los sistemas era:  Se escribe el programa en papel.  Se perfora el programa en tarjetas, con una máquina especial.  Se ponen todas las tarjetas en la computadora para la ejecución.  Por ejemplo, si se precisa el compilador Fortran, o alguna biblioteca, se incluyen también esas tarjetas.
  • 26. Sistemas de proceso por lotes 26  Con los sistemas batch:  Se pasan varios programas de tarjeta a una cinta (con una computadora que haga eso eficientemente).  La cinta resultado es la entrada de otra computadora (que realiza cálculos eficientemente), que es donde corren los programas.  La salida de esa ejecución se envía a una cinta, y otra máquina manda la salida a la impresora.  Un sistema operativo de esta época era, por ejemplo, el Fortran Monitor System.  Los usuarios no están en el centro de cómputos mientras se ejecutan sus programas. Los programas debían esperar, y si ocurrían errores (incluso sintácticos), había que repetir todo este proceso tan lento.
  • 27. Sistemas de proceso por lotes 27  Aparece el concepto de buffering: consiste en solapar las operaciones de entrada/salida con la computación del proceso.  Así, se aprovecha mejor la CPU.  En hardware, la innovación que posibilitó el buffering fue que los procesadores tienen registros e instrucciones propios para la comunicación entre CPU y canales controladores de entrada/salida.  El proceso en ejecución solicita una operación de E/S (que es lenta). El controlador la hace, y mientras ese proceso sigue, hasta que, vía una interrupción, el controlador avisa que terminó.  Esta es una primera forma de multitarea.
  • 28. Sistemas de proceso por lotes 28  Estos dispositivos periféricos (algunos realizan la E/S por interrupciones):  Lectoras de tarjetas.  Perforadoras de tarjetas.  Impresoras.  Unidades de cinta.  Unidades de disco.  El desafío era usar estos recursos eficientemente, y en particular el recurso procesador al interactuar con ellos.  En definitiva es importante no tener procesador ocioso.
  • 29. Multiprogramación 29  Cuando una tarea utilizaba el procesador, otras podían usar los dispositivos de E/S.  La mejor forma de usar el tiempo de CPU, es que, en un momento dado, el sistema ejecute no una tarea, sino un conjunto de tareas.  En esto se basa el concepto de multiprogramación: varias tareas se encuentran simultáneamente en memoria principal, y el procesador se conmuta de una tarea a otra buscando su avance a medida que requieren uso de los dispositivos periféricos.
  • 30. Tercera generación: 1965-70 30  Innovación en hardware: aparecen circuitos integrados (a baja escala).  Aparece la primer minicomputadora: PDP-8 (antecesoras de las Digital VAX).  Aparece la familia de computadoras de IBM, System/360 (1964). 16 Kb. RAM, 300.000 ops./seg. Primera serie que busca unificar máquinas científicas y comerciales. Costo del orden del millón de dólares.  La siguió la serie 370 y luego 4300 y 30X0.  Hardware compatible dentro y entre las series IBM (no así en las PDP por ejemplo).
  • 31. OS/360 31  El IBM 360, tiene un sistema operativo, OS/360.  Sistema operativo muy grande, millones de instrucciones Assembler, muchos bugs.  Se arreglaban algunos bugs y surgían otros.  Aparecen algunas ideas de ingeniería de software, al tratarse lo relativo al desarrollo de programas grandes.  Multiprogramación:  Mientras un proceso espera E/S, otro toma la CPU.  Memoria dividida en áreas, asignadas a diferentes procesos.  Mecanismos de protección de memoria.
  • 32. Spooling 32  Las computadoras de la tercera generación tenían almacenamiento secundario, no volátil, basado en:  Cintas: acceso secuencial, se agregan datos al final.  Discos: acceso aleatorio, se puede modificar un archivo “por la mitad”.  Así, siempre que se termina de ejecutar un trabajo, el SO puede cargar uno nuevo del disco y comenzar a ejecutarlo.  También esto permite spooling, para el manejo de colas de impresión, y para la salida.  Spool=Simultaneous peripheral operation on line.
  • 33. Spooling 33  Si un proceso va a imprimir, no manda directamente a la impresora sino a un archivo.  Luego se imprime desde dicho archivo.  Si varios procesos producen salidas a impresora, entonces todos sacan su salida a disco, y luego de ahí a la impresora.  Aparece la cola de impresión.  Así, se comienza a aprovechar mejor un recurso caro como lo es la CPU, al liberarlo de atender dispositivos lentos.
  • 34. Tiempo compartido 34  Aún no se trabajaba de la forma más eficiente.  Los programas entregaban las tarjetas al operador, si había errores de compilación, había que cambiar algunas tarjetas y reiniciar el proceso.  Surgen las máquinas de tiempo compartido (time sharing).  Varios usuarios utilizan al mismo tiempo la computadora, en principio compitiendo (más que compartiendo) por sus recursos.  Así, los sistemas operativos podían atender a varios usuarios interactivos, que se comunican con el computador a través de terminales en línea.
  • 35. Tiempo compartido 35  Un gran número de usuarios pueden trabajar simultáneamente en forma interactiva.  De alguna forma, se ofrece a cada usuario la ilusión de que dispone de el sistema para él.  Los sistemas de tiempo compartido de los años 60, trabajaban también en modo de proceso por lotes y con aplicaciones de tiempo real.  Los sistemas de tiempo real dan respuestas en tiempos mínimos preestablecidos. Ejemplo: sensores de estabilidad en un avión.  En general son usados por debajo de su capacidad, a fin de asegurar esos tiempos mínimos, y eso explica su alto costo.  En los sistemas de tiempo real, la multiprogramación debe ser controlada de acuerdo a restricciones de tiempo y prioridades.
  • 36. Tiempo compartido 36  En 1961 aparece el CTSS, sistema operativo time sharing, desarrollado por el MIT. También el TSS de IBM. TSS=Time Shared System.  Otros sistemas de tiempo compartido:  Multics del MIT, sucesor de CTSS, antecedente de Unix. Primer SO que intentó escribirse en un LP de alto nivel (PL/I).  CP/CMS, antecesor del VM de IBM.  Todos estos eran sistemas de tiempo compartido, permitían compartir programas y datos, y mostraron el valor de la computación interactiva en los ambientes de desarrollo de programas.  El tiempo de retorno (tiempo entre introducción de una tarea y recepción de su resultado) bajó a segundos.
  • 37. Tiempo compartido 37  El usuario podía introducir programas, compilarlos, corregir errores (sintácticos), recompilar hasta librarlo de errores, ejecutarlo, depurarlo (errores semánticos) hasta producir la versión final.  Esta modalidad de proceso de desarrollo es muy similar a la actual. Notar como se llega a la misma gracias a los progresos en los sistemas operativos.  Los sistemas operativos comienzan a ser vistos como ambientes de trabajo.
  • 38. Multiprogramación 38  Estos sistemas permitían trabajar con varios procesos simultáneos en ejecución.  El procesador va turnando la ejecución de partes de cada uno.  El cambio de un proceso a otro se logra gracias a las interrupciones.  Aparecen los mecanismos de protección de memoria de modo de que coexistan varios procesos en ejecución.
  • 39. Memoria virtual 39  El concepto de memoria virtual ya estaba presente en TSS, Multics y CP/CMS.  Así, los programas pueden usar más memoria de la que físicamente el sistema proporciona.  Esto se logra combinando memoria RAM y disco.  Así, los programadores dejaron de preocuparse por los procedimientos y trucos para que un programa entrara completamente en memoria, concentrándose en el problema en sí.
  • 40. Ingeniería de software 40  Los programas en general, y los sistemas operativos en particular, comenzaron a resolver situaciones cada vez más complejas.  Así, crecieron en tamaño y complejidad.  Comenzaron a aparecer versiones que corregían errores de otras versiones, y en ellas aparecían nuevos.  La necesidad de producir software confiable, fácil de mantener, comprensible, etc. dieron origen a la ingeniería de software.  Con esta disciplina se reconoce que todo software es producto de un proceso de desarrollo.
  • 41. Proceso de desarrollo de software 41  Controlando la calidad en el proceso de desarrollo, se logra dar calidad al producto del mismo.  Aparecen técnicas de project management aplicadas a los proyectos de desarrollo de software.  En general, se agregan herramientas para lograr un PDS estructurado, predecible, disciplinado.  De alguna manera se sentaron bases firmes para el desarrollo de programas grandes, y en particular, sistemas operativos más complejos.
  • 42. Origen de Unix 42  En 1969, fracasa el proyecto Multics de Bell y General Electric.  Multics = Miltiplexed Information Computer Service.  Se trataba de un ambicioso proyecto de sistema operativo grande, multitarea y multiusuario.  Primera vez que se intentó usar un LP de alto nivel en la codificación de un SO (PL/I).  En Bell, Thompson y Ritchie escribieron, sobre una PDP-7 un juego llamado Space Travel.  Para éste, Thompson escribió un ambiente de trabajo para esa computadora, llamado Unics (U por Uniplexed).
  • 43. Origen de Unix 43  Luego, se pasó a una versión de 16 Kb. sobre un PDP-11.  Luego se desarrollaron el lenguaje B (Thompson) y el lenguaje C (Ritchie).  Luego se reescribió gran parte del Unix en C.  Con un fuente abierto, y adoptado primero en ambientes académicos y luego también comerciales, Unix inició su expansión.
  • 44. Los años 70 44  Predominaron los sistemas de tiempo compartido con múltiples modos de operación: procesamiento por lotes, tiempo compartido y tiempo real.  Los computadores personales estaban en la etapa inicial de su desarrollo, que vendría de la mano del desarrollo de los microprocesadores.  Ya habían productos comerciales sólidos. Entonces, surgió el problema de comunicar sistemas.  Aparecieron protocolos estándares de comunicación: TCP/IP (Depto. de Defensa de USA), Ethernet (Xerox).  Comenzaron a surgir los primeros problemas de seguridad. Aparece la criptografía, etc.  Todo esto se traduce en nuevas necesidades para los sistemas operativos.
  • 45. Cuarta generación: 1980-90 y 45 actualidad  En hardware, se logra la integración de transistores en alta y gran escala.  Aparecen los PCs. Son similares a los minicomputadores en estructura y conceptos, pero más pequeños y más baratos.  fines 60’s – Apple con CP/M. (CP = Control Program). Diskettes.  80-81: IBM lanza el primer PC. Procesador Intel 8086. Sistema operativo DOS de Microsoft.  DOS = Disk Operating System.  1970 – Xerox. Antecedentes de manejo a través de íconos. Luego Mac OS (Apple), OS/2 (IBM) y Windows (Microsoft).
  • 46. Redes 46  Idea: Compartir recursos.  Una red es un conjunto de computadoras autónomas interconectadas.  Se lograron redes cuya potencia de cómputo es comparable a las de los mainframes que predominaron en los años 1970s.  Ventajas frente a los mainframes:  Ambos comparten recursos.  En la red no se compite por los recursos críticos CPU y memoria.  Permiten administración centralizada.  La red implica una inversión escalable.  Sistemas operativos distribuidos: trabajan sobre una red, pero ocultan al usuario la presencia de la misma. Para el usuario es transparente en qué sistema de la red se ejecutan sus órdenes, eso lo resuelve el sistema operativo.
  • 47. Redes 47  Con las redes aparecieron nuevas herramientas de comunicación.  Aparecen redes de área local y de área extensa, resultantes de la interconexión de las primeras.  Aparece la red Internet (70’s).  Crecen los requerimientos de los sistemas operativos en cuanto a dar soporte a múltiples usuarios, permitir el uso de redes y permitir los niveles de seguridad y auditoría necesarios.
  • 48. Redes 48  Con el desarrollo de las redes aparecen nuevas posibilidades y problemas:  Publicación de bases de datos.  Distribución de bases de datos.  Protección de accesos.  Auditoría de accesos.  Ataques (hackers).  Aplicaciones de red.  Herramientas de publicación y de comunicación.  Aplicaciones cliente/servidor.  Transmisión de datos en tiempo real (imágenes, etc.)  Comunicación entre distintas plataformas.
  • 49. Los desafíos en arquitectura y sistemas 49 operativos  Conectividad  Sistemas abiertos.  Paralelismo.  Sistemas distribuidos.  Mejoramiento de la interfaz con el usuario.
  • 50. Sistemas operativos de los últimos años 50  La familia Microsoft:  MS-DOS  Windows 3.X  Windows 95/98/ME  Windows NT / 2000 / XP  La familia Unix:  Unix SVR4, Unix BSD, Solaris, AIX, SCO Unix, HP Ux, Irix, Linux.  Otros: OS/2, Mac, VM, etc.
  • 51. Clasificaciones 51  Proceso o tarea: es un programa en ejecución.  Sistema operativo:  Monotarea: sólo permite un proceso en ejecución a la vez.  Multitarea: permite la ejecución simultánea de varios procesos.  Sistema operativo:  Monousuario: no reconoce la existencia de diferentes usuarios.  Multiusuario: reconoce la existencia de diferentes usuarios y arbitra el acceso de los mismos a los recursos del sistema.
  • 52. El núcleo o kernel 52  Sus funciones principales:  Schedullingde procesos  Manejo de memoria  Gestión de file systems
  • 53. Control de lectura 53  A esta altura ya debe haber leído los capítulos 1 y 2 de Deitel o sus equivalentes en los otros textos.
  • 54. Recursos 54  Son los componentes del sistema. El conjunto de recursos constituye la capacidad bruta de cómputo para el sistema.  Ejemplos de recursos: (Micro) procesador, memoria, disco, unidad de CD, impresora, scanner, lector de barras, mouse, teclado, etc.
  • 55. Definición de sistema operativo 55  Un sistema operativo es un conjunto de programas que administran los recursos del sistema, proporcionando y arbitrando el acceso a los mismos por parte de los usuarios del sistema.
  • 56. Definición de SO 56  Desglosando lo anterior, el SO:  Está compuesto por programas.  Trata el hardware como un conjunto de recursos.  Puede reconocer diferentes usuarios.  Administra los recursos.  Permite acceso a recursos.  Proporciona a usuarios una interfaz para interactuar con el sistema y sus recursos.  Proporciona a otros programas una interfaz para interactuar con el sistema y sus recursos.  Arbitra el acceso a recursos.  Proporciona mecanismos de seguridad.
  • 57. Además... 57  El sistema operativo es de alguna forma el nexo entre el hardware y el software.  El sistema operativo brinda al usuario un ambiente de trabajo (más cómodo que tener que resolver cada vez los problemas de bajo nivel, etc.).  El sistema operativo asigna (y por lo tanto arbitra) los recursos del sistema.
  • 58. Analogía 58  Hardware = automóvil.  Sistema operativo = conductor.  El automóvil no funciona sin el conductor.  Distintos conductores logran funcionamientos diferentes para el mismo auto.  El auto consta de un conjunto de recursos que constituyen su capacidad bruta de funcionamiento.  El motor, la dirección, el sistema de frenos, el sistema eléctrico, etc., son los recursos.
  • 59. Primer esquema de capas 59 Programas Sistema Hardware USUARIO = Recursos Operativo
  • 60. Evolución de los SO 60  1822 – Charles Babbage idea una máquina diferencial mecánica que calculaba polinomios de grado <= 6 sobre Z. Totalmente diseñada, no se pudo construir.  1830 – Charles Babbage diseña una máquina analítica mecánica. No se pudo construir por la complejidad de sus piezas. Aparece conceptos de: almacenamiento en tarjetas, almacenamiento en variables (memoria), almacenamiento de un conjunto de operaciones (programa).  1896 – Primera computadora real. Censo USA, tarjetas perforadas, primer sistema de codificación. Horelitz, que luego fundaría IBM.
  • 61. Primera generación 61  Décadas de 1940 y 1950.  A válvula (necesidad de refrigeración), muy lentas, cuartos enteros.  Los programas se introducían bit a bit con interruptores mecánicos, luego pasaban a la computadora vía tarjetas perforadas.  Los resultados se expresaban a través de leds.  ENIAC – Cálculo trayectorias balísticas, 1800 válvulas de vacío, 32 bits de memoria, una suma en 0,2 ms.
  • 62. Primera generación 62  1951 – ENIAC I, primera computadora para uso comercial.  Programas perforados en tarjetas, pero aún no habían nada parecido a un sistema operativo.  1953 – Aparece el primer sistema operativo. Escrito por General Motors para la IBM 701.  La necesidad original era de un programa que gestionara la E/S. Además, este SO, cuando un programa finalizaba, una rutina saltaba el flujo de ejecución al programa siguiente. Era monotarea.  Denominados sistemas de procesamiento por lotes de secuencia única.
  • 63. Segunda generación: 1955-65 63  Hardware: sustitución de válvulas por transistores.  Primeras máquinas fabricadas en serie.  El que fabrica la computadora ya no es el usuario.  Muy grandes, cuartos especiales, temperatura.  Job sequencing: Al finalizar un trabajo se lanza otro en forma automática, sin necesidad de monitoreo ni intervención del operador.  Se gana en eficiencia de uso del sistema al aparecer los sistemas de procesamiento por lotes (batch).
  • 64. Sistemas de proceso por lotes (batch). 64  Antes, la forma de utilizar los sistemas era:  Se escribe el programa en papel.  Se perfora el programa en tarjetas, con una máquina especial.  Se ponen todas las tarjetas en la computadora para la ejecución.  Por ejemplo, si se precisa el compilador Fortran, o alguna biblioteca, se incluyen también esas tarjetas.
  • 65. Sistemas de proceso por lotes 65  Con los sistemas batch:  Se pasan varios programas de tarjeta a una cinta (con una computadora que haga eso eficientemente).  La cinta resultado es la entrada de otra computadora (que realiza cálculos eficientemente), que es donde corren los programas.  La salida de esa ejecución se envía a una cinta, y otra máquina manda la salida a la impresora.  Un sistema operativo de esta época era, por ejemplo, el Fortran Monitor System.  Los usuarios no están en el centro de cómputos mientras se ejecutan sus programas. Los programas debían esperar, y si ocurrían errores (incluso sintácticos), había que repetir todo este proceso tan lento.
  • 66. Sistemas de proceso por lotes 66  Aparece el concepto de buffering: consiste en solapar las operaciones de entrada/salida con la computación del proceso.  Así, se aprovecha mejor la CPU.  En hardware, la innovación que posibilitó el buffering fue que los procesadores tienen registros e instrucciones propios para la comunicación entre CPU y canales controladores de entrada/salida.  El proceso en ejecución solicita una operación de E/S (que es lenta). El controlador la hace, y mientras ese proceso sigue, hasta que, vía una interrupción, el controlador avisa que terminó.  Esta es una primera forma de multitarea.
  • 67. Sistemas de proceso por lotes 67  Estos dispositivos periféricos (algunos realizan la E/S por interrupciones):  Lectoras de tarjetas.  Perforadoras de tarjetas.  Impresoras.  Unidades de cinta.  Unidades de disco.  El desafío era usar estos recursos eficientemente, y en particular el recurso procesador al interactuar con ellos.  En definitiva es importante no tener procesador ocioso.
  • 68. Multiprogramación 68  Cuando una tarea utilizaba el procesador, otras podían usar los dispositivos de E/S.  La mejor forma de usar el tiempo de CPU, es que, en un momento dado, el sistema ejecute no una tarea, sino un conjunto de tareas.  En esto se basa el concepto de multiprogramación: varias tareas se encuentran simultáneamente en memoria principal, y el procesador se conmuta de una tarea a otra buscando su avance a medida que requieren uso de los dispositivos periféricos.
  • 69. Tercera generación: 1965-70 69  Innovación en hardware: aparecen circuitos integrados (a baja escala).  Aparece la primer minicomputadora: PDP-8 (antecesoras de las Digital VAX).  Aparece la familia de computadoras de IBM, System/360 (1964). 16 Kb. RAM, 300.000 ops./seg. Primera serie que busca unificar máquinas científicas y comerciales. Costo del orden del millón de dólares.  La siguió la serie 370 y luego 4300 y 30X0.  Hardware compatible dentro y entre las series IBM (no así en las PDP por ejemplo).
  • 70. OS/360 70  El IBM 360, tiene un sistema operativo, OS/360.  Sistema operativo muy grande, millones de instrucciones Assembler, muchos bugs.  Se arreglaban algunos bugs y surgían otros.  Aparecen algunas ideas de ingeniería de software, al tratarse lo relativo al desarrollo de programas grandes.  Multiprogramación:  Mientras un proceso espera E/S, otro toma la CPU.  Memoria dividida en áreas, asignadas a diferentes procesos.  Mecanismos de protección de memoria.
  • 71. Spooling 71  Las computadoras de la tercera generación tenían almacenamiento secundario, no volátil, basado en:  Cintas: acceso secuencial, se agregan datos al final.  Discos: acceso aleatorio, se puede modificar un archivo “por la mitad”.  Así, siempre que se termina de ejecutar un trabajo, el SO puede cargar uno nuevo del disco y comenzar a ejecutarlo.  También esto permite spooling, para el manejo de colas de impresión, y para la salida.  Spool=Simultaneous peripheral operation on line.
  • 72. Spooling 72  Si un proceso va a imprimir, no manda directamente a la impresora sino a un archivo.  Luego se imprime desde dicho archivo.  Si varios procesos producen salidas a impresora, entonces todos sacan su salida a disco, y luego de ahí a la impresora.  Aparece la cola de impresión.  Así, se comienza a aprovechar mejor un recurso caro como lo es la CPU, al liberarlo de atender dispositivos lentos.
  • 73. Tiempo compartido 73  Aún no se trabajaba de la forma más eficiente.  Los programas entregaban las tarjetas al operador, si había errores de compilación, había que cambiar algunas tarjetas y reiniciar el proceso.  Surgen las máquinas de tiempo compartido (time sharing).  Varios usuarios utilizan al mismo tiempo la computadora, en principio compitiendo (más que compartiendo) por sus recursos.  Así, los sistemas operativos podían atender a varios usuarios interactivos, que se comunican con el computador a través de terminales en línea.
  • 74. Tiempo compartido 74  Un gran número de usuarios pueden trabajar simultáneamente en forma interactiva.  De alguna forma, se ofrece a cada usuario la ilusión de que dispone de el sistema para él.  Los sistemas de tiempo compartido de los años 60, trabajaban también en modo de proceso por lotes y con aplicaciones de tiempo real.  Los sistemas de tiempo real dan respuestas en tiempos mínimos preestablecidos. Ejemplo: sensores de estabilidad en un avión.  En general son usados por debajo de su capacidad, a fin de asegurar esos tiempos mínimos, y eso explica su alto costo.  En los sistemas de tiempo real, la multiprogramación debe ser controlada de acuerdo a restricciones de tiempo y prioridades.
  • 75. Tiempo compartido 75  En 1961 aparece el CTSS, sistema operativo time sharing, desarrollado por el MIT. También el TSS de IBM. TSS=Time Shared System.  Otros sistemas de tiempo compartido:  Multics del MIT, sucesor de CTSS, antecedente de Unix. Primer SO que intentó escribirse en un LP de alto nivel (PL/I).  CP/CMS, antecesor del VM de IBM.  Todos estos eran sistemas de tiempo compartido, permitían compartir programas y datos, y mostraron el valor de la computación interactiva en los ambientes de desarrollo de programas.  El tiempo de retorno (tiempo entre introducción de una tarea y recepción de su resultado) bajó a segundos.
  • 76. Tiempo compartido 76  El usuario podía introducir programas, compilarlos, corregir errores (sintácticos), recompilar hasta librarlo de errores, ejecutarlo, depurarlo (errores semánticos) hasta producir la versión final.  Esta modalidad de proceso de desarrollo es muy similar a la actual. Notar como se llega a la misma gracias a los progresos en los sistemas operativos.  Los sistemas operativos comienzan a ser vistos como ambientes de trabajo.
  • 77. Multiprogramación 77  Estos sistemas permitían trabajar con varios procesos simultáneos en ejecución.  El procesador va turnando la ejecución de partes de cada uno.  El cambio de un proceso a otro se logra gracias a las interrupciones.  Aparecen los mecanismos de protección de memoria de modo de que coexistan varios procesos en ejecución.
  • 78. Memoria virtual 78  El concepto de memoria virtual ya estaba presente en TSS, Multics y CP/CMS.  Así, los programas pueden usar más memoria de la que físicamente el sistema proporciona.  Esto se logra combinando memoria RAM y disco.  Así, los programadores dejaron de preocuparse por los procedimientos y trucos para que un programa entrara completamente en memoria, concentrándose en el problema en sí.
  • 79. Ingeniería de software 79  Los programas en general, y los sistemas operativos en particular, comenzaron a resolver situaciones cada vez más complejas.  Así, crecieron en tamaño y complejidad.  Comenzaron a aparecer versiones que corregían errores de otras versiones, y en ellas aparecían nuevos.  La necesidad de producir software confiable, fácil de mantener, comprensible, etc. dieron origen a la ingeniería de software.  Con esta disciplina se reconoce que todo software es producto de un proceso de desarrollo.
  • 80. Proceso de desarrollo de software 80  Controlando la calidad en el proceso de desarrollo, se logra dar calidad al producto del mismo.  Aparecen técnicas de project management aplicadas a los proyectos de desarrollo de software.  En general, se agregan herramientas para lograr un PDS estructurado, predecible, disciplinado.  De alguna manera se sentaron bases firmes para el desarrollo de programas grandes, y en particular, sistemas operativos más complejos.
  • 81. Origen de Unix 81  En 1969, fracasa el proyecto Multics de Bell y General Electric.  Multics = Miltiplexed Information Computer Service.  Se trataba de un ambicioso proyecto de sistema operativo grande, multitarea y multiusuario.  Primera vez que se intentó usar un LP de alto nivel en la codificación de un SO (PL/I).  En Bell, Thompson y Ritchie escribieron, sobre una PDP-7 un juego llamado Space Travel.  Para éste, Thompson escribió un ambiente de trabajo para esa computadora, llamado Unics (U por Uniplexed).
  • 82. Origen de Unix 82  Luego, se pasó a una versión de 16 Kb. sobre un PDP-11.  Luego se desarrollaron el lenguaje B (Thompson) y el lenguaje C (Ritchie).  Luego se reescribió gran parte del Unix en C.  Con un fuente abierto, y adoptado primero en ambientes académicos y luego también comerciales, Unix inició su expansión.
  • 83. Los años 70 83  Predominaron los sistemas de tiempo compartido con múltiples modos de operación: procesamiento por lotes, tiempo compartido y tiempo real.  Los computadores personales estaban en la etapa inicial de su desarrollo, que vendría de la mano del desarrollo de los microprocesadores.  Ya habían productos comerciales sólidos. Entonces, surgió el problema de comunicar sistemas.  Aparecieron protocolos estándares de comunicación: TCP/IP (Depto. de Defensa de USA), Ethernet (Xerox).  Comenzaron a surgir los primeros problemas de seguridad. Aparece la criptografía, etc.  Todo esto se traduce en nuevas necesidades para los sistemas operativos.
  • 84. Cuarta generación: 1980-90 y 84 actualidad  En hardware, se logra la integración de transistores en alta y gran escala.  Aparecen los PCs. Son similares a los minicomputadores en estructura y conceptos, pero más pequeños y más baratos.  fines 60’s – Apple con CP/M. (CP = Control Program). Diskettes.  80-81: IBM lanza el primer PC. Procesador Intel 8086. Sistema operativo DOS de Microsoft.  DOS = Disk Operating System.  1970 – Xerox. Antecedentes de manejo a través de íconos. Luego Mac OS (Apple), OS/2 (IBM) y Windows (Microsoft).
  • 85. Redes 85  Idea: Compartir recursos.  Una red es un conjunto de computadoras autónomas interconectadas.  Se lograron redes cuya potencia de cómputo es comparable a las de los mainframes que predominaron en los años 1970s.  Ventajas frente a los mainframes:  Ambos comparten recursos.  En la red no se compite por los recursos críticos CPU y memoria.  Permiten administración centralizada.  La red implica una inversión escalable.  Sistemas operativos distribuidos: trabajan sobre una red, pero ocultan al usuario la presencia de la misma. Para el usuario es transparente en qué sistema de la red se ejecutan sus órdenes, eso lo resuelve el sistema operativo.
  • 86. Redes 86  Con las redes aparecieron nuevas herramientas de comunicación.  Aparecen redes de área local y de área extensa, resultantes de la interconexión de las primeras.  Aparece la red Internet (70’s).  Crecen los requerimientos de los sistemas operativos en cuanto a dar soporte a múltiples usuarios, permitir el uso de redes y permitir los niveles de seguridad y auditoría necesarios.
  • 87. Redes 87  Con el desarrollo de las redes aparecen nuevas posibilidades y problemas:  Publicación de bases de datos.  Distribución de bases de datos.  Protección de accesos.  Auditoría de accesos.  Ataques (hackers).  Aplicaciones de red.  Herramientas de publicación y de comunicación.  Aplicaciones cliente/servidor.  Transmisión de datos en tiempo real (imágenes, etc.)  Comunicación entre distintas plataformas.
  • 88. Los desafíos en arquitectura y sistemas 88 operativos  Conectividad  Sistemas abiertos.  Paralelismo.  Sistemas distribuidos.  Mejoramiento de la interfaz con el usuario.
  • 89. Sistemas operativos de los últimos años 89  La familia Microsoft:  MS-DOS  Windows 3.X  Windows 95/98/ME  Windows NT / 2000 / XP  La familia Unix:  Unix SVR4, Unix BSD, Solaris, AIX, SCO Unix, HP Ux, Irix, Linux.  Otros: OS/2, Mac, VM, etc.
  • 90. Clasificaciones 90  Proceso o tarea: es un programa en ejecución.  Sistema operativo:  Monotarea: sólo permite un proceso en ejecución a la vez.  Multitarea: permite la ejecución simultánea de varios procesos.  Sistema operativo:  Monousuario: no reconoce la existencia de diferentes usuarios.  Multiusuario: reconoce la existencia de diferentes usuarios y arbitra el acceso de los mismos a los recursos del sistema.
  • 91. El núcleo o kernel 91  Sus funciones principales:  Schedullingde procesos  Manejo de memoria  Gestión de file systems
  • 92. Control de lectura 92  A esta altura ya debe haber leído los capítulos 1 y 2 de Deitel o sus equivalentes en los otros textos.