301402

download 301402

of 336

Transcript of 301402

  • 5/21/2018 301402

    1/336

    1

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA

    ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENEIRIAS

    PROGRAMA DE INGENIERIA DE SISTEMAS

    301402 – SISTEMAS OPERATIVOS

    YHON PINZON SALAS

     Actualización: JAIME JOSE VALDES BEJUMEA(Director Nacional)

    WILLIAM CASTEBLANCO Acreditador 

    RIOHACHA – LA GUAJIRAJulio de 2013

  • 5/21/2018 301402

    2/336

    2

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    ASPECTOS DE PROPIEDAD INTELECTUAL Y VERSIONAMIENTO

    El presente módulo fue diseñado en el año 2005 por la Ing. PILAR Alexandra Moreno, docente de la UNAD, y ubicada en el CEAD de Duitama, laIng. Moreno es Ingeniero de Sistemas, y Esp. en Pedagogía para el desarrollo del

    aprendizaje autónomo, se ha desempeñado como tutor de la UNAD en variosperiodo académicos, actualmente es la coordinadora zonal de medios ymediaciones pedagógicas en la zona.

    El presente módulo ha tenido una actualización, la que se presenta en elperiodo 2009-2 en su primera versión, esta fue realizada por el Ing. Yhon Pinzonquien ha sido tutor de la UNAD desde el año 2002, en el CEAD La Guajira y quese desempeña actualmente como director del cuso a nivel nacional.

    Las actualizaciones del material se dan en la Unidad 1, al suprimir uncapitulo que se trabaja en la unidad 2, en la administración de procesos, y en la

    unidad 3, al suprimir el capitulo de introducción a las redes, ya que este sedesarrollo en el curso electivo del mismo nombre y en los cursos específicos delperfil de redes que se ven en el ciclo profesional. De la misma forma el moduloesta diseñado con la estructura establecidas por la VIMMEP, en el desarrollo delecciones, lo que facilita el aprendizaje por parte del estudiante.

    Este mismo año (2009) el Ing. JAIME VALDES BENJUMEA, tutor del CEADLa Guajira, apoyó el proceso de revisión de estilo del módulo y dio aportesdisciplinares, didácticos y pedagógicos en el proceso de acreditación de materialdidáctico desarrollado en el mes de JULIO de 2009.

  • 5/21/2018 301402

    3/336

    3

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    INTRODUCCIÓN

    Este módulo está diseñado para aquellas personas interesadas en abordar temáticas relacionadas con el campo de los sistemas operativos: teoría yaplicación. Trata de acercarlas a los aspectos más importantes que encierran los

    sistemas operativos, ubicando características básicas tanto a nivel de PC como anivel de infraestructura de red.

    Por ello y para ello, se presenta el módulo “Sistemas Operativos”, como unaalternativa de solución para esa búsqueda de enfoques multidisciplinarios, y por lotanto, aplicables a cualquier sistema que se desee analizar o implementar.

     Así, teniendo en cuenta que en absolutamente cualquier área de la ingeniería desistemas en la que nos desempeñemos o queramos desempeñarnos vamos atrabajar con sistemas operativos: implementandolos, administrándolos,diseñandolos, desarrollandolos, utilizandolos, enseñandolosy resolviendo

    problemas que ahora serán más fáciles de solucionar, pues uno de los objetivosprimordiales es el de estudiar a fondo su estructura para eliminar cualquier complejidad que tengamos con respecto al tema.

    El sistema operativo es una parte fundamental de cualquier sistemacomputacional, lo que nos lleva a confirmar, aún más, la importancia de suconocimiento y manejo, y más en nuestra formación como ingenieros de sistemas.

    Es bueno aclarar que no es un módulo orientado hacia la guía e instalación dealgunos sistemas operativos. Considerando que estamos trabajando en el ciclo

    profesional, no se torna relevante, por varias razones:

    - Ahora con la gama de asistentes gráficos disponibles para la instalación,este proceso se torna en tarea sencilla, hasta para un usuario novato.

    - Se ha pasado por una serie de cursos en los que ya han trabajado, lainstalación de sistemas operativos, por lo menos, para computadorespersonales.

     Al contrario, es un módulo que brinda toda la documentación e información relativaa las características, estructura, diseño, componentes que ayudan a conocer de

  • 5/21/2018 301402

    4/336

    4

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    forma integral un sistema operativo, para que podamos administrarlo de la mejor manera y sacar el máximo provecho a todas sus capacidades e incluso podamos

    enfrentarnos al reto de diseñar o adecuar nuestro propio sistema operativo.

    Con el fin de afianzar el aprendizaje de los contenidos, así como el de lashabilidades, a lo largo de los capítulos se incluyen ejercicios y/o ejemplos quesirven como activación cognitiva, para ubicar a los interesados en el contexto adesarrollar, también en algunos casos para reforzar o reafirmar una temática y alfinal de cada capítulo se encuentran ejercicios que servirán para la transferenciade los contenidos desarrollados a las diferentes prácticas de laboratorios ó asituaciones cotidianas o laborales y a sus intereses tanto profesionales comopersonales.

    Los ejercicios propuestos vienen diseñados para que se resuelvan de maneraindividual, como actividad complementaria o para resolverlo en grupos de trabajo yasí profundizar en los contenidos relacionados y para desarrollar habilidades comocomunicación oral, comunicación escrita y trabajo colaborativo.

    Este módulo es el resultado de un trabajo extenso de consulta, investigaciónbibliográfica y sistematización de experiencias, el cual sirvió para la consolidaciónde la información, contenidos temáticos y ejercicios con el fin de brindar, además,una herramienta de consulta apropiada al curso académico, ala metodología de

    trabajo y a las necesidades que pretende cubrir cada persona.Por ello en cada unidad didáctica se encuentra una sección bibliográficarecomendada, incluyendo direcciones de Internet con las que se puede ir más alláen el logro de los objetivos propuestos.

    El desarrollo temático de los capítulos contempla, intrínsecamete, la articulaciónde cada una de las fases del proceso de aprendizaje como son: reconocimiento,profundización y transferencia, logrando una coherencia metodológica con la guíade actividades propuesta.

    Las unidades didácticas que lo conforman son tres, equivalentes al número decréditos asignados al curso académico. La primera y última unidad didácticaposeen cuatro capítulos cada una, y la segunda unidad consta de cinco capítulos.

    La primera unidad, Teoría de los sistemas operativos, está orientado a acercar alinteresado en los conceptos básicos y definición de lo que es un sistemaoperativo. En esta unidad se desarrollan capítulos como: Principios de lossistemas operativos, Características de los sistemas operativos y arquitecturacliente/servidor. Todos ellos para introducirnos al mundo de los sistemas

  • 5/21/2018 301402

    5/336

    5

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    operacionales, su historia, evolución, clasificación, estructura e infraestructura deaplicación.

    Ya revisadas las bases teóricas y funciones principales, estamos listos paracontinuar el tema de cómo gestionan y administran los diferentes recursos delsistema computacional, tema que le corresponde a la Unidad Didáctica 2.

     Administración de Recursos. Dichos recursos los aborda el curso así: En el cualestudiaremos la administración de los procesos, la administración de la memoria,la administración de dispositivos, la administración de archivos y directorios; y por último y como parte fundamental de un SO está la protección y seguridad.

    Con esta temática terminamos de conocer a fondo cómo es un SO, cómo está

    organizado interna y externamente, para así poder brindar el adecuado soporte acualquier sistema monosusuario o multisusuario que se nos presente.

     Ahora queda solamente aplicar toda la fundamentación teórica desarrollada en lasdos unidades iniciales a los principales sistemas operativos del mercado. De estose encarga la unidad didáctica 3. Principales sistemas operativos, que realiza unaclasificación de la siguiente manera: En primer lugar los sistemas operativos de lafamilia Windows, en segundo lugar el sistema operativo UNIX/LINUX y en laagrupación Otros sistemas operativos se habla de sistemas como novell, OS/2 yVMS.

    Este módulo fue desarrollado tomando como referencia documentación y estudiosrealizados de los diferentes sistemas operativos, en cada una de las unidades, serelacionan las fuentes bibliográficas específicas sobre las cuales se trabajó.

     Además es importante recordar, que este módulo debe ir articulado con lasdiferentes actividades planteadas en la guía didáctica, pues es un cursometodológico, es decir tiene un componente de aplicación y trabajo en grupo.

    Por último, y como siempre, recomiendo que para facilitar el aprendizaje esimportante consultar la bibliografía descrita, utilizar la biblioteca virtual y el acceso

    a Internet, con esto se está potenciando la capacidad de investigación y de autogestión para llegar al conocimiento, según sean los logros y/o debilidadesencontradas en cada uno de los pasos del proceso a seguir.

    Recuerden que el éxito del proceso sólo depende de cada uno, de sus intereses yde sus necesidades.

  • 5/21/2018 301402

    6/336

    6

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    OBJETIVOS

    1. Fundamentar, desde un principio, la estructura, funcionamiento yadministración de recursos de los sistemas operativos, como base para elanálisis y diseño de sistemas de comunicación.

    2. Relacionar los principios, estructuras, aplicación y tipos de sistemasoperativos con las características y funcionamiento de algunos de losprincipales sistemas operativos.

    3. Conocer e identificar de manera clara los conceptos, elementos,características, propiedades de los sistemas operativos y su relación con elcampo de aplicación, teniendo en cuenta la integración de elementostecnológicos y organizacionales.

    4. Determinar y sustentar la aplicación de los sistemas operativos según las

    características, ventajas de instalación y administración de recursos.

  • 5/21/2018 301402

    7/336

    7

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    INDICE DE CONTENIDO

    Pag.

    UNIDAD 1. TEORIA DE LOS SISTEMAS OPERATIVOS   14

    Introducción   14

    Justificación   14

    IntencionalidadesFormativas   15

    Denominción de Capitulos   15

    Capitulo 1. Principios de los Sistemas Operativos   16

    Introducción 16

    LECCION 1. Historia y Evolución de los Sistemas Operativos 16

    LECCION 2. Definiciones y Funciones de los Sistemas Operativos 22

    LECCION 3. Sistema Computacional 26

    LECCION 4. Protección en Sistemas Computacionales 34

    LECCION 5. Conceptos de Sistemas Operativos 37

    Capítulo 2. Características de los sistemas operativos   46

    Introducción 46

    LECCION 6. Tipos de Sistemas Operativos 46

    LECCION 7. Sistemas operativos por los modos de explotación 49

    LECCION 8. Sistemas operativos por los servicios ofrecidos y por la Forma de ofrecer losservicios 53

    LECCION 9. Estructura de los Sistemas Operativos 58

    LECCION 10. Núcleos del Sistema Operativo 62

    Capítulo 3. Arquitectura cliente servidor    66

    Introducción 66

    LECCION 11. Antecedentes y Definicion de la Arquitectura Cliente/Servidor 66

    LECCION 12. Componentes y Característica de la Estructura Cliente/Servidor 71LECCION 13. Middleware robusto y escalable en soluciones Cliente/Servidor 76

    LECCION 14. Analisis de las Variantes de la Arquitectura Cliente/Servidor. 80

    LECCION 15. Condiciones para la implantación del Modelo Cliente Servidor 85

    Actividades de Autoevaluacionde la Unidad 1   91

    Fuentes Documentales de la Unidad   92

    UNIDAD 2. ADMINISTRACION DE RECURSOS   94

    Introducción   94Justificación 94

  • 5/21/2018 301402

    8/336

    8

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    IntencionalidadesFormativas   95

    Denominción de Capitulos   95

    Capítulo 1. Administración de los procesos   96

    Introducción 96

    LECCION 1. Introduccion a los procesos 96

    LECCION 2. Comunicacion Entre Procesos 106

    LECCION 3. Sincronizacion de Procesos 110

    LECCION 4. Planificacion de Procesos 115

    LECCION 5. Algoritmos de Planificacion de Procesos 121

    Capítulo 2. Administración de la memoria y de Dispositivos   127

    Introducción 127

    LECCION 6. Estructura General y Manejo de la Memoria. 127

    LECCION 7. Multiprogramacion en Memoria Real y Memoria Virtual 129

    LECCION 8. Algoritmos de Reemplazo de Paginas 146

    LECCION 9. Administracion de Dispositivos de Entrada y Salida 152

    LECCION 10. Conceptos de Dispositvos de Entrada y Salida 157

    Capítulo 3. Administración de archivos y Proteccion y Seguridad en los sistemasoperativos   162

    Introducción 162

    LECCION 11. Sistema de Archivos y Directorios 162

    LECCION 12. Estructura de Archivos y Directorios 169LECCION 13. Tipos de sistemas de archivos, Protección de Ficheros y Administración deEspacio Libre 177

    LECCION 14. Proteccion 184

    LECCION 15. Seguridad 188

    Actividades de Autoevaluacionde la Unidad 2   196

    Fuentes Documentales de la Unidad   197

    UNIDAD 3. PRINCIPALES SISTEMAS OPERATIVOS   199

    Introducción   199

    Justificación   199

    IntencionalidadesFormativas   200

    Denominción de Capitulos   200

    Capítulo 1. Sistemas operativos Familia Windows   201

    Introducción 201

    LECCION 1. Sistema Operativo W indows 95 y W indows 98 201

    LECCION 2. Sistema Operativo Windows 2000 y 2003 210

    LECCION 3. Sistema Operativo Windows XP 220

    LECCION 4. Sistema Operativo Windows NT 228LECCION 5. Sistema Operativo Windows Vista e Instalacion de Sistema Operativos 240

  • 5/21/2018 301402

    9/336

    9

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Capítulo 2. Sistema operativo UNIX/LINUX   253

    Introducción 253

    LECCION 6. Historia, Arquitectura, Versiones y Caracteristicas de UNIX y LINUX 253

    LECCION 7. Instalacion del Sistema Operativo 267

    LECCION 8. Interfaz del Usuario 279

    LECCION 9. Estructura de Archivos y Administracion del sistema 288

    LECCION 10. Montando el sistema de ficheros e instalación de impresoras 303

    Capítulo 3. Otros sistemas operativos   314

    Introducción 314

    LECCION 11. Sistema Operativo Novell Netware 314

    LECCION 12. Características de las Versiones del Sistema Operaivo NetWare 316

    LECCION 13. Administracion de los Recursos en el Sistema Operativo NetWare 318

    LECCION 14. Sistema OS/2 323

    LECCION 15. Sistema de Memoria Virtual 328

    Actividades de Autoevaluacionde la Unidad 3   333

    Fuentes Documentales de la Unidad   334

  • 5/21/2018 301402

    10/336

    10

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    LISTADO DE TABLAS

    Pag.

    Tabla 1. Versiones de los sistemas operativos   18

    Tabla 2. Evolucion de los sitemas operativos  21

    Tabla 3. Etapas del camino de ejcución de un programa   135

    Tabla 4. Implementación de los mecanismos de asignación de memoriavirtual   136

    Tabla 5. Algortimos de Selección de paginas de memoria   140

    Tabla 6. Ejemplo Algoritmo de bits adicionales de referencia   152

    Tabla 7. Tipos de Archivos   164

    Tabla 8. Tabla de registros de asignación continúa de bloques   176

    Tabla 9. I-nodo de UNIX   177

    Tabla 10. Codificacion RSA  194

    Tabla 11. Requisitos de servidores Windows 2003   220

    Tabla 12. Paralelo de características de Versiones Windows XP   227

    Tabla 13. Lista los nombres de diversos manejadores para Linux   271

    Tabla 14. Variables de entorno más comunes   294

    Tabla 15. Tipos de sistemas de ficheros Linux   305

  • 5/21/2018 301402

    11/336

    11

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    LISTADO DE GRÁFICOS Y FIGURAS   Pag.

    Gráfica 1. Tecnología de discos 21

    Gráfica 2. Concepción de sistema operativo 24

    Gráfica 3. Estructura de un sistema computacional 27

    Gráfica 4. Sistema de entrada/salida E/S (Input-output I/O) 28

    Gráfica 5. Interrupciones de Hardware 30

    Gráfica 6. Acceso directo a memoria 31

    Gráfica 7. Organización de un disco 32

    Gráfica 8. Información de un sector 33Gráfica 9. El cilindro 33

    Gráfica 10. Jerarquía de memoria 34

    Gráfica 11. Protección de memoria 36

    Gráfica 12. Control de la protección de memoria 37

    Gráfica 13. Flujo de una llamada al sistema 38

    Gráfica 14. Estructura monolítica 45

    Gráfica 15. Estructura por capas. 47

    Gráfica 16. Máquina virtual 48

    Gráfica 17. Cliente-servidor 47

    Gráfica 18. Cinco niveles arquitectura/cliente servidor 74

    Gráfica 19. Distribución cliente/servidor 75

    Gráfica 20. Arquitectura cliente/servidor con interface común 83

    Gráfica 21. Arquitectura cliente/servidor con gateway común 84

    Gráfica 22. Arquitectura cliente/servidor con protocolo común 85

    Gráfica 23. Estados de un proceso 98

    Gráfica 24. Estados de un proceso: Modos kernel y usuario 100

    Gráfica 25. Jerarquía de procesos 101Gráfica 26. Conmutación y la PCB 104

    Gráfica 27. Estructura de un proceso 105

    Gráfica 28. Recursos de un thread 106

    Gráfica 29. Tarea con múltiples threads 106

    Gráfica 30. Interacción productor consumidor 108

    Gráfica 31. Direccionamiento asimétrico- Cliente/servidor 108

    Gráfica 32. Sincronización Rendezvous 109Gráfica 33. Sincronización con buffers 110

  • 5/21/2018 301402

    12/336

    12

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Gráfica 34. Ejemplo de variables compartidas 111

    Gráfica 35. Ejemplo de sección crítica 112

    Gráfica 36. Implementación del semáf oro 113

    Gráfica 37. Implementación de semáforo para la sincronización 114

    Gráfica 38. Implementación de semáforo en productor/consumidor 114

    Gráfica 39. Productor/consumidor: sincronización completa 115

    Gráfica 40. Estructura de una cola 118

    Gráfica 41. Cuándo se itinera 119

    Gráfica 42. Orden de peluquería 121

    Gráfica 43. El más corto primero 122

    Gráfica 44. Por prioridad 123Gráfica 45. Round Robin 124

    Gráfica 46. Colas multinivel 125

    Gráfica 47. Colas multinivel realimentadas 126

    Gráfica 48. Panorama del manejo de memoria 128

    Gráfica 49. Organización simple de memoria 129

    Gráfica 50. Proceso enlace de direcciones en memoria 135

    Gráfica 51. Estrategia de mejor ajuste 137

    Gráfica 52. Estrategia de primer ajuste 137

    Gráfica 53. Estrategia de peor ajuste 138Gráfica 54. Traducción de direcciones de memoria 139

    Gráfica 55. Traducción de direcciones de memoria en segmentación 142

    Gráfica 56. Entrada tipica de una tabla de páginas 143

    Gráfica 57. Traducción en la segmentación – paginación 145

    Gráfica 58. Ejemplos de dispositivos 154

    Grafica 59. Bus 157

    Gráfica 60. Organización sistema Pentium. Buses 157

    Gráfica 61. Coordinación de la interacción 158

    Gráfica 62. Manejo de interrupciones 159

    Gráfica 63. Hardware DMA 160

    Gráfica 64. Acceso secuencial 165

    Gráfica 65. Acceso directo 165

    Gráfica 66. Acceso indexado 166

    Gráfica 67. Ejemplo de organización 166

    Gráfica 68. Directorio de un nivel 167Gráfica 69. Directorio de dos niveles 167

  • 5/21/2018 301402

    13/336

    13

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Gráfica 70. Directorio de árbol 168

    Gráfica 71. Grafo cíclico 168

    Gráfica 72. Organización de un disco 170

    Gráfica 73. Organización de un sistema de archivos 170

    Gráfica 74. Estructura de la tabla de archivos 171

    Gráfica 75. Asignación contigua de espacio 172

    Gráfica 76. Asignación de espacio enlazada 173

    Gráfica 77. FAT 174

    Gráfica 78. Asignación de espacio indexada 174

    Gráfica 79. Lista enlazada de bloques libres 183

    Gráfica 80. Dominios compartidos 185Gráfica 81. Matriz de acceso 187

    Gráfica 82. Matriz de acceso con dominios como objetos 188

    Gráfica 83. Codificación RSA 194

    Gráfica 84. Arquitectura Windows 95 - Fuente: www.club.telepolis.com 203

    Gráfica 85. Componentes de Windows 98 205

    Gráfica 86. Recursos que necesita el sistema para VM 207

    Gráfica 87. Ejemplo de árbol de Hardware de Windows 98 209

    Gráfica 88. Arquitectura de Windows 2000 211

    Gráfica 89. Estructura del sistema operativo Windows 2003 Server 216Gráfica 90. Arquitectura Windows NT 229

    Gráfica 91. Arquitectura de Windows NT con Advanced Server 234

    Gráfica 92. Arquitectura del sistema UNIX 255

    Gráfica 93. Arquitectura Sistema Operativo Linux 258

    Gráfica 94. Subsistema de ficheros 261

    Gráfica 95. Subsistema de red 262

    Grafico 96. Ventana de Configuración de XConfigurator 280

    Grafico 97. Panel de configuración de X-Windows 281

    Grafico 98. Gestor de Ventana GNOME 282

    Grafico 99. Entorno de Trabajo GNOME 283

    Grafico 100. Entorno de Trabajo en KDE 284

    Grafico 101. KDE Control Center 286

    Grafica 102. Árbol de Dirección. 290

    Grafico 103. Servidor de impresión 307

    Gráfica 104. Sistema de archivos de VMS 329

  • 5/21/2018 301402

    14/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    UNIDAD 1

    Nombre de la Unidad   TEORIA DE LOS SISTEMAS OPERATIVOSIntroducción Aunque en este nivel de estudios, se supone que ya

    hemos visto, trabajado y explotado algunos de lossistemas operativos del mercado, muy seguramente noconocemos a fondo la teoría en la cual se basa su diseñoy desarrollo. Y esto aunque a veces no lo reconocemos es

    fundamental a la hora de “aprovechar” al máximo losrecursos de un sistema computacional cualquiera.

    En esta unidad se trabajaran 3 capitulos en donde seexplica qué son los sistemas operativos, qué hacen ycómo están diseñados y construidos. Se explica cómo seha desarrollado el concepto de un sistema operativo,cuáles son sus características comunes y lo que hace elsistema operativo para el usuario y para el administrador del sistema de cómputo y su utilidad y funcionalidad parala arquitectura de redes.

    Esta unidad es apropiada para los estudiantes que seinician en esta materia y para aquellos que son “expertos”pero desean saber más acerca de los detalles internos delos mismos.

    Justificación “En el mundo de la informática actual existe una grandiversidad de disciplinas de las cuales unas sonfundamentales y deben ser conocidas y en ocasionesdominadas por aquellas personas que han hecho de estemundo su profesión o afición.

    En este sentido, los sistemas operativos comocomponentes del software de las computadoras son unaparte fundamental debido a que a través de ellos sesimplifica y rentabiliza el trabajo de una forma asombrosa.Estos, cada día más evolucionados, permiten que un grannúmero de usuarios estén trabajando con una mismamáquina sin que apenas se den cuenta de ello.

    “Comprender el sistema operativo es entender elfuncionamiento de todo el sistema de cómputo, porquedicho sistema administra todas y cada una de las piezas

    14

  • 5/21/2018 301402

    15/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    del hardware y el software, incluyendo el control de quiénpuede utilizar el sistema y de qué manera. En síntesis es

    el patrón.”

    IntencionalidadesFormativas

    Denominación decapítulos

    De esta forma, se conceptualizarán una serie dedefiniciones y teorías que son indispensables en el uso yadministración de sistemas operativos y que tambiénsirven como punto de partida para otras aplicaciones ycampos que el estudiante desarrollará a lo largo de sucarrera profesional.Direccionar al estudiante para que relacione principios,estructuras, aplicación y tipos de sistemas operativos consus características y funcionamiento, a través del

    desarrollo y sustentación de un proyecto práctico en grupoen donde se presente una propuesta de implementacióndel sistema operativo en una organización del entorno.

    Direccionar al estudiante a que conozca e identifique demanera clara los conceptos, elementos, características,propiedades de los sistemas operativos y su relación conel campo de aplicación, a través del análisis de lossistemas operativos más comerciales y cercanos a suentorno que involucre la integración de elementostecnológicos y organizacionales.

    Capitulo 1. Principios de los Sistemas OperativosCapítulo 2. Características de los sistemas operativosCapítulo 3. Arquitectura cliente servidor 

    15

  • 5/21/2018 301402

    16/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNADESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIACONTENIDO DIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    16

    CAPÍTULO 1. PRINCIPIOS DE LOS SISTEMAS OPERATIVOS

    INTRODUCCION

    En este capitulo estudiaran los conceptos fundamentales de los sistemasoperativos así como las características y funciones, de igual forma se analizarácronológicamente la historia y evolución de los sistemas operativos y algunosconceptos claves e importantes para el desarrollo del curso.

    Tenga en cuenta que la estructura de cada capitulo esta dada por lecciones que asu vez contienen el desarrollo del tema central del capitulo, estas se plantearanteniendo en cuenta las interfaces de aprendizaje para mayor comprensión yaprendizaje por parte del estudiante.

    LECCION 1. Histo ria y Evolu ción de los Sistem as Operativo s Reconocimiento – Saberes Previos

    Para abordar esta lección es necesario el estudio de las definiciones de SistemasOperativos, Sistemas Computacionales, y las funcionalidades y estructura de losmismos.

    Profundización

    1.1. Historia de los sistemas operativos

    Para tratar de comprender los requisitos de un S.O y el significado de sus

    principales características, es útil considerar como han ido evolucionando éstoscon el tiempo.

    Existen diferentes enfoques o versiones de cómo han ido evolucionando lossistemas operativos.

    La primera de estas vers iones podría ser esta: 

  • 5/21/2018 301402

    17/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNADESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIACONTENIDO DIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    17

    Per iodo Avance  Años 40s    Se introducen los programas bit a bit, por medio de interruptores

    mecánicos y después se introdujo el lenguaje de máquina quetrabajaba por tarjetas perforadas.

    Final es de lo s años 40 hasta la  mitad de los años 50s 

    Con las primeras computadoras, el programador interactuabade manera directa con el hardware de la computadora, noexistía realmente un sistema operativo; las primerascomputadoras utilizaban bulbos, la entrada de datos y losprogramas se realizaban a través del lenguaje máquina (bits) oa través de interruptores.

    Durante los años 50 ’s y 60’s 

     A principio de los 50’s, la compañía General’s Motors implantoel primer sistema operativo para su IBM 170. Empiezan a surgir las tarjetas perforadas las cuales permiten que los usuarios (queen ese tiempo eran programadores, diseñadores, capturistas,etc.), se encarguen de modificar sus programas. Establecían oapartaban tiempo, metían o introducían sus programas,corregían y depuraban sus programas en su tiempo. A esto sele llamaba trabajo en serie. Todo esto se traducía en pérdida detiempo y tiempos de programas excesivos.

    En los años 60’s y 70’s Se genera el circuito integrado, se organizan los trabajos y segeneran los procesos Batch (por lotes), lo cual consiste endeterminar los trabajos comunes y realizarlos todos juntos deuna sola vez. En esta época surgen las unidades de cinta y elcargador de programas, el cual se considera como el primer tipode sistema operativo.

    En los 80’s    Inició el auge de la INTERNET en los Estados Unidos de América. A finales de los años 80’s comienza el gran auge yevolución de los sistemas operativos. Se descubre el conceptode multiprogramación que consiste en tener cargados enmemoria a varios trabajos al mismo tiempo, tema principal de

    los sistemas operativos actuales.

    Los 90’s y el futuro 

    Entramos a la era de la computación distribuida y delmultiprocesamiento a través de múltiples redes decomputadoras, aprovechando el ciclo del procesador.

    Se tendrá una configuración dinámica con un reconocimientoinmediato de dispositivos y software que se añada o elimine delas redes a través de procesos de registro y localizadores.

    La conectividad se facilita gracias a estándares y protocolos de

  • 5/21/2018 301402

    18/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNADESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIACONTENIDO DIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    18

    sistemas abiertos establecidos por organizaciones como laOrganización Internacional de estándares (ISO-International

    Standard Organization), fundación de software abierto, todoestará mas controlado por los protocolos de comunicación OSI ypor la red de servicios digital ISDN.

    Tabla 1. Versiones de los sistemas operativos

    Se ha desarro llado o tra versión, la cual se ha hecho co n base a la evo luc ión del hardware: 

    Sistemas Batch simplesSistemas Batch multiprogramadosSistemas de tiempo compartido

    Computadores personalesSistemas paralelosSistemas distribuidosSistemas de tiempo real

    Tip o d e s istem a Des crip ción  Sistemas Batch Simples 

    Los primeros computadores eran grandes máquinasque se operaban desde una consola. La entrada ysalida se hacía usando tarjetas perforadas y cintamagnética. La interacción de un usuario con el sistemacomputacional no era directa:se preparaba un job que

    consistía en un conjunto de tarjetas: programa, datosy tarjetas de control.El S.O:

    Tenía una función muy simple: transferir elcontrol entre una tarea (job) y la siguiente.Residía completamente en memoria.

    Para hacer más eficiente el trabajo, los operadoresagrupaban tareas en tandas o lotes (batch).La característica más importante es la falta deinteracción entre el usuario y el sistema durante laejecución.

    Los job se preparan y entregan al sistema y despuésde un tiempo se entrega el resultado vía una lista oimpresión.La CPU pasa desocupada la mayor parte del tiempo:

    La velocidad de los elementos mecánicos:impresora y lectora es mucho más baja que laCPU.

    ¿Cómo solucionar este problema?- Tecnología de disco (Spool ing ) – Ver explicación al

    final del cuadroSistemas Batch   El Spooling mantiene una estructura de datos con

  • 5/21/2018 301402

    19/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNADESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIACONTENIDO DIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    19

    Tip o d e sis tem a Descr ip ción  Multiprogramados   todos los jobs listos para ser ejecutados en un área

    de disco.Esta estructura permite seleccionar cualquier job delconjunto. Con esta estructura es posible mejorar lautilización de la CPU.La selección de un job para su ejecución de unconjunto se denomina itineración de job (scheduling).La itineración de jobs permite la mutiprogramación.La multiprogramación aumenta la utilización de la CPUal organizar los jobs de manera tal que la CPU siempretenga algún job que ejecutar.Para esto se mantienen los jobs en memoria principal.

    El S.O. selecciona un job, lo ejecuta y cuando el jobdebe esperar por E/S, se selecciona otro job.Cuando un job necesita esperar por algún dispositivo,el sistema operativo conmuta de un job a otro. Cuandola transferencia del dispositivo termina, se vuelve al jobnuevamente

    Sistemas de tiempocompartido – Timesharing – multitarea

    Job 1

    Job 2

    T iempo

    Sistemas PC –Computadorespersonales

    Los sistemas batch multiprogramados permiten usar recursos eficientemente, pero los usuarios no puedeninteractuar con sus aplicaciones.El tiempo compartido (time sharing) o multitarea es unaextensión de la multiprogramación. La CPU ejecuta

    múltiples jobs, pero la conmutación de un job a otroocurre con una frecuencia tal que los usuarios piensanque interactúan con el programa mientras éste corre.Los primeros sistemas Batch eran completamenteinteractivos. El usuario tomaba el control completo delsistema a través de la consola.Los sistemas de tiempo compartido se desarrollaronpara proporcionar el uso interactivo de un computador a costo razonable.Cada usuario tiene al menos un programa en memoria.Un programa que se carga y ejecuta se denomina

    proceso. Cuando un proceso se ejecuta, lo hace por un tiempo corto antes que termine o necesite E/S.La entrada y salida (E/S) también puede ser interactiva.Los sistemas operativos de tiempo compartido sonmás complejos que los sistemas batchmultiprogramados. Entre otras cosas se requiereprotección especial de áreas de memoria.Los Computadores personales aparecieron en elmercado en la década del 70. El objetivo de lossistemas operativos de PC no es mejorar la eficiencia

  • 5/21/2018 301402

    20/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Tip o d e sis tem a Descr ip ción  sino su amistosidad con el usuario.

    Ejemplos son: MS-DOS, MS Windows, AppleMacintosh, OS/2La tendencia es traspasar funcionalidades de grandescomputadores a PC. Por ejemplo sistemas deprotección de archivos, memoria virtual etc..Un buen ejemplo es el sistema MULTICS desarrolladoen el MIT entre 1965 y 1970. Las ideas de MULTICSse tomaron en Bell Labs para desarrollar UNIX en1970 para computadores DEC PDP-11. En los años80, surgieron muchos sistemas tipo UNIX: W/NT,OS/2 , MAC OS y Windows XP y LINUX

    Recientemente.Sistemas paralelos   La mayoría de los sistemas computacionales actualesutiliza una sola CPU, sin embargo hay una tendenciahacia sistemas multiprocesadores.¿Qué se logra con multiprocesadores?Mayor desempeño (troughput): más trabajo por unidadde tiempo.

     Aceleramiento de tareas: cuando varios procesadorescooperan en la realización de una tarea, disminuye eltiempo de ejecución. Sin embargo la mejora dedesempeño no es lineal respecto al número de

    procesadores por el tiempo de comunicación.¿Qué es mejor, un sistema de multiprocesamiento ovarios sistemas simples?Es más económico un sistema de multiprocesadores(un disco, gabinete, fuentes de poder etc.)Mejora la confiabilidad: si las funciones se distribuyeninteligentemente, la caída de un procesador puede ser asumida por otro.

    Sistemas distribuidos   La tendencia actual es distribuir la computación entrevarios procesadores.Cada procesador tiene su memoria local. Los

    procesadores se comunican por líneas decomunicación, redes de alta velocidad o busesapropiados.Los procesadores de un sistema distribuido varían entamaño y función: microprocesadores,minicomputadores, estaciones de trabajo y grandessistemas computacionales.

    Sistemas de tiemporeal

    Los sistemas operativos de Tiempo Real se usancuando existen rígidos requerimientos de tiempo.Ejemplos:- Sistemas de Control Industrial

    20

  • 5/21/2018 301402

    21/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Tip o d e sis tem a Descr ip ción  - Monitoreo médico

    - Control de encendido de motores- Sistemas de defensaEl procesamiento se debe hacer con restricciones detiempo. En caso contrario se producen fallas.

    Tabla 2. Evolucion de los sitemas operativos

     Algunos de los anteriores sistemas se revisarán en el capítulo siguiente:Características de Sistemas Operativos – Tipos de sistemas operativos.

    Una tecnología que apareció con los sistemas de batch es: Spool ing .

    Spooling – Tecnología de discosLa introducción de la tecnología de discos entrega una solución: en vez de leer del disco y escribir a la impresora, la CPU interactúa directamente con el disco.Si la CPU necesita leer una tarjeta, lee desde un área del disco. En forma similar cuando necesita imprimir una línea, la escribe en el discoEsta forma de procesamiento se denomina Spooling (Simultaneous peripheraloperation on-line)

    Gráfica 1. Tecnología de discos1

    ObservacionesEl Spooling traslapa la entrada y salida de un job con los cálculos (CPU) de otro job.Tiene un efecto directo e importante en el desempeño ya que mantienen a la CPU y losdispositivos trabajando a su máxima velocidad.

    Transferencia - Autoevaluación

     A partir de la historia de los sistemas operativos, organice cronológicamente en unárbol, la evolución que se dio en el desarrollo de sistemas operativos, recuerdeque esta, está ligada al hardware pero en esta actividad se requiere solo expresar el software básico.

    1 Ibid. Capítulo 1. p. 8

    21

  • 5/21/2018 301402

    22/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    LECCION 2. Definic ion es y Funcio nes de los Sistemas Operativo s Reconocimiento - Saberes Previos

    Reflexionemos de forma individual con respecto a:

    - Ha trabajado con algún sistema operativo?- Con cuál o cuáles?- Tiene un sistema operativo favorito? Diga cuál y porqué?- Conoce algo acerca de la estructura interna de un sistema operativo?- Conoce las funciones específica de un sistema operativo cualquiera?- Enseguida de esta reflexión aborde toda la temática y concluya.

    Profundización

    2.1Definiciones de sistema operativo

    Conceptuar el término “sistema operativo” (ó S.O como se nombra en algunaspartes del módulo) no es simple, precisamente es el objetivo primordial delmódulo. Existen diversas definiciones de lo que es un sistema operativo, pero nohay una definición exacta, es decir una que sea estándar; a continuación sepresentan algunas:

    Un sistema operativo es un programa que actúa como intermediario entre elusuario y el hardware de un computador y su propósito es proporcionar unentorno en el cual el usuario pueda ejecutar programas.

    Un sistema operativo es el código que acompaña la ejecución de cualquier aplicación.

    Un sistema operativo es un programa que dirige y administra los recursos deun sistema computacional. Provee un conjunto de cualidades que facilitan elacceso de las aplicaciones a estos recursos, buscando siempre independencia

    del hardware.

    Un sistema operativo es la parte del sistema de cómputo que administra elhardware y el software.

    Un sistema operativo es un conjunto de programas que ordenadamenterelacionados entre si, contribuyen a que el hardware de la computadora lleve acabo su trabajo correctamente.

    Un sistema operativo es el soporte lógico que controla el funcionamiento delequipo físico.

    22

  • 5/21/2018 301402

    23/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Un sistema operativo es el programa que oculta la verdad del hardware al

    programador y presenta una vista simple y agradable de los archivosnominados que pueden leerse y escribirse.

    Una definición que llama mucho la atención y particularmente comparto es:

    Un sistema operativo es un programa cuya estructura es lo suficientementegeneral para independizarse del hardware, pero la implementación debe ser losuficientemente particular para aprovechar de forma eficiente el hardware.

    Existen definiciones más amplias y un poco más específicas, como:

    Se pueden imaginar un sistema operativo como los programas, instalados enel software o firmware, que hacen utilizable el hardware. El hardwareproporciona la "capacidad bruta de cómputo"; los sistemas operativos ponendicha capacidad de cómputo al alcance de los usuarios y administrancuidadosamente el hardware para lograr un buen rendimiento.

    Los sistemas operativos son ante todo administradores de recursos; elprincipal recurso que administran es el hardware del computador; además delos procesadores, los medios de almacenamiento, los dispositivos deentrada/salida, los dispositivos de comunicación y los datos

    El objetivo principal de un sistema operativo es, lograr que el sistema decomputación se use de manera  cómoda, y el objetivo secundario es que elhardware del computador se emplee de manera eficiente

    Un sistema operativo es un conjunto de programas que controla la ejecuciónde programas de aplicación y actúa como una interfaz entre el usuario y elhardware de una computadora, esto es, un sistema operativo explota yadministra los recursos de hardware de la computadora con el objeto deproporcionar un conjunto de servicios a los usuarios del sistema.

    En resumen, se podría decir que los sistemas operativos son un conjunto de

    programas que crean la interfaz del hardware con el usuario, y que tiene dosfunciones primordiales, que son:

    Gestion ar el hardware : Se refiere al hecho de administrar de una formamás eficiente los recursos de la máquina.Faci l i tar el trabajo al usuar io : Permite una comunicación con losdispositivos de la máquina.

    Si se analizan con detenimiento cada una de las anteriores definiciones, se puedeconcluir que en general un sistema operativo se describe desde dos puntos devista:

    23

  • 5/21/2018 301402

    24/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Usuario final  y,

    Usuario admin istrado r .

    Queda, entonces, revisar los conceptos dados y determinar a cuál punto de vistacorresponde cada uno.

     A lo largo del curso se va a trabajar la concepción de sistema operativo como:

     Aquella herramienta lógica que proporciona al usuario un entorno amigable, permiteinteractuar y establecer una comunicación entre el hardware (componentes físicos) y elsoftware (aplicaciones) de un sistema de cómputo.

    SISTEMA DE CÓMPUTO

    S OFT WA R E

    SIST EM A   OPE R A T IV O

    H A R DW A R E

    U S U A R IO

    Gráfica 2. Concepción de sistema operativo

    2.2 Funciones del sistema operativo

     A continuación se muestran las funciones principales que realiza todo sistemaoperativo. Se puede decir que son las características del sistema operativo:

    - Conveniencia. Un sistema operativo hace más conveniente el uso de unacomputadora.

    - Eficiencia. Un sistema operativo permite que los recursos de la computadorase usen de la manera más eficiente posible.

    24

  • 5/21/2018 301402

    25/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    - Habilidad para evolucionar.  Un sistema operativo deberá construirse demanera que permita el desarrollo, prueba o introducción efectiva de nuevas

    funciones del sistema sin interferir con el servicio.

    - Encargado de administrar el hardware. El sistema operativo se encarga demanejar de una mejor manera los recursos de la computadora en cuanto ahardware se refiere, esto es, asignar a cada proceso una parte del procesador para poder compartir los recursos.

    - Administración de dispositivos (gestionar a través del kernel).Coordinando y manipulando los dispositivos conectados al ordenador. Elsistema operativo se debe encargar de comunicar a los dispositivos periféricos,cuando el usuario así lo requiera. Además debe organizar los datos para

    acceso rápido y seguro.

    - Manejar las comunicaciones en red. El sistema operativo permite al usuariomanejar con alta facilidad todo lo referente a la instalación y uso de las redesde computadoras.

    - Procesamiento por bytes de flujo a través del bus de datos.

    - Facilitar las entradas y salidas.  Un sistema operativo debe hacerle fácil alusuario el acceso y manejo de los dispositivos de Entrada/Salida de lacomputadora.

    - Técnicas de recuperación de errores.   Gestiona los errores de hardware yla pérdida de los datos.

    - Gestión de permisos y de usuarios.  Adjudica los permisos de acceso a losusuarios y evita que las acciones de uno afecten el trabajo que está realizandootro. El sistema operativo evita que los usuarios se bloqueen entre ellos,informándoles si esa aplicación está siendo ocupada por otro usuario.

    - Control de seguridad. Debe proporcionar seguridad tanto para los usuarioscomo para el software y la información almacenada en los sistemas.

    - Control de concurrencia. Establece prioridades cuando diferentes procesossolicitan el mismo recurso.

    - Administración de memoria.   Asigna memoria a los procesos y gestiona suuso.

    - Generación de estadísticas.

    25

  • 5/21/2018 301402

    26/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNADESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIACONTENIDO DIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    26

    - Control de la ejecución de los programas.  Para ello, acepta los trabajos,administra la manera en que se realizan, les asigna los recursos y los conserva

    hasta su finalización.

    - Administración de periféricos.

    - Permite que se puedan compartir el hardware y los datos entre losusuarios.

    El software de aplicación son programas que se utilizan para diseñar, tal comoel procesador de palabras, lenguajes de programación, hojas de cálculo, etc.

    El software de base sirve para interactuar el usuario con la máquina, son un

    conjunto de programas que facilitan el ambiente plataforma, y permite el diseñodel mismo.

    El Software de base está compuesto por:•   Cargadores.•   Compiladores.•   Ensambladores.•   Macros.

    Transferencia – Autoevaluación

     Ahora que ya conoce el concepto y las funciones del sistema operativo,compárelas con las que había estudiado en la actividad de presaberes, establescalas diferencias.

    LECCION 3. Sistema Compu tacion al 

    Reconocimiento – Saberes Previos

    Para poder estudiar esta lección debe tener conocimiento claro de lo que es elsistema operativo y sus funcionalidades.

    Profundización

    3.1. Estructura de un sistema computacional

    Un sistema operativo es una parte importante de cualquier sistema decomputación.

  • 5/21/2018 301402

    27/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNADESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIACONTENIDO DIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    27

    Usuario 1 Usuario 2 Usuario 3

    Un sistema computacional es una plataforma sobre la cual se construyen losllamados sistemas de información, hoy en día, necesarios para la administración

    exitosa de cualquier organización.Un sistema de computación puede dividirse en cuatro componentes: el  hardware,el sistema operativo, los programas de aplicación y los usuarios.

    El hardware (Unidad Central de Procesamiento (CPU), memoria y dispositivos deentrada/salida (E/S)) proporcionan los recursos de computación básicos.

    Los programas de aplicación definen la forma en que estos recursos se empleanpara resolver los problemas de computación de los usuarios. Se pueden dividir enprogramas de sistemas como compiladores, assembler, editores, herramientas demonitoreo y mantención; y en aplicaciones propiamente dichas como sistemas de

    bases de datos, juegos de video, programas para negocios, navegadores, etc.

    Usuario n   Usuario f inal

    AplicacionesProgramador

    Programas de sistemas

    Sistema operativo

    Hardware

    D iseñador de traductores

    Di señadores S .O

    C onstructores

    Gráfica 3. Estructura de un sistema computacional

    El sistema operativo se encuentra almacenado en la memoria secundaria. Primerose carga y ejecuta un pedazo de código que se encuentra en el procesador, elcual carga el BIOS, y este a su vez carga el sistema operativo que carga todos losprogramas de aplicación y software variado.

     Antes de entrar a considerar los detalles de un S.O. se necesitan conocer losbloques de hardware que componen un sistema computacional.

    Como la función principal de un S.O. es aliviar las tareas de E/S, revisaremos losdispositivos y estructura de la entrada y salida de un sistema computacional.También examinaremos los mecanismos de protección que provee la CPU para elS.O.

    Veamos:

    3.2. Operación de un sistema computacional

  • 5/21/2018 301402

    28/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNADESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIACONTENIDO DIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    28

    Un sistema computacional consiste en una CPU y un número de dispositivos quetienen acceso a una memoria común vía un bus de interconexión.

    Los controladores de dispositivos se encargan de determinados dispositivos:discos, audio, mouse, módem, etc.

    La CPU y los dispositivos pueden actuar en forma concurrente. Sólo compiten por el acceso a la memoria que es común.

    El controlador de memoria provee un acceso sincronizado a la memoria RAM.

    Gráfica 4. Sistema de entrada/salida E/S (Input-output I/O)2

    a. Partida

    En la partida se necesita un programa inicial. Este programa se llama bootstrap. Elbootstrap inicializa todo el sistema: registros de CPU, controladores dedispositivos, memoria, etc.

    El primer proceso que ejecuta el S.O. Se llama init. Init espera la ocurrencia dealgún evento.

    b. InterrupcionesUna   interrupción   es un evento que altera la secuencia en que el procesador ejecuta las instrucciones. La interrupción es generada por el hardware del sistemade cómputo.

    El sistema de interrupciones es una parte muy importante de la arquitectura de uncomputador.

    Los sistemas operativos modernos son sistemas que reaccionan anteinterrupciones, es decir, si no hay E/S, ni procesos ejecutándose, el S.O. estáquieto y atento a que ocurra alguna interrupción.

    ¿Qué ocurre con el S.O ante una interrupción?

    2 CAÑAS R, Javier (2002). Curso sistemas operativos (Formato .pdf). Capítulo 2, p. 3

  • 5/21/2018 301402

    29/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    El sistema operativo toma el control (es decir, el hardware pasa el control alsistema operativo).

    El sistema operativo guarda el estado del proceso interrumpido. En muchossistemas esta información se guarda en el bloque de control de procesointerrumpido.El sistema operativo analiza la interrupción y transfiere el control a la rutinaapropiada para atenderla; en muchos sistemas actuales el hardware seencarga de esto automáticamente.La rutina del manejador de interrupciones procesa la interrupción.Se restablece el estado del proceso interrumpido (o del siguiente proceso).Se ejecuta el proceso interrumpido (o el siguiente proceso).

    Una interrupción puede ser iniciada específicamente por un proceso en ejecución(en cuyo caso se suele denominar (trap), y se dice que está  sincronizada con laoperación del proceso) o puede ser causada por algún evento que puede estar relacionado o no con el proceso en ejecución (en cuyo caso se dice que esasíncrona con la operación del proceso).

    Los sistemas orientados hacia las interrupciones pueden sobrecargarse. Si estasllegan con mucha frecuencia, el sistema no será capaz de atenderlas. En algunossistemas orientados hacia el teclado, cada tecla presionada almacena en lamemoria un código de un byte y genera una interrupción para informar a la CPUque un carácter está listo para ser procesado. Si la CPU no puede procesar eldato antes de que se presione la siguiente tecla, se pierde el primer carácter.

    Clases de InterrupcionesExisten seis clases de interrupciones:

    Interrupciones SVC (supervisor cal l , l lamadas al supervisor) .   Soniniciadas por un proceso en ejecución que ejecute la instrucción SVC. UnaSVC es una petición generada por el usuario de un servicio particular delsistema, como realizar una operación de entrada/salida, obtener másmemoria o comunicarse con el operador del sistema. El mecanismo de lasSVC ayuda a proteger el sistema operativo de las acciones de los usuarios.

    Un usuario no puede entrar arbitrariamente al sistema operativo, sino quedebe solicitar un servicio por medio de una SVC. El sistema operativo estáal tanto de todos los usuarios que intentan rebasar sus límites y puederechazar ciertas peticiones si el usuario no tiene los privilegios necesarios.

    Interrup cion es de E/S.  Son iniciadas por hardware de entrada y salida.Estas interrupciones indican a la CPU el cambio de estado de un canal odispositivo. Las interrupciones de E/S se producen cuando finaliza unaoperación de E/S o cuando un dispositivo pasa al estado listo.

    29

  • 5/21/2018 301402

    30/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Interrupciones externas. Son causadas por diversos eventos, incluyendola expiración de un Quantum de un reloj que interrumpe, la pulsación de la

    tecla de interrupción de la consola o la recepción de una señal procedentede otro procesador en un sistema de múltiples procesadores.

    Interrupciones de reinicio.  Se produce cuando se presiona el botón dereinicio de la PC o cuando llega de otro procesador una instrucción dereinicio en un sistema de multiprocesamiento.

    Interrupcion es de ver i f icación del pro grama.   Son causadas por unaamplia clase de problemas que pueden ocurrir cuando se ejecutan lasinstrucciones en lenguaje de máquina de un programa. Dichos problemas

    incluyen la división entre cero, el exceso o defecto de los números quepueden ser manejados por las operaciones aritméticas, el intento de hacer referencia a una localidad de memoria que esté fuera de los límites de lamemoria real. Muchos sistemas ofrecen a los usuarios la opción deespecificar las rutinas que deben ejecutarse cuando ocurra una interrupciónde verificación del programa.

    Interru pc ion es de verific ación de la máqu ina.  Son ocasionadas por elmal funcionamiento del hardware.

    Gráfica 5. Interrupciones de Hardware3

    3.3. Estructura del sistema de E/S

    Para iniciar una operación de E/S, el S.O. carga registros apropiados de loscontroladores de dispositivos. El controlador examina el registro, inicia laoperación e informa de su término a la CPU mediante una interrupción

    3 Ibid. Capítulo 2. p. 4

    30

  • 5/21/2018 301402

    31/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    La E/S puede ser sincrónica o asincrónica respecto al proceso que la inicia.

    a. E/S sincrónica y asincrónica

    Sincrónica:•   Se inicia la operación de E/S.•   Al finalizar la transferencia el control vuelve al proceso usuario.

    Asincrónica:•   El control vuelve al proceso usuario sin necesidad de esperar el término

    de la transferencia.

    b. El acceso directo a memoria (DMA)

    Una forma de mejorar el desempeño de un sistema computacional es liberar a laCPU del control de la transferencia del Buffer del controlador a la memoriaprincipal. De esta forma se genera sólo una interrupción por bloque en vez de unainterrupción por Byte

    Gráfica 6. Acceso directo a memoria4

    c. La memoria principal

    La memoria principal (RAM) y el archivo de registro son el único almacenamientoque la CPU puede accesar directamente.

    4 Ibid. Capítulo 2. p. 8

    31

  • 5/21/2018 301402

    32/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    ¿Cómo accesar mediante un programa los dispositivos?

    Muchos computadores proveen memory-mapped i/o (dispositivos mapeados enmemoria principal).

    d. memory-mapped i/o

    Esta modalidad considera a los registros de los dispositivos mapeados endeterminadas direcciones de la memoria principal. El programa sólo debe hacer referencia a determinadas direcciones de memoria para iniciar transferencias.

    Por ejemplo en los PC, cada punto de la pantalla de video está mapeada a unadeterminada dirección de memoria.

    e. Discos

    Los discos permiten almacenamiento masivo.Las velocidades de rotación varían entre 60 a 150 Hz.Los tiempos involucrados en una transferencia son:

    - Tiempo de transferencia (velocidad angular)- Tiempo rotacional- Tiempo de seek

    Gráfica 7. Organización de un disco5

    5 Ibid. Capítulo 2. p. 10

    32

  • 5/21/2018 301402

    33/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Gráfica 8. Información de un sector 6

    Gráfica 9. El cilindro7

    f. Jerarquía de memoriaEn un sistema computacional existe una gran variedad de almacenamiento. Elalmacenamiento está organizado jerárquicamente.

    La jerarquía de almacenamiento responde al compromiso entre velocidad y costode almacenamiento: el costo de almacenar un bit en una memoria muy rápida escaro.

    Otro aspecto a considerar es la volatilidad .

    6 Ibid. Capítulo 2. p. 107

    Ibid. Capítulo 2. p. 11

    33

  • 5/21/2018 301402

    34/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Gráfica 10. Jerarquía de memoria8

    g. La memoria caché

    La memoria caché es una parte muy importante de un sistema computacional.

    La información se mantiene en algún sistema de almacenamiento y en la medidaque se usa es copiada en una memoria más rápida temporalmente.

    Cuando se necesita una información particular, primero se verifica si está en lacaché. Si está se usa directamente y si no está se extrae del medio dealmacenamiento y se copia en la caché.

    Como su tamaño es limitado resulta muy importante su administración.

    Transferencia - Autoevaluación

     Ahora que ya conoce la estructura y funcionalidad de un sistema computacional,describa como esta conformado el sistema computacional de la sala de sistemasde su CEAD.

    LECCION 4. Pro tecc ión en Sistem as Com pu tacio nales 

    Reconocimiento – Saberes Previos

    Es necesario la comprensión y aprehensión de los sistemas computacionales, suestructura y características.

    8 Ibid. Capítulo 2. p. 12

    34

  • 5/21/2018 301402

    35/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Profundización

    4.1 Protecciones de hardware

    Los primeros computadores eran sistemas monousuarios.

    En la medida que los S.O. evolucionaron fue necesario compartir recursos paramejorar la eficiencia del sistema.

    El compartir mejora la eficiencia y aumenta los problemas:

    Sistema multiprogramado ante condiciones de error.Compartir dispositivos.

    a. Modo Dual

    Para asegurar una correcta operación se debe proteger al S.O. y los programasfrente a situaciones de error.

    La protección se requiere para cualquier recurso compartido.

    El hardware provee una importante protección llamada Modo Dual

    Se agrega un bit al hardware llamado bit de modo para indicar dos modos posiblesde operación.

    Los modos de operación son dos:

    Modo Monitor  (también llamado kernel o modo sistema)Modo usuario

    Modo Moni tor : este es el modo en el cual el S.O. toma el control del computador.Sólo en este modo se pueden ejecutar instrucciones llamadas privilegiadas yaccesar estructuras de datos internas del S.O.

    Modo Usuar io : modo normal para código usuario.La falta de apoyo de hardware de protección trae serios problemas en los S.O. Unejemplo es el S.O. originalmente escrito para el Intel 8080 que no tiene bit demodo:

    Cualquiera puede sobre escribir el S.O.Muchos programas pueden hacer E/S al mismo tiempo.

     A partir del 80486 se incorporó el bit de modo y así fue posible soportar S.O.Como Windows NT, Windows 2000, Windows 2003 Server, OS/2 y Linux.

    35

  • 5/21/2018 301402

    36/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    b. Protección de E/S

    Para prevenir que un usuario realice una operación ilegal de E/S se defineninstrucciones privilegiadas.

    De esta forma un usuario no puede ejecutar instrucciones de E/S directamente. Lodebe hacer a través del S.O.

    Nunca un programa usuario debe tener el control del sistema bajo modo monitor.

    ¿Qué pasaría si se tiene acceso al vector de interrupción? Se obtiene el control enmodo monitor .

    c. Protección de memoria

    Se debe proteger el vector de interrupción de ser modificado por programas deusuario.Se debe proteger la alteración de rutinas de servicio de interrupción.Se debe proteger también un programa usuario de otro programa usuario.Cada espacio debe estar protegido.El hardware provee dos registros:•   Registro base: Menor dirección legal•   Registro límite: Tamaño del espacio protegido.

    Gráfica 11. Protección de memoria9

    Cada dirección generada en modo usuario es comparada con los registrosBase y Límite.

    Cada intento por violar una región protegida genera una interrupción al S.O,el cual lo trata como un error fatal.

    Por supuesto que sólo el S.O. puede cambiar los contenidos de losregistros Base y Límite (se cambian en modo monitor)

    9 Ibid. Capítulo 2. p. 16

    36

  • 5/21/2018 301402

    37/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Gráfica 12. Control de la protección de memoria10

    Por quése estu dian los sis temas operativ os ? 

    Los sistemas operativos son sistemas de software complejos. Elentendimiento de los conceptos utilizados y la implementación de estosprogramas proporcionan desafíos y ejemplos para cualquier persona.

    El conocimiento de los sistemas operativos permite realizar aplicacionesque aprovechen los recursos eficientemente.Para el diseño de sistemas operativos.

    Para la creación de sistemas operativos personales con base en los

    sistemas operativos existentes. (Personalización de versiones)

    Transferencia – Autoevaluación

     A partir de lo aprendido en la lección, establezca algunos mecanismos deprotección del Hardware de la sala de sistemas de su CEAD, en esto debenestablecer al menos dos mecanismo para cada dispositivo estudiado en la lección.

    LECCION 5. Con cep tos de Sistem as Operativ os 

    Reconocimiento – Saberes Previos

    Para poder estudiar esta lección con dedicación y que pueda ser comprendida por el estudiante se requiere de la aclaración y estudio de la definición de sistemasoperativos y sistemas computacionales.

    10 Ibid. Capítulo 2. p. 17

    37

  • 5/21/2018 301402

    38/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Profundización

    5.1. Llamadas al sistema

    Hemos visto, por ejemplo, que las instrucciones de E/S son privilegiadas y por lotanto sólo las puede ejecutar el S.O.

    ¿Cómo ejecutar e/s? Solicitando al S.O. a través de una llamada al sistema.

    Las llamadas al sistema se usan en general para solicitar cualquier servicio al S.O.(Se tratan en este capítulo)

    Una llamada al sistema genera una interrupción (trap) a una dirección específicadel vector de interrupciones.

    Cuando se ejecuta una llamada al sistema, el hardware la trata como unainterrupción (excepción) de software. Los parámetros se pasan vía registro odirecciones de memoria.

    La siguiente gráfica muestra el flujo de una llamada al sistema.

    Gráfica 13. Flujo de una llamada al sistema11

    La interfaz entre el sistema operativo y los programas del usuario se define por medio del conjunto de "instrucciones extendidas" que el sistema operativo

    proporciona. Estas instrucciones extendidas son las llamadas al sistem a . Lasllamadas al sistema varían de un sistema operativo a otro (aunque los conceptosfundamentales tienden a ser análogos).

    Las llamadas al sistema se clasifican normalmente en dos categorías generales:aquellas que se relacionan con pro ceso s  y las que lo hacen con el sistema de archivo 

    - Por proc esos :  Un proceso es básicamente un programa en ejecución. Constadel programa ejecutable y la pila o stack del programa, su contador de programa,

    11 Ibid. Capítulo 2. p. 19

    38

  • 5/21/2018 301402

    39/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    apuntador de pila y otros registros, así como la otra información que se necesitapara ejecutar el programa. En si el proceso en el concepto de los sistemas

    operativos es como el sistema de tiempo compartido. Esto es, que en formaperiódica, el sistema operativo decide suspender la ejecución de un proceso y dar inicio a la ejecución de otro, por ejemplo, porque el primero haya tomado ya másde su parte del tiempo de la CPU, en terrenos del segundo.

    Cuando un proceso se suspende temporalmente, debe reiniciarse despuésexactamente en el mismo estado en que se encontraba cuando se detuvo. Estosignifica que toda la información relativa al proceso debe guardarse en formaexplícita en algún lugar durante la suspensión. En muchos sistemas operativos,toda la información referente a cada proceso, diferente del contenido de suespacio de direcciones, se almacena en una tabla de sistema operativo llamadatabla de procesos, la cual es un arreglo (lista enlazada) de estructuras, una paracada proceso en existencia.

    Por lo tanto, un proceso (suspendido) consta de su espacio de direcciones,generalmente denominado imagen del núcleo (en honor de las memorias deimagen de núcleo magnético que se utilizaron en tiempos antiguos) y su registrode la tabla de procesos, que contiene sus registros entre otras cosas.

    - Por sistema de archivo: Una función importante del S.O. consiste en ocultar laspeculiaridades de los discos y otros dispositivos de E/S y presentar alprogramador un modelo abstracto, limpio y agradable de archivos independientesdel dispositivo. Las llamadas al sistema se necesitan con claridad para crear 

    archivos, eliminarlos, leerlos y escribirlos. Antes de que se pueda leer un archivo,éste debe abrirse y después de que se haya leído debe cerrarse, de modo que lasllamadas se dan para hacer estas cosas.

     Antes de que un archivo pueda leerse o escribirse, éste debe abrirse, en cuyoinstante se verifican los permisos. Si se permite el acceso, el sistema produce unentero pequeño llamado descriptor del archivo para utilizarse en operacionessubsiguientes. Si se prohibe el acceso, se produce un código de error.

    5.2. Shell (intérprete de comandos)

    El sistema operativo es el código que realiza las llamadas al sistema. Los editores,compiladores, ensambladores, enlazadores e intérpretes de comandosdefinitivamente no son parte del sistema operativo, aunque son importantes yútiles. El Shell es el intérprete de comandos, a pesar de no ser parte del sistemaoperativo (está íntimamente ligado con este), hace un uso intenso de muchascaracterísticas del sistema operativo y por tanto sirve como un buen ejemplo de laforma en que se pueden utilizar las llamadas al sistema. También es la interfazprimaria entre un usuario situado frente a su terminal y el sistema operativo.

    39

  • 5/21/2018 301402

    40/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Cuando algún usuario entra al sistema, un "shell" se inicia. El shell tiene laterminal como entrada y como salida estándar. Este da inicio al teclear solicitud de

    entrada, carácter como un signo de pesos, el cual indica al usuario que el shellestá esperando un comando. En MS-DOS normalmente aparece la letra de launidad, seguida por dos puntos (:), el nombre del directorio en que se encuentra ypor último el signo de "mayor que" (>). Esto es: C:\>.

    Las versiones gráficas de Windows tienen la opción de Ejecutar, el cual es el shelldel sistema, normalmente en Inicio – Opción ejecutar.

    En Linux se puede trabajar, la consola de comandos, como el intérprete decomandos shel l .

    5.3. Procesos

    Uno de los conceptos más importantes que gira entorno a un sistema operativo esel de proceso. Un proceso  es un programa en ejecución junto con el entornoasociado (registros, variables,etc).

    El corazón de un sistema operativo es el núcl eo , un programa de control quereacciona ante cualquier interrupción de eventos externos y que da servicio a losprocesos, creándolos, terminándolos y respondiendo a cualquier petición deservicio por parte de los mismos.

    Un proceso es una actividad que se apoya en datos, recursos, un estado en cadamomento y un programa.

    Cada proceso contiene, entre otros:

    Mapeo en memoria: Dónde está almacenado el .text, .data y el stack delproceso.El estado de registros.Tabla de archivos en uso: Estado de cada archivoCredenciales (UID, GID, EUID, GUID). Identificadores de usuarios.Otros (PID, PPID, contadores, estados, prioridades). Identificadores deprocesos.

    Los procesos pueden crear nuevos procesos, y heredar algunos atributos de supadre.

    El SO provee medios de comunicación entre procesos. El proceso se comunicacon el SO mediante las llamadas al sistema (syscalls), para, por ejemplo:

     Abrir un archivo Alocar mas memoriaCrear un nuevo archivo

    40

  • 5/21/2018 301402

    41/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Sobreescribir su .text

    Otro medio de comunicación son las señales. (Análogas a las interrupciones, peroa nivel software). Un programa puede mandar señales a otros programas, el SOpuede mandar señales al programa.

    5.4. Archivos

    Un Archivo  es una unidad lógica de almacenamiento. Es una abstración sobre eldispositivo físico (disco rígido, floppy, etc).

    Conjunto de información relacionada guardada en un dispositivo secundario. Estáasociado a dispositivos de almacenamiento no volátiles.

    Para el usuario es un concepto de unidad de almacenamiento permanente,organizada bajo un esquema jerárquico de directorios, que le permite tener unorden lógico y control sobre su información.

    Los atributos normales de un archivo son: nombre, tipo, tamaño, tiempos ycredenciales.

    El concepto de archivos y directorios se encuentra en prácticamente todos lossistemas operativos. La organización de los archivos posee un sistema jerárquico.Cada archivo se identifica con su directorio y nombre.

    Existe un directorio padre de todos los directorios. Las referencias a archivospueden ser:

    Absolutas : Referidas desde el directorio padre ó,Relativas : Referidas al directorio actual.

    Cada archivo posee sus respectivos permisos y niveles de seguridad asignados.

    5.5. Definiciones

    a. Deadlocks (Abrazos mortales):   Cuando dos o más procesos se estánesperando mutuamente, en una situación sin salida.

    b. Memory Management (Manejo de Memoria): Estrategia de determinado S.Opara el uso de memoria. Los problemas a resolver son protección y mapeo deprogramas. Ej. Memoria Virtual.

    41

  • 5/21/2018 301402

    42/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Transferencia – Autoevaluación

    Recuerda lo que contesto en la revisión de presaberes de la lección 1, revise lasrespuestas planteadas en ese momento y haga ajustes después de haber estudiado la temática del capitulo.

    42

  • 5/21/2018 301402

    43/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    CAPÍTULO 2. CARACTERÍSTICAS DE LOS SISTEMAS OPERATIVOS

    INTRODUCCION

    En este capitulo estudiaremos con detenimiento los tipos de sistemas operativos,la estructura y los núcleos de los sistemas operativos, es un capitulo bastanteinteresante ya que nos ubica en el entorno que utilizan los sistemas operativospara administrar sus recursos dependiendo de la estructura que este tenga.

    LECCION 6. Tipo s de Sistem as Operativo s 

    Reconocimiento – Saberes Previos

    Describa las características principales que a su juicio, tienen los sistemasoperativos Windows y Linux (los que Usted normalmente maneja. Distribución yversión que disponga). Saque una lista, por cada sistema operativo, de ellas yexplique el por qué lo considera así.

     Así mismo saque una lista de los puntos que considera negativos de cada uno delos sistemas operativos que está analizando.

    Profundización

    6.1. Tipos de sistemas operativos

    Según la perspectiva con la que se observen los sistemas operativos, puedenrealizarse múltiples clasificaciones. Entre ellas revisaremos las siguientes:

    Sistemas operativos por su estructura (visión interna)Sistemas operativos por los modos de explotaciónSistemas operativos por los servicios que ofrecen y,Sistemas operativos por la forma en que ofrecen sus servicios (visiónexterna).

    43

  • 5/21/2018 301402

    44/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    6.2. Sistemas operativos por su estructura – Visión interna12

    Esta clasificación tiene en cuenta cómo se diseñan los sistemas a la hora de ser creados. Hay que tener en cuenta que, en la mayoría de los casos estasconcepciones de diseño no se aplican aisladas, si no que puede haber interrelación entre ellas.

    Se deben observar dos tipos de requisitos cuando se construye un sistemaoperativo, los cuales son:

    Requis i tos d e usuar io:  Sistema fácil de usar y de aprender, seguro, rápido yadecuado al uso a que se le quiere destinar.

    Requisito s del softw are:  Donde se engloban aspectos como el mantenimiento,forma de operación, restricciones de uso, eficiencia, tolerancia frente a los erroresy flexibilidad.

     A continuación se describen las distintas estructuras que presentan los actualessistemas operativos para satisfacer las necesidades que de ellos se quierenobtener.

    a. Estructura monolítica

    Es la estructura de los primeros sistemas operativos constituidosfundamentalmente por un solo programa compuesto de un conjunto de rutinasentrelazadas de tal forma que cada una puede llamar a cualquier otra. Lascaracterísticas fundamentales de este tipo de estructura son:

    Construcción del programa final a base de módulos compiladosseparadamente que se unen a través del ligador.Buena definición de parámetros de enlace entre las distintas rutinasexistentes, que puede provocar mucho acoplamiento.Carecen de protecciones y privilegios al entrar a rutinas que manejandiferentes aspectos de los recursos de la computadora, como memoria,disco, etc.Generalmente están hechos a medida, por lo que son eficientes y rápidosen su ejecución y gestión, pero por lo mismo carecen de flexibilidad parasoportar diferentes ambientes de trabajo o tipos de aplicaciones.

    Es la estructura utilizada en los primeros sistemas operativos en la que todas lasfunciones se implementaban en el Kernel. Puede decirse que su estructuraconsiste en que no existe una estructura como tal.

    12  ALCALDE, E. MORERA, J. PEREZ -CAMPANERO. (1992).  Introducción a los SistemasOperativos. Madrid, Mc Graw Hill. p. 33.

    44

  • 5/21/2018 301402

    45/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Rutina A   Rutina B

    Rutina 1 Rutina 2 Rutina 3 Rutina 4

    Gráfica 14. Estructura monolítica

    b. Estructura jerárquica – Por capas

     A medida que los sistemas operativos fueron creciendo, fue siendo necesaria unamayor estructuración.

    Se dividió el sistema operativo en pequeñas partes, de tal forma que cada una deellas estuviera perfectamente definida y con una clara interface con el resto deelementos.

    De acuerdo a las funciones principales del sistema operativo, vista en el numeralanterior (1.1.5 Funciones del sistema operativo), es posible analizar la estructurade un sistema operativo en cinco niveles. Los primeros dos niveles entraríandentro de la parte del sistema operativo dependiente del hardware, el resto de los

    niveles pertenecen a la parte portable del mismo.Cada uno de los niveles se comunica con el inmediatamente inferior y superior coordinando sus funciones.

    Nivel 1: Gestión del procesador.   En este nivel se encuentra la parte delsistema operativo encargada de la gestión de la  CPU . En los sistemasoperativos multiproceso (es decir, que pueden ejecutar varios procesos a lavez), este nivel se encarga de compartir la CPU  entre los distintos procesosrealizando funciones de sincronización, conmutación de la  CPU  y gestiónde interrupciones.

    Nivel 2: Gestión de memoria.  Este nivel es el encargado de repartir lamemoria disponible entre los procesos. Se realizan funciones de asignacióny liberación de memoria, y el control de violación de acceso a zonas dememoria no permitidas.

    Nivel 3: Gestión de procesos. Este nivel es el encargado de la creación ydestrucción de los procesos, intercambio de mensajes y detección yarranque de los mismos.

    45

  • 5/21/2018 301402

    46/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Nivel 4: Gestión de dispositivos. En este nivel se realiza la gestión de lasentradas/salidas (E/S) en función de los dispositivos existentes. Entre otras,

    se encarga de las funciones de creación de procesos de  E/S, asignación yliberación de dispositivos E/S, y planificación de la E/S.

    Nivel 5: Gestión de la in formación.  El objetivo de este nivel es el degestionar el espacio de nombres lógicos, utilizados para simplificar elacceso a los recursos, ya que mediante estos se sustituyen rutas de accesoque pueden ser muy largas y difíciles de recordar por un solo nombre,encargándose el sistema operativo, de forma totalmente transparente parael usuario, de realizar esta búsqueda de ruta. Otro de sus contenidos es laprotección de la información realizando funciones de creación y destrucciónde ficheros y directorios, apertura y cierre de ficheros, lectura y escritura deficheros, y protección de acceso.

    Es importante destacar que un mismo sistema operativo puede trabajar enmúltiples plataformas hardware, por lo que debe adaptarse a las peculiaridades decada una de ellas.

    Una forma de representar esta estructura es mediante anillos concéntricos o“rings”. En el sistema de anillos, cada uno tiene una apertura, conocida como trap (o interrupción), por donde pueden entrar las llamadas de las capas inferiores. Deesta forma, las zonas más internas del sistema operativo o núcleo del sistema

    estarán más protegidas de accesos indeseados desde las capas más externas. Sepuede decir que las capas más internas son más privilegiadas que las externas.

    En la base de la jerarquía se encuentra el hardware del computador, a vecesdenominado simplemente “máquina pura” o los “hierros desnudos”. En seguida seencuentran todos los anillos o capas propias del sistema operativo.

    46

  • 5/21/2018 301402

    47/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    U S U A R IO

    0. Hardware

    Gestión de la

    inf ormación

    G estión de

    dispos itivos

    G estión de

    procesos

    G estión de

    memoria

    G estión del

    procesador

    1

    2

    3

    4

    5

    Gráfica 15. Estructura por  capas.

    c. Máquina virtualSe trata de un tipo de sistemas operativos que presentan una interfaz a cadaproceso, mostrando una máquina que parece idéntica a la máquina realsubyacente.

    Estos sistemas operativos separan dos conceptos que suelen estar unidos en elresto de sistemas: la mu ltip rog ramación y la máqu ina extend ida .

    El objetivo de los sistemas operativos de máquina virtual es el de integrar distintossistemas operativos dando la sensación de ser varias máquinas diferentes.

    El núcleo de estos sistemas operativos se denomina moni tor vi r tual  y tiene comomisión llevar a cabo la multiprogramación, presentando a los niveles superiorestantas máquinas virtuales como se soliciten. Estas máquinas virtuales no sonmáquinas extendidas, sino una réplica de la máquina real, de manera que en cadauna de ellas se pueda ejecutar un sistema operativo diferente, que será el queofrezca la máquina extendida al usuario

    La principal ventaja de esta estructura reside en que permite implementar variostipos de sistemas operativos sobre cada máquina virtual.

    La principal ventaja de esta estructura reside en que permite implementar variostipos de sistemas operativos sobre cada máquina virtual. No obstante, presentan

    47

  • 5/21/2018 301402

    48/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    el problema de que los sistemas operativos implementados son disjuntos, lo cualcomplica enormemente la interacción, comunicación y compartición que necesitan

    los sistemas operativos actuales.Un ejemplo de este tipo es el sistema VM370.

    Gráfica 16. Máquina virtual

    d. Cliente-servidor (Microkernel)

    El tipo más reciente de sistemas operativos es el denominado cl iente-servido r ,que puede ser ejecutado en la mayoría de las computadoras, ya sean grandes opequeñas.

    Este sistema sirve para toda clase de aplicaciones, es de propósito general ycumple con las mismas actividades que los sistemas operativos convencionales: elnúcleo y los procesos, presentando grandes diferencias en cuanto a la forma dedistribuir los trabajos entre sus distintas partes.

    Suministra mecanismos adecuados para la gestión de:

    Procesos.Memoria.Comunicación entre procesos.

    El núcleo tiene como misión establecer la comunicación entre los clientes y losservidores. Los procesos pueden ser tanto servidores como clientes. Por ejemplo,un programa de aplicación normal es un cliente que llama al servidor correspondiente para acceder a un archivo o realizar una operación deentrada/salida sobre un dispositivo concreto. A su vez, un proceso cliente puedeactuar como servidor para otro.

    48

  • 5/21/2018 301402

    49/336

    UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELADE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA CONTENIDODIDÁCTICO DEL CUSO: 301402 – SISTEMAS OPERATIVOS

    Este paradigma ofrece gran flexibilidad en cuanto a los servicios posibles en elsistema final, ya