Está en la página 1de 115

FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015

FACULTAD DE DISEO E INGENIERA


TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 1 de 115

FAC U LTAD D E D I S E O E I N G E N I E R A
TECNOLOGA EN SISTEMAS DE INFORMACIN
ELECTIVA DE PROFUNDIZ ACIN I

S I S T E M A S O P E R AT I V O S

FA B I A N H OYO S PAT E R N I N A
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 2 de 115

SISTEMAS OPERATIVOS
Programas de Educacin a Distancia
Fundacin Antonio de Arvalo, TECNAR

Autor: Fabin Enrique Hoyos Paternina

Diseo de la Plantilla y Estructura del mdulo: Astrid Caldern Hernndez


Diagramacin, Portadas y Arte Grfico: [Nombre del Diseador Grfico]

Primera Edicin: Noviembre de 2015

Sistemas Operativos
Programas de Educacin a Distancia
Fundacin Antonio de Arvalo - TECNAR
2016; [N] Pg.; 21.5 X 27.9 cm

Prohibida su reproduccin parcial o total, por cualquier medio o mtodo de este mdulo sin previa
autorizacin de TECNAR y la Empresa Editorial.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 3 de 115

INDICE DE ILUSTRACIONES

Pg.

Figura 1. Bulbos y Conexiones. ...................................................................................... 19


Figura 2. Sistema por Lotes. ........................................................................................... 20
Figura 3. Circuitos Integrados. ........................................................................................ 20
Figura 4 Computadora Personal. .................................................................................... 21
Figura 5. Sistema Operativo. .......................................................................................... 22
Figura 6. Autor. ................................................................................................................ 24
Figura 7. Interrupciones. ................................................................................................. 25
Figura 8. Interrupciones. ................................................................................................. 27
Figura 9. Acceso Directo a Memoria. .............................................................................. 28
Figura 10. Partes de un Disco Duro. ............................................................................... 29
Figura 11. Jerarqua de la Memoria. ............................................................................... 30
Figura 12. Proteccin de Memoria. ................................................................................. 32
Figura 13. Estados de los Procesos ................................................................................ 64
Figura 14. Bloque de Control de Proceso (PCB). ............................................................ 66
Figura 15. Thread (Hilo de Ejecucin). ............................................................................ 67
Figura 16. Thread (Hilo de Ejecucin). ............................................................................ 68
Figura 17. Semaforo. ...................................................................................................... 72
Figura 18. Implementacin de Semforo para sincronizacin. ......................................... 73
Figura 19. Interaccin productor/consumidor con semforos. ......................................... 73
Figura 20. Planificador a largo plazo. ............................................................................. 75
Figura 21. Planificador a mediano plazo, o agendador. .................................................. 75
Figura 22. Planificador a Corto plazo. ............................................................................. 76
Figura 23. Esquema general de la memoria, incorporando espacio en almacenamiento
secundario, representando la memoria virtual. ................................................................ 84
Figura 24. Pasos que atraviesa la respuesta a un fallo de pgina. .................................. 86
Figura 25. Traduccin de direcciones de memoria en segmentacin. ............................. 89
Figura 26. Entrada tpica de una tabla de pginas. ......................................................... 89
Figura 27. Esquema del proceso de paginacin. ............................................................ 90
Figura 28. Ejemplo de paginacin, con un espacio de direccionamiento de 32 bytes y
pginas de 4 bytes. ......................................................................................................... 92
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 4 de 115

PRESENTACIN

Este mdulo est centrado en el estudio de temas relacionados con la


composicin, caractersticas, funcionamiento, clasificacin, y evolucin de los
softwares que se encargan de administrar todos los recursos que nos suministran los
sistemas computacionales, y que popular mente son denominados Sistemas
operativos. Con la lectura de las unidades y lecciones, nos daremos cuenta como es el
funcionamiento de cada uno de los programas que compone un sistema operativo,
como se cumplen los procesos de planificacin y administracin de recursos, todos
estos procesos que trabajan en comunin tienen la finalidad de brindar comodidad a los
usuarios para que estos aprovechen de la mejor forma las ventajas que nos entrega la
implementacin de los computadores.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 5 de 115

PRESENTACIN DEL CURSO

Nombre del curso: Cdigo del curso


Sistemas Operativos 23035
Programa: Semestre:
Tecnologa de Sistemas
rea de Formacin (bsica, Tipo de curso
profesional, complementaria, Terico
investigativa):
Especifico
Crditos Acadmicos: Prerrequisitos o Presaberes:
3 Crditos
Horas de acompaamiento: Horas de Trabajo Independiente:
3 Horas 6 Horas
Tutor (a): Email:
Ing. Fabin Enrique Hoyos fabianhoyosp@gmail.com
Paternina
Tabla 1: Generalidades del Curso
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 6 de 115

1. INTRODUCCIN

Este mdulo fue desarrollado con el objetivo de entregar a los estudiantes del
programa de Tecnologa en Sistemas de la Fundacin Tecnolgica Antonio de Arvalo
TECNAR, bases tericas que les permitan desarrollar nuevos conocimientos, sobre los
Sistemas Operativos, iniciando con la historia y generalidades, continuando con
aspectos como la administracin de procesos, y terminando con la unidad de
Administracin de memoria.

Es importante reconocer que en cualquier rea de la Tecnologa de Sistemas


en la cual nos queramos desempear, siempre trabajaremos con un sistema operativo,
independiente de la actividad que se desarrolle, ya sea Administracin,
Implementacin, diseo y utilizacin, etc. Con el conocimiento que podamos adquirir,
nuestro trabajo ser mucho ms sencillo de realizar. Uno de los componentes bsicos
de cualquier sistema computacional, es el sistema operativo, esto me permite reafirmar
la importancia de su estudio, su conocimiento y la destreza de manejarlo, y mucho ms
pensando en nuestra formacin de Tecnlogos en sistema. Esta temtica de los
Sistemas operativos es muy amplia, por este motivo, este mdulo no pretende ser el
todo con respecto al tema, solo pretendemos ser una gua rpida para el
reconocimiento de informacin bsica, esperando ser el punto de partida para la
bsqueda de ms informacin y motivar su competencia investigativa.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 7 de 115

2. OBJETIVOS EDUCATIVOS

2.1. OBJETIVO GENERAL

Fundamentar desde un principio, los aspectos generales de los sistemas


operativos, estructura, funcionamiento y administracin de recursos, que permita al
estudiante la toma de decisiones, ante requerimientos en procesos preventivos o
correctivos.

2.2. OBJETIVOS ESPECFICOS:

Conocer el funcionamiento del administrador de procesos, as como todas las


tcnicas que se utilizan para la interaccin entre ellos.
Conocer el funcionamiento del administrador de la memoria, as como sus
diferentes implementaciones (swapping, paginacin, memoria virtual, etc.)
El estudiante estar en capacidad de automatizar los procesos de planificacin
mediante la creacin de un programa ceido a las especificaciones de
planificacin.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 8 de 115

3. JUSTIFICACIN

Haciendo un barrido por la historia de los computadores, nos encontramos en


sus inicios, con grandes estructuras mecnicas, que deban ser administradas por un
grupo de personas, cualquier cambio necesario para el funcionamiento de la mquina,
afectaba la arquitectura de la misma, no fue sino hasta la dcada de los aos 60,
cuando se inicia una nueva etapa en la evolucin de las computadoras y surge el
Sistema operativo, este programa permite administrar de manera mucho ms eficiente
el equipo de cmputo y sus dispositivos anexos, permitiendo de esta manera garantizar
un retorno de la inversin en infraestructura computacional.

Debido a la masificacin del uso de las computadoras, ya no solo en el mbito


empresarial, sino en todos los aspectos de la vida diaria (Educacin, entretenimiento,
comercio, etc) el sistema operativo toma un nuevo papel protagnico, en el da de hoy
encontramos sistemas operativos, para computadoras personales, redes de
computadoras, para equipo de comunicacin mviles (Smartphone), etc, encontramos
Sistemas Operativos de diferentes clasificaciones Privativos, Libres, etc. En nuestra
era no hay ningn dispositivo electrnico que no funciones bajo un bsico sistema
operativo, de ah la importancia de conocer su funcionamiento.

En base a lo anteriormente expuesto, podemos afirmar que el estudio de esta


temtica permite al estudiante de ingeniera de sistemas, profundizar una serie de
conceptos, definiciones y teoras que son indispensables a la hora de trabajar en la
administracin, usos y la enseanza de los sistemas operativos, tambin crea la base
para la aplicacin de estos conocimientos en el desarrollo de otras aplicaciones y
campos de la ingeniera.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 9 de 115

4. COMPETENCIAS

4.1. COMPETENCIAS GENRICAS.

Tener una permanente actitud de aprendizaje y de espritu investigativo.


Buscar nuevas alternativas de solucin y se arriesgan a romper los esquemas
tradicionales.
Tener la capacidad de abstraccin y anlisis de informacin.
Tener claramente definida la primaca del bien colectivo sobre los intereses
particulares.
Tener Capacidad de preocuparse por entender las necesidades de los clientes
internos y externos y dar solucin a sus problemas.
Desarrollar la capacidad de autoaprendizaje.
Trabajo en equipo

4.2. COMPETENCIAS ESPECFICAS.

4.2.1. Cognitivas:

Conocer los distintos componentes de los Sistemas Operativos, y estar en


capacidad de reconocer las diferentes maneras en que estos se disponen en
distintas arquitecturas de Sistemas Operativos.

Conocer el funcionamiento del administrador de procesos, as como todos los


procesos que interactan en l (algoritmos de exclusin mutua, algoritmos de
calendarizacin de procesos, etc)

Conocer el funcionamiento del administrador de la memoria, as como sus


diferentes implementaciones (swapping, paginacin, memoria virtual, etc.)

4.2.2. Procedimentales/Instrumentales:

El estudiante estar en la capacidad de utilizar los algoritmos de multiplexacin de


recursos en el tiempo y en el espacio a problemas informticos que gestionen
recursos, as mismo.
El estudiante estar en condiciones de realizar simulaciones de planificacin de
procesos y memoria.
El estudiante estar en capacidad de automatizar los procesos de planificacin
mediante la creacin de un programa ceido a las especificaciones de
planificacin.
Identificar los sistemas operativos ms comunes y sus caractersticas.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 10 de 115

Implementar Mquinas Virtuales, para el desarrollo de prcticas y otras


actividades.

4.2.3. Actitudinales:

Adquirir Responsabilidad en el asumo de las actividades de aprendizaje.


Poseer Motivacin hacia el aprendizaje de su profesin.
Tener tica profesional, para el manejo de informacin confidencial.
Ser Puntual en el manejo de las actividades que realizaran en el programa de
sistemas operativos.
Ser comunicativo con el personal de inters.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 11 de 115

5. METODOLOGA

Se realizarn las siguientes acciones por parte de los estudiantes y el docente:

Presentacin de tpicos que orienten al entendimiento de la composicin y


funcionamiento de los sistemas operativos.
Anlisis de simulaciones de los procesos realizados por los sistemas
operativos, para una mejor comprensin del funcionamiento del mismo.
Proposicin de trabajos independientes para el enriquecimiento de las
actividades realizadas en clase
Desarrollo de talleres en la cual se analiza y disea la solucin a la
problemtica mediante simulaciones y algoritmos de planificacin.
Seguimiento, apoyo y retroalimentacin de las acciones que se realizan en los
procesos de simulacin y planificacin.

Recursos:

Revistas Informativas del rea


Internet como base o fuente de informacin.
Presentacin de diapositivas con temas relacionados con el modulo.
Libros del rea de la Sistemas Operativos
Herramienta de Hojas de Calculo
Utilizacin de aulas virtuales.

6. UNIDADES DE APRENDIZAJE
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 12 de 115

UNIDAD No. I. INTRODUCCION A LOS SISTEMAS OPERATIVOS

Conceptualizacin de Sistema Operativo


Arquitecturas de Sistemas Operativos
Repaso de Hardware

UNIDAD No. II. GESTION DE PROCESOS

Procesos
Introduccin a los procesos
Comunicacin entre procesos
Problemas clsicos de la comunicacin entre procesos
Planificacin de los procesos

UNIDAD No. III. ADMINISTRACION DE MEMORIA

Administracin de la memoria
Memoria virtual
Paginacin
Segmentacin
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 13 de 115

UNIDAD 1: Introduccin A Los Sistemas Operativos


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 14 de 115

TABLA DE CONTENIDO

Pg.

1. INTRODUCCIN ..................................................................................................... 6
2. OBJETIVOS EDUCATIVOS .................................................................................... 7
3. JUSTIFICACIN ...................................................................................................... 8
4. COMPETENCIAS .................................................................................................... 9
4.1. COMPETENCIAS GENRICAS. ............................................................................ 9
4.2. COMPETENCIAS ESPECFICAS. .......................................................................... 9
4.2.1. Cognitivas: ............................................................................................................... 9
4.2.2. Procedimentales/Instrumentales: ............................................................................ 9
4.2.3. Actitudinales: .......................................................................................................... 10
5. METODOLOGA .................................................................................................... 11
6. UNIDADES DE APRENDIZAJE ............................................................................ 11
1. Unidad 1: Introduccin A Los Sistemas Operativos.............................................. 17
1.1. Objetivos ................................................................................................................ 17
1.2. Competencias ........................................................................................................ 17
1.3. Estrategias pedaggicas o actividades de aprendizaje ........................................ 17
1.4. Recursos de aprendizaje ....................................................................................... 17
1.5. Leccin 1: Historia y Evolucin de los Sistemas Operativos ................................ 17
1.5.1. Historia de los sistemas operativos: ...................................................................... 18
1.5.2. Evolucin de los sistemas operativos: .................................................................. 19
1.6. Leccin 2: Definiciones y Funciones de los Sistemas Operativos ....................... 22
1.6.1. Definicin de Sistemas Operativos ....................................................................... 22
1.6.2. Funciones del sistema operativo ........................................................................... 23
1.7. Leccin 3: Sistema Computacional ....................................................................... 23
1.7.1. Estructura de un Sistema Computacional ............................................................. 23
1.7.2. Operacin de Un Sistema Computacional ............................................................ 24
1.7.3. Estructura del sistema de E/S ............................................................................... 27
1.8. Leccin 4: Proteccin en Sistemas Computacionales .......................................... 30
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 15 de 115

1.8.1. Protecciones de hardware ..................................................................................... 31


1.9. Leccin 5: Conceptos de Sistemas Operativos .................................................... 32
1.9.1. Llamadas al Sistema ............................................................................................. 32
1.9.2. Shell (intrprete de comandos) ............................................................................. 33
1.9.3. Procesos ................................................................................................................ 34
1.9.4. Archivos ................................................................................................................. 35
1.9.5. Definiciones............................................................................................................ 35
1.10. Tipos de Sistemas Operativos............................................................................... 35
1.11. ADMINISTRACIN DE TAREAS .......................................................................... 35
1.11.1. ADMINISTRACIN DE USUARIOS ..................................................................... 36
1.11.2. MANEJO DE RECURSOS O ACCESO A SERVICIOS ....................................... 37
1.12. Leccin 7. Estructura de los Sistemas Operativos ............................................... 38
1.12.1. Estructura de los sistemas operativos................................................................... 38
1.13. Leccin 8. Ncleos del Sistema Operativo 62 ...................................................... 41
1.13.1. Ncleos de sistemas operativos ............................................................................ 41
1.14. Leccin 9. Arquitectura cliente servidor ................................................................ 44
1.14.1. Antecedentes de la Arquitectura Cliente/Servidor ................................................ 44
1.14.2. Definicin Cliente/Servidor .................................................................................... 46
1.15. Leccin 10. Componentes y Caracterstica de la Estructura Cliente/Servidor..... 47
1.15.1. Componentes esenciales de la infraestructura Cliente/Servidor .......................... 47
1.15.1.1. Plataforma operativa .............................................................................................. 47
1.15.1.2. Entorno de desarrollo de aplicaciones .................................................................. 47
1.15.1.3. Gestin de sistemas .............................................................................................. 48
1.15.2. Caractersticas fsicas............................................................................................ 49
1.15.3. Caractersticas lgicas........................................................................................... 50
1.16. Leccin 11. Anlisis de las Variantes de la Arquitectura Cliente/Servidor ........... 50
1.16.1. Anlisis de las diferentes variantes de la arquitectura Cliente/Servidor ............... 50
1.16.2. Presentacin distribuida ........................................................................................ 50
1.16.2.1. Administracin de datos remota ............................................................................ 51
1.16.2.2. Three Tiered Architecture ...................................................................................... 51
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 16 de 115

1.17. Leccin 12. Condiciones para la implantacin del Modelo Cliente/Servidor ........ 52
1.17.1. Condiciones para la implantacin del modelo Cliente/Servidor ........................... 52
1.17.2. Costos y beneficios de Cliente/Servidor ............................................................... 53
1.18. Leccin 13. Generalidades del Hardware ............................................................. 55
1.18.1. Hardware................................................................................................................ 55
1.18.1.1. Hardware De Entrada ............................................................................................ 56
1.18.1.2. Hardware De Salida ............................................................................................... 56
1.18.1.3. Hardware De Almacenamiento.............................................................................. 56
1.18.1.4. Conexiones Del Hardware ..................................................................................... 57
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 17 de 115

1. Unidad 1: Introduccin A Los Sistemas Operativos

1.1. Objetivos
Investigar y profundizar los conceptos generales sobre los sistemas operativos,
Iniciando con la historia y pasado por definiciones generales su funcionamiento y
estructura bsica.

1.2. Competencias
Definir con claridad, que es un sistema operativo.
Identificar sus componentes.
Clasificar la evolucin de los Sistemas Operativos, de acuerdo al desarrollo
del Hardware.

1.3. Estrategias pedaggicas o actividades de aprendizaje


Presentacin de tpicos que orienten al entendimiento de la composicin y
funcionamiento de los sistemas operativos.
Proposicin de trabajos independientes para el enriquecimiento de las
actividades realizadas en clase.

1.4. Recursos de aprendizaje


Revistas Informativas del rea
Internet como base o fuente de informacin.
Presentacin de diapositivas con temas relacionados con el modulo.
Libros del rea de la Sistemas Operativos
Herramienta de Hojas de Calculo
Utilizacin de aulas virtuales.

1.5. Leccin 1: Historia y Evolucin de los Sistemas Operativos


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 18 de 115

1.5.1. Historia de los sistemas operativos:

La informtica tal y como se le conoce hoy da, surgi a raz de la II Guerra


Mundial, en la dcada de los 40. En esos aos no exista siquiera el concepto de
"Sistema Operativo" y los programadores interactuaban directamente con el hardware
de las computadoras trabajando en lenguaje mquina (esto es, en binario,
programando nicamente con 0s y 1s). El concepto de Sistema Operativo surge en la
dcada de los 50. El primer Sistema Operativo de la historia fue creado en 1956 para
un ordenador IBM 704, y bsicamente lo nico que haca era comenzar la ejecucin de
un programa cuando el anterior terminaba.

En los aos 60 se produce una revolucin en el campo de los Sistemas


Operativos, aparecen entonces conceptos como sistema multitarea, sistema
multiusuario, sistema multiprocesadores y sistema en tiempo real; es en esta dcada
cuando aparece UNIX, la base de la gran mayora de los Sistemas Operativos que
existen hoy en da.

En la dcada de los 70 se produce un boom en cuestin de ordenadores


personales acercando estos al pblico general, de manera impensable hasta entonces.
Esto hace que se multiplique el desarrollo crendose el lenguaje de programacin C
(diseado especficamente para reescribir por completo el cdigo UNIX). Como
consecuencia de este crecimiento exponencial de usuarios, la gran mayora de ellos
sin ningn conocimiento sobre lenguajes de bajo o alto nivel, hizo que, en los aos 80,
la prioridad a la hora de disear un sistema operativo fuese la facilidad de uso,
surgiendo as las primeras interfaces de usuario.

En los 80 nacieron sistemas como MacOS, MS-DOS, Windows. Ya en la


dcada de los 90 hace su aparicin Linux, publicndose la primera versin del ncleo
en septiembre de 1991, que posteriormente se unira al proyecto GNU, un sistema
operativo completamente libre, similar a UNIX, al que le faltaba para funcionar un
ncleo funcional. Hoy en da la mayora de la gente conoce por Linux al Sistema
Operativo que realmente se llama GNU/Linux.

Como podemos inferir en los prrafos anteriores, la evolucin de los sistemas


operativos va fuertemente atada a la arquitectura de los computadores (Hardware),
desde los inicios en los aos 40 hasta llegar a los aos 90, la evolucin de los sistemas
operativos fue lenta, pero a partir del ao 1991 hasta nuestra poca, la evolucin fue
mucho ms rpida, este fenmeno se da por la masificacin del usos de los
computadores personales, estos dejaron de ser de uso exclusivo de las grandes
empresas y pasaron a ser parte indispensable de nuestras actividades diarias
(educacin, laboral, recreacin, etc).
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 19 de 115

1.5.2. Evolucin de los sistemas operativos:

1a. Etapa (1945-1955): Bulbos y conexiones.

Figura 1. Bulbos y Conexiones, en la imagen se detalla el interior de un sistema informtico de los


aos 40. Fuente: http://caracteristicasdelso.blogspot.com.co/

Despus de los infructuosos esfuerzos de Babbage, hubo poco progreso en la


construccin de las computadoras digitales, hasta la Segunda Guerra Mundial, a mitad de la
dcada de los 40's, Howard Aiken (Harvard), John Von Newman (Instituto de Estudios
Avanzados, Princeton), J. Prespe R. Eckert y Williams Mauchley (Universidad de Pennsylvania),
as como Conrad Zuse (Alemania) entre otros, lograron construir mquinas de clculo mediante
bulbos. Estas mquinas eran enormes y llenaban cuartos completos con decenas de miles de
bulbos, pero eran mucho ms lentas que la computadora casera ms econmica en nuestros
das. Toda la programacin se llevaba a cabo en lenguaje de maquina absoluto y con
frecuencia se utilizaban conexiones para controlar las funciones bsicas de la mquina.
(Tanenbaum, 2003, pg. 6)

Los lenguajes de programacin eran desconocidos (incluso el lenguaje


ensamblador). No se oa de los Sistemas Operativos el modo usual de operacin
consista en que el programador reservaba cierto periodo en una hoja de reservacin
pegada a la pared, iba al cuarto de la mquina, insertaba su conexin a la
computadora y pasaba unas horas esperando que ninguno de los 20,000 o ms bulbos
se quemara durante la ejecucin. La inmensa mayora de los problemas eran clculos
numricos directos, por ejemplo, el clculo de valores para tablas de senos y cosenos.

A principio de la dcada de los 50's la rutina mejoro un poco con la introduccin de las
tarjetas perforadas. Fue entonces posible escribir los programas y leerlas en vez de
insertar conexiones, por lo dems el proceso era el mismo.

2a. Etapa. (1955-1965): Transistores y Sistemas de Procesamiento por lotes.


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 20 de 115

Figura 2. Sistema Por Lotes, en la figura se ilustra la manera en que se realizaba el proceso de
procesamiento de datos por lotes. Fuente: http://es.slideshare.net/AlexaCayambe/presentacion-sistemas-operativos-
48663762

La introduccin del transistor a mediados de los aos 50's modifico en forma radical el
panorama. Las computadoras se volvieron confiables de forma que podan fabricarse y
venderse a clientes, con la esperanza de que ellas continuaran funcionando lo suficiente como
para realizar un trabajo en forma. (Tanenbaum, 2003, pg. 7) Las empresas siempre estn
buscado la manara de optimizar su procesos, hacerlos ms rpidos y eficientes, por
este motivo la solucin que se adopt por lo general fue el procesamiento por lotes, ya
que la otra solucin era la adquisicin de ms equipos, pero estos eran demasiado
costosos.

3ra Etapa (1965-1980): Circuitos integrados y multiprogramacin.

Figura 1. Circuitos Integrados, en las imgenes se muestran una gran cantidad de componentes
electrnicos, que componen los sistemas informticos que se comenzaron a utilizar en los aos 80.
Fuente: http://es.slideshare.net/AlexaCayambe/presentacion-sistemas-operativos-48663762

La 360 de IBM fue la primera lnea principal de computadoras que utilizo los circuitos
integrados, lo que proporciono una gran ventaja en el precio y desempeo con respecto a las
mquinas de la segunda generacin, construidas a partir de transistores individuales. Se trabaj
con un sistema operativo enorme y extraordinariamente complejo. A pesar de su enorme
tamao y sus problemas el sistema operativo de la lnea IBM 360 y los sistemas operativos
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 21 de 115

similares de esta generacin producidos por otros fabricantes de computadoras realmente


pudieron satisfacer, en forma razonable a la mayora de sus clientes. Tambin popularizaron
varias tcnicas fundamentales, ausentes de los sistemas operativos de la segunda generacin,
de las cuales la ms importante era la de multiprogramacin. (Tanenbaum, 2003, pg. 10)

Otra caracterstica era la capacidad de leer trabajos de las tarjetas al disco, tan
pronto como llegara al cuarto de cmputo. As, siempre que concluyera un trabajo el
sistema operativo poda cargar un nuevo trabajo del disco en la particin que quedara
desocupada y ejecutarlo.

4ta Etapa (1980-Actualidad): Computadoras personales.

Figura 2. Imagen de una Computadora Personal. Fuente: http://es.dreamstime.com/imagen-de-archivo-libre-de-


regal%C3%ADas-ordenador-feliz-image11038636

Un interesante desarrollo que comenz a llevarse a cabo a mediados de la dcada de


los ochenta ha sido el crecimiento de las redes de computadoras personales, con sistemas
operativos de red y sistemas operativos distribuidos. En los sistemas operativos de red, los
usuarios estn conscientes de la existencia de varias computadoras y pueden conectarse con
mquinas remotas y copiar archivos de una maquina a otra. Cada mquina ejecuta su propio
sistema operativo local y tiene su propio usuario.(Tomado de:
http://sistemasoperativos.angelfire.com/html/1.3.html)

Por el contrario, un sistema operativo distribuido es aquel que aparece ante sus usuarios
como un sistema tradicional de un solo procesador, aun cuando est compuesto por
varios procesadores. En un sistema distribuido verdadero, los usuarios no deben ser
conscientes del lugar donde su programa se ejecute o de lugar donde se encuentren sus
archivos; eso debe ser manejado en forma automtica y eficaz por el sistema operativo.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 22 de 115

1.6. Leccin 2: Definiciones y Funciones de los Sistemas Operativos

1.6.1. Definicin de Sistemas Operativos

Entregar una definicin de sistema operativo no es muy fcil, a travs de este


mdulo trataremos de construir una, a continuacin, presentamos algunas de las
definiciones encontradas en diversos medios de informacin: un de esas definiciones
es, Un sistema operativo es un programa que acta como intermediario entre el
usuario y el hardware de un computador y su propsito es proporcionar un entorno en
el cual el usuario pueda ejecutar programas. Tambin encontramos esta definicin ms
corta, Un sistema operativo es el cdigo que acompaa la ejecucin de cualquier
aplicacin, otra definicin dice, un sistema operativo es un programa que dirige y
administra los recursos de un sistema computacional. Provee un conjunto de
cualidades que facilitan el acceso de las aplicaciones a estos recursos, buscando
siempre independencia del hardware; por ltimo y tomando como referencia la pgina
web http://definicion.de/sistema-operativo/#ixzz3qNbOFS9sb , podemos decir que Un
sistema operativo es el conjunto de programas informticos que permite la
administracin eficaz de los recursos de una computadora .

De lo anterior, podemos resumir que un sistema operativo es un programa que


se encarga de Administrar y gestionar los recursos de Hardware y Software que
contiene un computador.

Figura 3. Se muestra las diferentes operaciones que realiza el Sistema Operativo. Fuente:
https://solvasquez.wordpress.com/2011/01/24/definicion-de-sistema-operativo/
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 23 de 115

1.6.2. Funciones del sistema operativo

Son funciones que cumple un sistema operativo:

Administracin del procesador: el sistema operativo administra la distribucin del


procesador entre los distintos programas por medio de un algoritmo de
programacin. El tipo de programador depende completamente del sistema
operativo, segn el objetivo deseado.
Gestin de la memoria de acceso aleatorio: el sistema operativo se encarga de
gestionar el espacio de memoria asignado para cada aplicacin y para cada
usuario, si resulta pertinente. Cuando la memoria fsica es insuficiente, el sistema
operativo puede crear una zona de memoria en el disco duro, denominada
"memoria virtual". La memoria virtual permite ejecutar aplicaciones que requieren
una memoria superior a la memoria RAM disponible en el sistema. Sin embargo,
esta memoria es mucho ms lenta.
Gestin de entradas/salidas: el sistema operativo permite unificar y controlar el
acceso de los programas a los recursos materiales a travs de los drivers (tambin
conocidos como administradores perifricos o de entrada/salida).
Gestin de ejecucin de aplicaciones: el sistema operativo se encarga de que las
aplicaciones se ejecuten sin problemas asignndoles los recursos que stas
necesitan para funcionar. Esto significa que si una aplicacin no responde
correctamente puede "sucumbir".
Administracin de autorizaciones: el sistema operativo se encarga de la seguridad
en relacin con la ejecucin de programas garantizando que los recursos sean
utilizados slo por programas y usuarios que posean las autorizaciones
correspondientes.
Gestin de archivos: el sistema operativo gestiona la lectura y escritura en el
sistema de archivos, y las autorizaciones de acceso a archivos de aplicaciones y
usuarios.
Gestin de la informacin: el sistema operativo proporciona cierta cantidad de
indicadores que pueden utilizarse para diagnosticar el funcionamiento correcto del
equipo.

1.7. Leccin 3: Sistema Computacional

1.7.1. Estructura de un Sistema Computacional

Un Sistema Computacional, no es ms que la convergencia de tecnologa de


hardware y software, como base para la construccin de sistemas informticos. Dentro
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 24 de 115

de los sistemas computaciones, podemos definir 4 componentes importantes, como


son:

1. Hardware: Donde hablamos de los dispositivos de Entrada como: Teclado, Mouse,


etc, tambin los dispositivos de salidas como: pantalla, impresoras, etc. Tambin
debemos mencionar dispositivos como CPU, memorias, Discos Duros, sistemas
Lectores.
2. Sistema Operativo: Es el corazn del Sistemas, es el programa que gestiona y
administra todos los recursos de Hardware y Software aplicativos.
3. Software de Aplicacin: Dentro de esta clasificacin mencionamos programas
ofimticos, juegos, navegadores de Internet, y todos los programas que contenga
el sistema que nos permita desarrollar una actividad dentro del mismo
4. Usuario: Es el trmino que se utiliza para hablar de la persona que manipulara el
sistema, dentro de los usuarios, podemos mencionar usuarios nefitos y usuarios
expertos.

Figura 4. Se muestran los diferentes componontes de un sistema computacional. Fuente: Autor.

1.7.2. Operacin de Un Sistema Computacional


Un sistema computacional se compone de diferentes elementos, dentro de estos
elementos tenemos la CPU y un nmero de dispositivos que tienen acceso a una memoria comn
a travs de un Bus de interconexin. El software controlador o simplemente los controladores de
dispositivos se encargan de determinados elementos como son: discos, audio, mouse, mdem,
etc. (Tomado de: http://documents.mx/documents/301402modulosistemasoperativos.html)

Todos los elementos mencionados anteriormente trabajan de manera


concurrente, ellos Slo compiten por el acceso a la memoria que es comn para todos.
El controlador de memoria provee un acceso sincronizado a la memoria RAM.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 25 de 115

Figura 5. Se muestran los diferentes procesos y la forma en que trabaja el controlador de Interrupciones. Fuente:
http://www.sites.upiicsa.ipn.mx/polilibros/portal/Polilibros/P_terminados/PolilibroFC/Unidad_V/ImagenesU_5/Inte
rrupcionesI_O.JPG

a. Partida

En la partida se necesita un programa inicial. Este programa se llama


bootstrap. El bootstrap inicializa todo el sistema: registros de CPU, controladores
de dispositivos, memoria, etc. El primer proceso que ejecuta el S.O. Se llama init.
Init espera la ocurrencia de algn evento.

b. Interrupciones

Una interrupcin es un evento que altera la secuencia en que el procesador


ejecuta las instrucciones. La interrupcin es generada por el hardware del sistema
de cmputo. El sistema de interrupciones es una parte muy importante de la
arquitectura de un computador. Los sistemas operativos modernos son sistemas
que reaccionan ante interrupciones, es decir, si no hay E/S, ni procesos
ejecutndose, el S.O. est quieto y atento a que ocurra alguna interrupcin.

Qu ocurre con el S.O. ante una interrupcin?

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

1
El sistema operativo guarda el estado del proceso interrumpido. En muchos sistemas esta
informacin se guarda en el bloque de control de proceso interrumpido.
El sistema operativo analiza la interrupcin y transfiere el control a la rutina apropiada para atenderla;
en muchos sistemas actuales el hardware se encarga de esto automticamente.
La rutina del manejador de interrupciones procesa la interrupcin.
Se restablece el estado del proceso interrumpido (o del siguiente proceso).
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 26 de 115

Una interrupcin puede ser iniciada especficamente por un proceso en ejecucin (en
cuyo caso se suele denominar (trap), y se dice que est sincronizada con la operacin del
proceso) o puede ser causada por algn evento que puede estar relacionado o no con el
proceso en ejecucin (en cuyo caso se dice que es asncrona con la operacin del proceso).
(Tomado de: http://sistemasoperativos.angelfire.com/html/1.6.1.html)

Los sistemas orientados hacia las interrupciones pueden sobrecargarse. Si


estas llegan con mucha frecuencia, el sistema no ser capaz de atenderlas. En
algunos sistemas orientados hacia el teclado, cada tecla presionada almacena en
la memoria un cdigo de un byte y genera una interrupcin para informar a la CPU
que un carcter est listo para ser procesado. Si la CPU no puede procesar el dato
antes de que se presione la siguiente tecla, se pierde el primer carcter.

Clases de Interrupciones

Existen seis clases de interrupciones:

Interrupciones SVC (supervisor call, llamadas al supervisor). Son iniciadas por un


proceso en ejecucin que ejecute la instruccin SVC. Una SVC es una peticin generada por el
usuario de un servicio particular del sistema, como realizar una operacin de entrada/salida,
obtener ms memoria o comunicarse con el operador del sistema. El mecanismo de las SVC
ayuda a proteger el sistema operativo de las acciones de los usuarios.vUn usuario no puede
entrar arbitrariamente al sistema operativo, sino que debe solicitar un servicio por medio de una
SVC. El sistema operativo est al tanto de todos los usuarios que intentan rebasar sus lmites y
puede rechazar ciertas peticiones si el usuario no tiene los privilegios necesarios.

Interrupciones de E/S. Son iniciadas por hardware de entrada y salida. Estas


interrupciones indican a la CPU el cambio de estado de un canal o dispositivo. Las
interrupciones de E/S se producen cuando finaliza una operacin de E/S o cuando un
dispositivo pasa al estado listo.

Interrupciones externas. Son causadas por diversos eventos, incluyendo la expiracin


de un Quantum de un reloj que interrumpe, la pulsacin de la tecla de interrupcin de la consola
o la recepcin de una seal procedente de otro procesador en un sistema de mltiples
procesadores.

Interrupciones de reinicio. Se produce cuando se presiona el botn de reinicio de la


PC o cuando llega de otro procesador una instruccin de reinicio en un sistema de
multiprocesamiento.

Interrupciones de verificacin del programa. Son causadas por una amplia clase de
problemas que pueden ocurrir cuando se ejecutan las instrucciones en lenguaje de mquina de

Se ejecuta el proceso interrumpido (o el siguiente proceso).


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 27 de 115

un programa. Dichos problemas incluyen la divisin entre cero, el exceso o defecto de los
nmeros que pueden ser manejados por las operaciones aritmticas, el intento de hacer
referencia a una localidad de memoria que est fuera de los lmites de la memoria real. Muchos
sistemas ofrecen a los usuarios la opcin de especificar las rutinas que deben ejecutarse
cuando ocurra una interrupcin de verificacin del programa.

Interrupciones de verificacin de la mquina. Son ocasionadas por el mal


funcionamiento del hardware. (Tomado de:
https://leoackzion.wordpress.com/2009/03/08/administrador-de-procesos)

Figura 6. Interrupciones; en la figura se muestra la forma en que funcionan las interrupciones al interior de un
equipo de cmputo, Fuente: http://sitiodtodos.galeon.com/Imagen24.jpg

1.7.3. Estructura del sistema de E/S


Para iniciar una operacin de E/S, el S.O. carga registros apropiados de los
controladores de dispositivos. El controlador examina el registro, inicia la operacin e informa de
su trmino a la CPU mediante una interrupcin. La E/S puede ser sincrnica o asincrnica
respecto al proceso que la inicia.(UNAD, 2013. Pag: 30-34)

a. E/S sincrnica y asincrnica

Sincrnica:
Se inicia la operacin de E/S.
Al finalizar la transferencia el control vuelve al proceso usuario.
Asincrnica:
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 28 de 115

El control vuelve al proceso usuario sin necesidad de esperar el trmino de la


transferencia.

b. El acceso directo a memoria (DMA)

Una forma de mejorar el desempeo de un sistema computacional es liberar a la CPU


del control de la transferencia del Buffer del controlador a la memoria principal. De esta forma
se genera slo una interrupcin por bloque en vez de una interrupcin por Byte. (UNAD, 2013.
Pag: 30-34)

Figura 7. Acceso Directo a Memoria. En la figura se muestra un esquema, de la manera como se implementa el acceso
directo a memoria, adems donde se hace un nfasis en los elementos que intervienen en el proceso. Fuente:
http://image.slidesharecdn.com/manejoperifericos-101014115848-phpapp01/95/manejo-perifericos-21-
728.jpg?cb=1297707846

c. La memoria principal

La memoria principal (RAM) y el archivo de registro son el nico


almacenamiento que la CPU puede accesar directamente. Cmo accesar
mediante un programa los dispositivos? Muchos computadores proveen memory-
mapped i/o (dispositivos mapeados en memoria principal).

d. memory-mapped I/O

Esta modalidad considera a los registros de los dispositivos mapeados en


determinadas direcciones de la memoria principal.(UNAD, 2013. Pag: 30-34) El programa slo
debe hacer referencia a determinadas direcciones de memoria para iniciar
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 29 de 115

transferencias. Por ejemplo, en los PC cada punto de la pantalla de video est


mapeada a una determinada direccin de memoria.

e. Discos

Los discos permiten almacenamiento masivo. Adems las velocidades de rotacin


varan entre 60 a 150 Hz. Los tiempos involucrados en una transferencia son:

Tiempo de transferencia (velocidad angular)


Tiempo rotacional
Tiempo de seek

Figura 8. Partes de un Disco Duro. La figura muestra los componentes de un Disco Duro y la distribucin lgica del
mismo. Es muy importante conocer esta informacin ya que nos permite visualizar la manera en que los datos se
guardan en el Disco Duro. Fuente: http://slideplayer.es/slide/1069228/

f. Jerarqua de memoria

En un sistema computacional existe una gran variedad de almacenamiento.


El almacenamiento est organizado jerrquicamente. La jerarqua de
almacenamiento responde al compromiso entre velocidad y costo de
almacenamiento: el costo de almacenar un bit en una memoria muy rpida es
caro.2

g. La memoria cach

2
Otro aspecto a considerar es la volatilidad.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 30 de 115

La memoria cach es una parte muy importante de un sistema


computacional.

La informacin se mantiene en algn sistema de almacenamiento y en la


medida que se usa es copiada en una memoria ms rpida temporalmente.
Cuando se necesita una informacin particular, primero se verifica si est en la
cach. Si est se usa directamente y si no est se extrae del medio de
almacenamiento y se copia en la cach.3

Figura 9. Jerarqua de la Memoria. En la figura se muestra de manera grfica una distribucin jerrquica de las
diferentes memorias de un computador. Fuente;
http://1.bp.blogspot.com/_lRDLW4A68Wc/SwVyP62CosI/AAAAAAAAAOs/MaFUZuzmm-c/s640/Memoria.JPG

1.8. Leccin 4: Proteccin en Sistemas Computacionales

3
Como su tamao es limitado resulta muy importante su administracin .
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 31 de 115

1.8.1. Protecciones de hardware


Los primeros computadores eran sistemas monousuarios. En la medida que los S.O.
evolucionaron fue necesario compartir recursos para mejorar la eficiencia del sistema. El
compartir mejora la eficiencia y aumenta los problemas: (UNAD, 2013. Pag: 30-34

Sistema multiprogramado ante condiciones de error.


Compartir dispositivos.

a. Modo Dual

Para asegurar una correcta operacin se debe proteger al S.O. y los programas frente
a situaciones de error. Esta proteccin se requiere para cualquier recurso compartido.

El hardware provee una importante proteccin llamada Modo Dual Se agrega un bit al
hardware llamado bit de modo para indicar dos modos posibles de operacin.

Los modos de operacin son dos:

1. Modo Monitor: este es el modo en el cual el S.O. toma el control del


computador. Slo en este modo se pueden ejecutar instrucciones llamadas
privilegiadas y accesar estructuras de datos internas del S.O.
2. Modo Usuario: modo normal para cdigo usuario. La falta de apoyo de
hardware de proteccin trae serios problemas en los S.O. Un ejemplo es el
S.O. originalmente escrito para el Intel 8080 que no tiene bit de modo.4

b. Proteccin de E/S

Para prevenir que un usuario realice una operacin ilegal de E/S se definen
instrucciones privilegiadas, de esta forma un usuario no puede ejecutar instrucciones
de E/S directamente. Lo debe hacer a travs del S.O. Nunca un programa usuario
debe tener el control del sistema bajo modo monitor.

c. Proteccin de memoria

Se debe proteger el vector de interrupcin de ser modificado por programas de


usuario. Tambin Se debe proteger la alteracin de rutinas de servicio de interrupcin,
adems se debe proteger tambin un programa usuario de otro programa usuario.

El hardware provee dos registros:

4
En modo usuario, se pueden realizar las operaciones:
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.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 32 de 115

Registro base: Menor direccin legal


Registro lmite: Tamao del espacio protegido.

Figura 10. Proteccin de Memoria. En la figura se muestra una solucin Algortmica de la forma como el sistema
operativo protege la memoria Fuente: http://labsopa.dis.ulpgc.es/so-itig/tema2/img023.GIF

Cada direccin generada en modo usuario es comparada con los registros


Base y Lmite, cada intento por violar una regin protegida genera una interrupcin
al S.O, el cual lo trata como un error fatal. Por supuesto que slo el S.O. puede
cambiar los contenidos de los registros Base y Lmite (se cambian en modo
monitor).

1.9. Leccin 5: Conceptos de Sistemas Operativos

1.9.1. Llamadas al Sistema


Cmo hace un programa de usuario para ejecutar una operacin de E/S (I/O)?, el
usuario debe pedir al monitor que realice la operacin de E/S para l. Esto se realiza mediante
instrucciones conocidas como Llamadas al Sistema, Monitor Call o System Call. Una llamada al
sistema genera una interrupcin (trap) a una direccin especfica del vector de interrupciones,
cuando se ejecuta una llamada al sistema, el hardware la trata como una interrupcin
(excepcin) de software. Los parmetros se pasan va registro o direcciones de
memoria.(UNAD, 2013.Pag:38-41)

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 sistema. Las
llamadas al sistema varan de un sistema operativo a otro (aunque los conceptos
fundamentales tienden a ser anlogos). Las llamadas al sistema se clasifican
normalmente en dos categoras generales:

Aquellas que se relacionan con procesos y las que lo hacen con el sistema de
archivo
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 33 de 115

Por procesos: Un proceso es bsicamente un programa en ejecucin.


Consta del programa ejecutable y la pila o stack del programa, su contador de
programa, apuntador de pila y otros registros, as como la otra informacin que se
necesita para 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 forma
peridica, el sistema operativo decide suspender la ejecucin de un proceso y dar
inicio a la ejecucin de otro, por ejemplo, porque el primero haya tomado ya ms de
su parte del tiempo de la CPU, en terrenos del segundo.5

En muchos sistemas operativos, toda la informacin referente a cada


proceso, diferente del contenido de su espacio de direcciones, se almacena en una
tabla de sistema operativo llamada tabla de procesos, la cual es un arreglo (lista
enlazada) de estructuras, una para cada proceso en existencia.

Por lo tanto, un proceso (suspendido) consta de su espacio de direcciones,


generalmente denominado imagen del ncleo (en honor de las memorias de
imagen de ncleo magntico que se utilizaron en tiempos antiguos) y su registro de
la tabla de procesos, que contiene sus registros entre otras cosas.

Por sistema de archivo: Una funcin importante del S.O. consiste en


ocultar las peculiaridades de los discos y otros dispositivos de E/S y presentar al
programador un modelo abstracto, limpio y agradable de archivos independientes
del 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 despus de que se haya ledo debe cerrarse, de modo que las
llamadas se dan para hacer estas cosas.

Antes de que un archivo pueda leerse o escribirse, ste debe abrirse, en


cuyo instante se verifican los permisos. Si se permite el acceso, el sistema produce
un entero pequeo llamado descriptor del archivo para utilizarse en operaciones
subsiguientes. Si se prohbe el acceso, se produce un cdigo de error.

1.9.2. Shell (intrprete de comandos)


El sistema operativo es el cdigo que realiza las llamadas al sistema. Los editores,
compiladores, ensambladores, enlazadores e intrpretes de comandos definitivamente no son
parte del sistema operativo, aunque son importantes y tiles. El Shell es el intrprete de
comandos, a pesar de no ser parte del sistema operativo (est ntimamente ligado con este),
hace un uso intenso de muchas caractersticas del sistema operativo y por tanto sirve como un
buen ejemplo de la forma en que se pueden utilizar las llamadas al sistema. Tambin es la

5
Cuando un proceso se suspende temporalmente, debe reiniciarse despus exactamente en el mismo
estado en que se encontraba cuando se detuvo. Esto significa que toda la informacin relativa al proceso
debe guardarse en forma explcita en algn lugar durante la suspensin.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 34 de 115

interfaz primaria entre un usuario situado frente a su terminal y el sistema operativo.(UNAD,


2013.Pag:38-41)

Cuando algn usuario entra al sistema, un "shell" se inicia. El shell tiene la


terminal como entrada y como salida estndar. Este da inicio al teclear solicitud de
entrada, carcter como un signo de pesos, el cual indica al usuario que el Shell
est esperando un comando. En MS-DOS normalmente aparece la letra de la
unidad, seguida por dos puntos (:), el nombre del directorio en que se encuentra y
por ltimo el signo de "mayor que" (>). Esto es: C:\>. Las versiones grficas de
Windows tienen la opcin de Ejecutar, el cual es el Shell del sistema, normalmente
en Inicio Opcin ejecutar.

1.9.3. Procesos
Uno de los conceptos ms importantes que gira entorno a un sistema
operativo es el de proceso. Un proceso es un programa en ejecucin junto con el
entorno asociado (registros, variables, etc.).

El corazn de un sistema operativo es el ncleo, un programa de control que


reacciona ante cualquier interrupcin de eventos externos y que da servicio a los
procesos, crendolos, terminndolos y respondiendo a cualquier peticin de
servicio por parte de los mismos. Un proceso es una actividad que se apoya en
datos, recursos, un estado en cada momento y un programa.6

Cada proceso contiene, entre otros:

Mapeo en memoria: Dnde est almacenado el .text, .data y el stack del


proceso.
El estado de registros.
Tabla de archivos en uso: Estado de cada archivo
Credenciales (UID, GID, EUID, GUID). Identificadores de usuarios.
Otros (PID, PPID, contadores, estados, prioridades). Identificadores de
procesos.

El SO provee medios de comunicacin entre procesos. El proceso se comunica con el


SO mediante las llamadas al sistema (syscalls), para, por ejemplo:

Abrir un archivo
Alocar ms memoria
Crear un nuevo archivo
Sobrescribir su .text

6
Los procesos pueden crear nuevos procesos, y heredar algunos atributos de su padre.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 35 de 115

Otro medio de comunicacin son las seales. (Anlogas a las


interrupciones, pero a nivel software). Un programa puede mandar seales a otros
programas, el SO puede mandar seales al programa.

1.9.4. Archivos
Un Archivo es una unidad lgica de almacenamiento. Es una abstraccin
sobre el dispositivo fsico (disco rgido, floppy, etc).

Conjunto de informacin relacionada guardada en un dispositivo secundario.


Est asociado a dispositivos de almacenamiento no voltiles. Para el usuario es un
concepto de unidad de almacenamiento permanente, organizada bajo un esquema
jerrquico de directorios, que le permite tener un orden lgico y control sobre su
informacin.

Los atributos normales de un archivo son: nombre, tipo, tamao, tiempos y


credenciales. El concepto de archivos y directorios se encuentra en prcticamente
todos los sistemas operativos. La organizacin de los archivos posee un sistema
jerrquico, Cada archivo se identifica con su directorio y nombre. Existe un
directorio padre de todos los directorios. Las referencias a archivos pueden ser:

Absolutas: Referidas desde el directorio padre.

Relativas: Referidas al directorio actual.

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

1.9.5. Definiciones
a. Deadlocks (Abrazos mortales): Cuando dos o ms procesos se estn
esperando mutuamente, en una situacin sin salida.
b. Memory Management (Manejo de Memoria): Estrategia de determinado S.O
para el uso de memoria. Los problemas a resolver son proteccin y mapeo de
programas. Ej. Memoria Virtual.

1.10. Tipos de Sistemas Operativos


De acuerdo con lo comentado por (Pinto, 2014) podemos decir que los sistemas
operativos, se pueden clasificar atendiendo a los criterios de usos o de aplicacin que
se les da. Entre otros podemos mencionar la forma en que administran tareas, usuarios
o la estructura interna.

1.11. Administracin De Tareas


Monotarea: Los sistemas operativos monotarea son aquellos que slo permiten
una tarea a la vez por usuario. Puede darse el caso de un sistema multiusuario y
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 36 de 115

monotarea, en el cual se admiten varios usuarios al mismo tiempo, pero cada uno de
ellos, puede estar haciendo slo una tarea a la vez.

Multitarea: Un sistema operativo multitarea es aquel que permite al usuario


estar realizando varios trabajos al mismo tiempo. Por ejemplo, puede estar editando el
cdigo fuente de un programa durante su depuracin mientras compila otro programa,
a la vez que est recibiendo correo electrnico en un proceso en background. Es
comn encontrar en ellos interfaces graficas orientadas al uso de mens y al ratn, lo
que permite un rpido intercambio entre las tareas para el usuario, mejorando para su
productividad.

Multiproceso: Los sistemas operativos multiproceso son los que permiten


realizar varios procesos simultneamente y, por tanto, son capaces de ejecutar
varias tareas al mismo tiempo. Dentro de los sistemas multiproceso, se encuentran
los sistemas simtricos, que son los que distribuyen la carga de procesamiento por
igual entre todos los procesadores existentes. Sin embargo, los sistemas
multiproceso asimtricos, como Windows NT, 2000 y 2003 Server, asignan una
tarea por procesador existente, segn su prioridad, y el resto de tareas (de baja
prioridad) se ejecutan en un nico procesador.7

Cuando se trabaja de manera simtrica, los procesos o partes de ellos


(threads) son enviados indistintamente a cualquiera de los procesadores
disponibles, teniendo, tericamente, una mejor distribucin y equilibrio en la carga
de trabajo bajo este esquema. Se dice que un thread es la parte activa en memoria
y corriendo de un proceso, lo cual puede consistir de un rea de memoria, un
conjunto de registros con valores especficos, la pila y otros valores de contexto.

1.11.1. Administracin De Usuarios


Monousuario: Los sistemas operativos monousuario son aquellos que
nicamente soportan un usuario a la vez, sin importar el nmero de procesadores
que tenga la computadora o el nmero de procesos o tareas que el usuario pueda
ejecutar en un mismo instante de tiempo. Las computadoras personales
tpicamente se han clasificado en este rengln.

Multiusuario: Los sistemas operativos multiusuario son capaces de dar


servicio a ms de un usuario a la vez, ya sea por medio de varias terminales
conectadas a la computadora o por medio de sesiones remotas en una red de

7
Por ejemplo, un sistema biprocesador asimtrico ejecutara una sola tarea en un procesador y el resto en el
otro. Cuando se trabaja de manera asimtrica, el sistema operativo selecciona a uno de los procesadores el
cual jugar el papel de procesador maestro y servir como pivote para distribuir la carga a los dems
procesadores, que reciben el nombre de esclavos.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 37 de 115

comunicaciones. No importa el nmero de procesadores en la mquina ni el


nmero de procesos que cada usuario puede ejecutar simultneamente.

1.11.2. Manejo De Recursos O Acceso A Servicios

Centralizados: Hasta que los computadores personales no tuvieron un


precio accesible y suficiente potencia, la mayora de los sistemas (UNIX) utilizaban
el modelo de proceso centralizado. Con este tipo de modelo los computadores
mainframe se encargaban de todo el procesamiento y los usuarios manejaban
nicamente terminales brutas (es decir, no disponan de memoria, ni
procesador).Actualmente se siguen utilizando los sistemas centralizados (como los
Terminal Services de Microsoft) pero las terminales dejan de ser brutas y pueden
realizar otras muchas tareas por s mismas, Los principales sistemas operativos
centralizados en el mercado son: z/OS,mOS/390, Linux, TPF, VSE y ESA.

Sistemas De Red: Estos sistemas operativos son aquellos que mantienen a


dos o ms computadores unidas a travs de algn medio de comunicacin (fsico o
no), con el objetivo primordial de poder compartir los diferentes recursos y la
informacin del sistema. En este entorno, cada computador mantiene su propio
sistema operativo y su propio sistema de archivos local. El primer sistema operativo
de red estaba enfocado a equipos con un procesador Motorola 68000, pasando
posteriormente a procesadores Intel. Los sistemas operativos de red usados ms
ampliamente son: Novell NetWare, Personal NetWare, LAN Manager, Windows NT
Server, Windows 2000 Server, UNIX, LINUX, LANtastic, etc.

Distribuidos: Los sistemas operativos distribuidos son sistemas cuasi-


independientes que permiten distribuir los trabajos, tareas o procesos entre un
conjunto de procesadores. Puede ocurrir que este conjunto de procesadores se
encuentre en el mismo equipo o en equipos distintos (siendo, en este ltimo caso,
transparente para el usuario).

Existen dos esquemas bsicos:

Un sistema fuertemente acoplado es aquel que comparte la memoria y un reloj


global, cuyos tiempos de acceso son similares para todos los procesadores.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 38 de 115

Un sistema dbilmente acoplado es aquel en el que los procesadores no


comparten ni memoria ni reloj, ya que cada uno de ellos cuenta con memoria
local.

1.12. Leccin 7. Estructura de los Sistemas Operativos

1.12.1. Estructura de los sistemas operativos


Si bien no todos los sistemas operativos tienen la misma estructura, la
mayora de los sistemas operativos modernos poseen una misma estructura. El
Kernel consiste en la parte principal del cdigo del sistema operativo, el cual se
encarga de controlar y administrar los servicios y peticiones de recursos y de
hardware con respecto a uno o varios procesos. En los diseos en que el ncleo
est distribuido en varios niveles de jerarqua, elegir qu funcin colocar en cada
nivel requiere un anlisis cuidadoso. En tales diseos, con frecuencia slo se
permite hacer llamadas a funciones situadas jerrquicamente por debajo de quien
hace la llamada; es decir, cada nivel slo puede llamar a las funciones que estn
colocadas en el nivel inmediato inferior.

De esta forma una estructura general de un sistema operativo sera:

Arriba del ncleo, en jerarqua, se encuentran los diferentes procesos del


sistema operativo que trabajan en apoyo de los procesos de usuario, que se
encargan en la prctica de supervisar las operaciones de entrada/salida de los
dispositivos del sistema para beneficio de los diversos usuarios.

Esta estructura sera:

a. Administrador de procesos

Un programa no hace nada a menos que sus instrucciones sean ejecutadas


por la CPU. Un proceso necesita ciertos recursos, tiempo de CPU, memoria,
archivos y dispositivos de E/S, para completar sus tareas. Estos recursos son
reservados cuando se crea el proceso o bien se otorgan en tiempo de ejecucin.

El sistema operativo es responsable de:

La creacin y eliminacin de procesos de sistema y de usuarios.


Detener y continuar ejecutando un proceso.
Proveer mecanismos para sincronizar procesos.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 39 de 115

Proveer mecanismos para comunicar procesos.


Proveer mecanismos para proteger procesos.

b. Administrador de memoria

El procesador central lee y escribe datos directamente en memoria. La


memoria principal es generalmente el nico dispositivo de almacenamiento que la
CPU puede acceder directamente. Por ejemplo, para que la CPU procese datos del
disco, primero se deben cargar stos en la memoria.

El sistema operativo es responsable de:

Mantener historial de las partes de memoria que pueden ser accedidas


concurrentemente y que procesos pueden hacerlo.
Decidir qu procesos se cargarn en memoria cuando se encuentre lugar
disponible en sta.
Asignar y quitar espacio de memoria segn las necesidades.

c. Administrador de almacenamiento secundario

Como la memoria principal es muy chica como para almacenar todos los
datos y programas necesarios, la computadora posee un almacenamiento
secundario para volcar los datos de memoria no utilizados. Las computadoras
modernas utilizan el disco para este fin. La mayora de los programas se
almacenan en disco hasta que son cargados en memoria.

El sistema operativo es responsable de:

Administrar el espacio libre.


Asignar espacio de almacenamiento.
Organizar el disco.

d. Administrador de sistemas de E/S

Uno de los propsitos del sistema operativo es ocultar las peculiaridades de los
dispositivos de hardware al usuario.

Los sistemas de E/S consisten de:

Un sistema de buffer intermedio.


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 40 de 115

Una interfaz general.


Manejadores de dispositivos de hardware especficos.

e. Administrador de archivos

El administrador de archivos es uno de los componentes ms visibles de un


sistema operativo. Las computadoras pueden almacenar informacin en diferentes
tipos de medios fsicos. Cintas magnticas, discos magnticos y discos pticos, son
los ms comunes. Cada uno de estos medios tiene sus propias caractersticas y
organizacin fsica. Cada medio se controla por un dispositivo. Las propiedades
incluyen velocidad, capacidad, velocidad de transferencia de datos y mtodo de
acceso (Secuencial o Random). Por conveniencia el sistema operativo provee una
vista lgica uniforme de la informacin, independientemente de las caractersticas
de cada dispositivo, utiliza la unidad archivo. Un archivo es un grupo de informacin
relacionada definida por su creador (programas o datos).

El sistema operativo es responsable de:

Creacin y eliminacin de archivos.


Creacin y eliminacin de directorios.
Soporte de primitivas (instrucciones) para manipular archivos y directorios.
Mapeo de archivos dentro de almacenamiento secundarios.
Resguardar archivos en medios de almacenamiento estables.

f. Sistema de proteccin

Si un sistema tiene mltiples usuarios y permite mltiples usuarios


concurrentes, los procesos deben estar protegidos de otras actividades. Para tal
propsito se provee de mecanismos que aseguran que los archivos, segmentos de
memoria, CPU y otros recursos pueden ser operados slo por aquellos procesos
que tienen permiso otorgado por el sistema operativo. Por proteccin se entiende a
los mecanismos para controlar el acceso de programas, procesos y usuario a los
recursos definidos por el sistema.

g. Networking

Un sistema distribuido es una coleccin de procesos que no comparten


memoria o recursos. Cada procesador tiene su propia memoria local, y los
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 41 de 115

procesadores se comunican con otros a travs de varias lneas de comunicacin


como ser buses de alta velocidad o lneas telefnicas.

Los procesadores en el sistema se conectan a travs de redes de


comunicacin, las cuales se pueden configurar de muchas maneras. La red puede
est completa o parcialmente conectada. En un sistema distribuido los recursos se
comparten entre varias estaciones, los sistemas operativos de red se encargan de
administrar el acceso a estos recursos.

h. Sistema intrprete de comandos

Uno de las funciones ms importantes de un sistema operativo es el


intrprete de comandos, que es la interfaz entre el usuario y el sistema operativo.
Algunos sistemas operativos incluyen el intrprete en el kernel. Otros como el DOS o
UNIX, poseen un programa especial para cumplir esta funcin que se ejecuta cuando
se inicia el sistema.

1.13. Leccin 8. Ncleos del Sistema Operativo 62

1.13.1. Ncleos de sistemas operativos


El Ncleo (o kernel) es una coleccin de mdulos de software que se ejecutan en
forma privilegiada lo que significa que tienen acceso pleno a los recursos del sistema. El
ncleo normalmente representa slo una pequea parte de lo que por lo general se piensa que
es todo el sistema operativo, pero es tal vez el cdigo que ms se utiliza. Por esta razn, el
ncleo reside por lo regular en la memoria principal, mientras que otras partes del sistema
operativo son cargadas en la memoria principal slo cuando se necesitan. (Tomado de: http://eq2-
sistemasoperativos.blogspot.com.co/2012/04/16-nucleo-sistemas-operativos.html)

El ncleo de un sistema operativo normalmente el cdigo necesario para realizar las


siguientes funciones:

Manejo de interrupciones.
Creacin y destruccin de procesos.
Cambio de estado de los procesos.
Despacho.
Suspensin y reanudacin de procesos.
Sincronizacin de procesos.
Comunicacin entre procesos.
Manipulacin de los bloques de control de procesos.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 42 de 115

Apoyo para las actividades de entrada/salida.


Apoyo para asignacin y liberacin de memoria.
Apoyo para el sistema de archivos.
Apoyo para el mecanismo de llamada y retorno de un procedimiento.
Apoyo para ciertas funciones de contabilidad del sistema.

El Kernel consiste en la parte principal del cdigo del sistema operativo, el cual
se encargan de controlar y administrar los servicios y peticiones de recursos y de
hardware con respecto a uno o varios procesos, este se divide en 5 capas:

Nivel 1. Procesador. (Ncleo)

Se encarga de activar los cuantum de tiempo para cada uno de los procesos, creando
interrupciones de hardware cuando no son respetadas. Se introduce la nocin de
proceso como un programa en ejecucin.8

Esto exige salvaguardar los registros del hardware, de modo que la ejecucin pueda
cambiar de un proceso a otro. Adems, si los procesos necesitan cooperar, hace falta
algn mtodo de sincronizacin. Una de las tcnicas ms simples, pero un concepto
importante en el diseo de sistemas operativos, es el semforo.

Objetos proceso y semforo


Operaciones tpicas crear, destruir, suspender, reanudar, sealizar y
esperar

Nivel 2. Entrada/Salida.

Proporciona las facilidades para poder utilizar los dispositivos de E/S


requeridos por procesos, tiene que ver con los dispositivos de almacenamiento
secundario. En este nivel se sitan las funciones de ubicacin de las cabezas de
lectura y escritura, y se producen las transferencias reales de bloques. Este nivel
se apoya en el nivel anterior para planificar las operaciones y notificar al proceso
que hizo la solicitud que la operacin ha culminado.

Objetos bloques de datos


Operaciones tpicas leer, escribir, asignar y liberar

Nivel 3. Dispositivos de Entrada y Salida.

El cdigo destinado a manejar la entrada y salida de los diferentes


perifricos en un sistema operativo es de una extensin considerable y sumamente

8
Entre los requisitos fundamentales de un sistema operativo que ofrezca soporte para mltiples procesos se
incluye la capacidad de suspender y reanudar los procesos.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 43 de 115

complejo. Resuelve las necesidades de sincronizar, atrapar interrupciones y ofrecer


llamadas al sistema para los programadores.

Nivel 4. Sistema de Archivos.

Proporciona la facilidad para el almacenamiento a largo plazo y


manipulacin de archivos con nombre, va asignando espacio y acceso de datos en
memoria. Da soporte al almacenamiento a largo plazo de los archivos con nombre.

En este nivel, los datos del almacenamiento secundario se contemplan en


trminos de entidades abstractas de longitud variable, en contraste con el enfoque
orientado al hardware del nivel de E/S bsicas, en trminos de pistas, sectores y
bloques de tamao fijo.

Objetos archivos dispositivos


Operaciones tpicas crear, destruir, abrir, cerrar, leer y escribir.

Nivel 5. Informacin o Aplicacin o Intrprete de Lenguajes.

Facilita la comunicacin con los lenguajes y el sistema operativo para


aceptar las ordenes en cada una de las aplicaciones. Cuando se solicitan
ejecutando un programa el software de este nivel crea el ambiente de trabajo e
invoca a los procesos correspondientes. Ofrece al usuario una interfaz con el
sistema operativo. Se denomina shell y separa al usuario de los detalles, le
presenta el sistema operativo como un simple conjunto de servicios. El shell acepta
las rdenes del usuario o las sentencias de control de trabajos, las interpreta, crea
y controla los procesos segn sea necesario.

El intrprete de comandos representa la interfaz entre el usuario y el sistema


operativo. Algunos sistemas operativos incluyen el intrprete en el kernel. Otros como
el DOS o UNIX, poseen un programa especial para cumplir esta funcin que se
ejecuta cuando se inicia el sistema.

Objetos datos del entorno


Operaciones tpicas sentencias del lenguaje de rdenes.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 44 de 115

1.14. Leccin 9. Arquitectura cliente servidor

1.14.1. Antecedentes de la Arquitectura Cliente/Servidor


Existen diversos puntos de vista sobre la manera en que debera efectuarse
el procesamiento de datos, aunque la mayora que opina, coincide en que nos
encontramos en medio de un proceso de evolucin que se prolongar todava por
algunos aos y que cambiar la forma en que obtenemos y utilizamos la
informacin almacenada electrnicamente.

El principal motivo detrs de esta evolucin es la necesidad que tienen las


organizaciones (empresas o instituciones pblicas o privadas), de realizar sus
operaciones ms gil y eficientemente, debido a la creciente presin competitiva a
la que estn sometidas, lo cual se traduce en la necesidad de que su personal sea
ms productivo, que se reduzcan los costos y gastos de operacin, al mismo
tiempo que se generan productos y servicios ms rpidamente y con mejor calidad.

En este contexto, es necesario establecer una infraestructura de


procesamiento de informacin, que cuente con los elementos requeridos para
proveer informacin adecuada, exacta y oportuna en la toma de decisiones y para
proporcionar un mejor servicio a los clientes. El modelo Cliente/Servidor rene las
caractersticas necesarias para proveer esta infraestructura, independientemente
del tamao y complejidad de las operaciones de las organizaciones pblicas o
privadas y, consecuentemente desempea un papel importante en este proceso de
evolucin.

Evolucin de la arquitectura cliente servidor

La era de la computadora central: Desde sus inicios el modelo de


administracin de datos a travs de computadoras se basaba en el uso de
terminales remotas, que se conectaban de manera directa a una computadora
central. Dicha computadora central se encargaba de prestar servicios
caracterizados por que cada servicio se prestaba solo a un grupo exclusivo de
usuarios.

La era de las computadoras dedicadas: Esta es la era en la que cada


servicio empleaba su propia computadora que permita que los usuarios de ese
servicio se conectaran directamente. Esto es consecuencia de la aparicin de
computadoras pequeas, de fcil uso, ms baratas y ms poderosas de las
convencionales.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 45 de 115

La era de la conexin libre: Hace ms de 10 aos que las computadoras


escritorio aparecieron de manera masiva. Esto permiti que parte apreciable de la
carga de trabajo de cmputo tanto en el mbito de clculo como en el mbito de la
presentacin se lleven a cabo desde el escritorio del usuario. En muchos de los
casos el usuario obtiene la informacin que necesita de alguna computadora de
servicio. Estas computadoras de escritorio se conectan a las computadoras de
servicio empleando software que permite la emulacin de algn tipo de terminal. En
otros de los casos se les transfiere la informacin haciendo uso de recursos
magnticos o por trascripcin.

La era del cmputo a travs de redes: Esta es la era que est basada en el
concepto de redes de computadoras, en la que la informacin reside en una o
varias computadoras, los usuarios de esta informacin hacen uso de computadoras
para laborar y todas ellas se encuentran conectadas entre s. Esto brinda la
posibilidad de que todos los usuarios puedan acceder a la informacin de todas las
computadoras y a la vez que los diversos sistemas intercambien informacin.

La era de la arquitectura cliente servidor: En esta arquitectura la


computadora de cada uno de los usuarios, llamada cliente, produce una demanda
de informacin a cualquiera de las computadoras que proporcionan informacin,
conocidas como servidores. Estos ltimos responden a la demanda del cliente que
la produjo, los clientes y los servidores pueden estar conectados a una red local o
una red amplia, como la que se puede implementar en una empresa o a una red
mundial como lo es la Internet. Bajo este modelo cada usuario tiene la libertad de
obtener la informacin que requiera en un momento dado proveniente de una o
varias fuentes locales o distantes y de procesarla como segn le convenga. Los
distintos servidores tambin pueden intercambiar informacin dentro de esta
arquitectura.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 46 de 115

1.14.2. Definicin Cliente/Servidor


La tecnologa Cliente/Servidor es el procesamiento cooperativo de la informacin por
medio de un conjunto de procesadores, en el cual mltiples clientes, distribuidos
geogrficamente, solicitan requerimientos a uno o ms servidores centrales. Desde el punto de
vista funcional, se puede definir la computacin Cliente/Servidor como una arquitectura
distribuida que permite a los usuarios finales obtener acceso a la informacin de forma
transparente an en entornos multiplataforma. Se trata pues, de la arquitectura ms extendida
en la realizacin de Sistemas Distribuidos. Un sistema Cliente/Servidor es un Sistema de
Informacin distribuido basado en las siguientes caractersticas :(Tomado de:
http://oposicionestic.blogspot.com.co/2011/06/arquitectura-cliente-servidor.html )

Servicio: unidad bsica de diseo. El servidor los proporciona y el cliente los utiliza.

Recursos compartidos: Muchos clientes utilizan los mismos servidores y, a travs


de ellos, comparten tanto recursos lgicos como fsicos.
Protocolos asimtricos: Los clientes inician conversaciones. Los servidores
esperan su establecimiento pasivamente.
Transparencia de localizacin fsica de los servidores y clientes: El cliente no tiene
por qu saber dnde se encuentra situado el recurso que desea utilizar.
Independencia de la plataforma HW y SW que se emplee.
Sistemas dbilmente acoplados. Interaccin basada en envo de mensajes.
Encapsulamiento de servicios. Los detalles de la implementacin de un servicio
son transparentes al cliente.
Escalabilidad horizontal (aadir clientes) y vertical (ampliar potencia de los
servidores).
Integridad: Datos y programas centralizados en servidores facilitan su integridad y
mantenimiento.

En el modelo usual Cliente/Servidor, un servidor, (daemon en la terminologa


sajona basada en sistemas UNIX/LINUX, traducido como "demonio") se activa y
espera las solicitudes de los clientes. Habitualmente, programas cliente mltiples
comparten los servicios de un programa servidor comn. Tanto los programas cliente
como los servidores son con frecuencia parte de un programa o aplicacin mayores.

El Esquema de funcionamiento de un Sistema Cliente/Servidor sera:

1. El cliente solicita una informacin al servidor.

2. El servidor recibe la peticin del cliente.

3. El servidor procesa dicha solicitud.

4. El servidor enva el resultado obtenido al cliente.

5. El cliente recibe el resultado y lo procesa.


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 47 de 115

Figura 11. Estructura Cliente/Servidor. En la figura se muestra un esquema de la forma en que trabaja la estructura
Cliente/Servidor. Fuente: http://www.ecured.cu/images/5/51/Cliente_Servidor.JPG

1.15. Leccin 10. Componentes y Caracterstica de la Estructura


Cliente/Servidor

1.15.1. Componentes esenciales de la infraestructura Cliente/Servidor

Una infraestructura Cliente/Servidor consta de tres componentes esenciales,


todos ellos de igual importancia y estrechamente ligados:

1.15.1.1. Plataforma operativa

La plataforma deber soportar todos los modelos de distribucin


Cliente/Servidor, todos los servicios de comunicacin, y deber utilizar,
preferentemente, componentes estndar de la industria para los servicios de
distribucin. Los desarrollos propios deben coexistir con las aplicaciones estndar y
su integracin deber ser imperceptible para el usuario. Igualmente, podrn
acomodarse programas escritos utilizando diferentes tecnologas y herramientas.

1.15.1.2. Entorno de desarrollo de aplicaciones

Debe elegirse despus de la plataforma operativa. Aunque es conveniente


evitar la proliferacin de herramientas de desarrollo, se garantizar que el enlace
entre stas y el middleware no sea excesivamente rgido. Ser posible utilizar
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 48 de 115

diferentes herramientas para desarrollar partes de una aplicacin. Un entorno de


aplicacin incremental, debe posibilitar la coexistencia de procesos cliente y
servidor desarrollados con distintos lenguajes de programacin y/o herramientas,
as como utilizar distintas tecnologas (por ejemplo, lenguaje procedural, lenguaje
orientado a objetos, multimedia), y que han sido puestas en explotacin en distintos
momentos del tiempo.

1.15.1.3. Gestin de sistemas

Estas funciones aumentan considerablemente el costo de una solucin, pero


no se pueden evitar. Siempre deben adaptarse a las necesidades de la
organizacin, y al decidir la plataforma operativa y el entorno de desarrollo, es
decir, en las primeras fases de la definicin de la solucin, merece la pena
considerar los aspectos siguientes:

Qu necesitamos gestionar?
Dnde estarn situados los procesadores y estaciones de trabajo?
Cuntos tipos distintos se soportarn?
Qu tipo de soporte es necesario y quin lo proporciona?
Cmo definir una infraestructura Cliente/Servidor?

Si no se acomete el trabajo de definir una infraestructura Cliente/Servidor.


Se corre el riesgo de que surjan en la empresa una serie de soluciones
Cliente/Servidor aisladas. No es en absoluto recomendable el intento de una
infraestructura completa desde el principio, ya que las tecnologas pueden no
responder a tiempo a las necesidades prioritarias del negocio. El enfoque ms
adecuado est en un sistema y una plataforma de aplicacin conceptual, y una
arquitectura construida incrementalmente y ampliada a medida que se desarrollan
nuevas aplicaciones.

La plataforma operativa, el middleware y el entorno de desarrollo de


aplicaciones estn relacionados entre s. Las necesidades de apertura pueden
condicionar la eleccin de la plataforma o del middleware, de igual manera que lo
condiciona una determinada herramienta de desarrollo. El software de aplicacin
puede influir en la plataforma del sistema, y el tiempo disponible para la primera
aplicacin puede implicar algn tipo de compromiso. Por lo tanto, es necesario fijar
los objetivos y el modo de conseguirlos en cada caso concreto: una metodologa de
infraestructura para sistemas distribuidos que permita definir una infraestructura
para el sistema Cliente/Servidor y evale la puesta en marcha del proyecto sobre
una base racional.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 49 de 115

1.15.2. Caractersticas fsicas

La idea principal consiste en aprovechar la potencia de los ordenadores


personales para realizar, sobre todo, los servicios de presentacin y, segn el nivel,
algunos procesos o incluso algn acceso a datos locales. De esta forma se
descarga al servidor de ciertas tareas para que pueda realizar otras ms
rpidamente.

Tambin existe una plataforma de servidores que sustituye al ordenador


central tradicional y que da servicio a los clientes autorizados. Incluso a veces el
antiguo ordenador central se integra en dicha plataforma como un servidor ms.
Estos servidores suelen estar especializados por funciones (seguridad, clculo,
bases de datos, comunicaciones, etc.), aunque, dependiendo de las dimensiones
de la instalacin se pueden reunir en un servidor una o varias de estas funciones.

Figura 12. Caractersticas Fsicas Estructura Cliente/Servidor. En la figura se muestra los dispositivos principales de
esta estructura, adems se muestran los sentidos en los que se aplican las solicitudes y respuestas. Fuente:
http://vignette2.wikia.nocookie.net/sandramarramirez/images/c/c7/20070821klpinginf_30_Ees_SCO.png/revision/la
test?cb=20100219223327&path-prefix=es

Las unidades de almacenamiento masivo en esta arquitectura, se


caracterizan por incorporar elementos de proteccin que evitan la prdida de datos
y permiten multitud de accesos simultneos (alta velocidad, niveles RAID, etc.).
Para la comunicacin de todos estos elementos se emplea un sistema de red que
se encarga de transmitir la informacin entre clientes y servidores. Fsicamente
consiste en un cableado (coaxial, par trenzado, fibra ptica, etc.) o en conexiones
mediante seales de radio o infrarrojas, dependiendo de que la red sea local (LAN
o RAL), metropolitana (MAN) o de rea extensa (WAN).
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 50 de 115

Para la comunicacin de los procesos con la red se emplea un tipo de


equipo lgico denominado middleware que controla las conversaciones. Su funcin
es independizar ambos procesos (cliente y servidor). La interface que presenta es
la estndar de los servicios de red, hace que los procesos "piensen" en todo
momento que se estn comunicando con una red.

1.15.3. Caractersticas lgicas

Una de las principales aportaciones de esta arquitectura a los sistemas de


informacin, es la interface grfica de usuario (GUI). Gracias a ella se dispone de
un manejo ms fcil e intuitivo de las aplicaciones mediante el uso de un dispositivo
tipo ratn. En esta arquitectura los datos se presentan, editan y validan en la parte
de la aplicacin cliente.

En cuanto a los datos, cabe sealar que en la arquitectura cliente / servidor


se evitan las duplicidades (copias y comparaciones de datos), teniendo siempre
una imagen nica y correcta de los mismos, disponible en lnea para su uso
inmediato. Todo esto tiene como fin que el usuario de un sistema de informacin
soportado por una arquitectura cliente / servidor, trabaje desde su estacin de
trabajo con distintos datos y aplicaciones, sin importarle dnde estn o dnde se
ejecuta cada uno de ellos.

1.16. Leccin 11. Anlisis de las Variantes de la Arquitectura


Cliente/Servidor

1.16.1. Anlisis de las diferentes variantes de la arquitectura Cliente/Servidor

Existe un conjunto de variantes de la arquitectura Cliente/Servidor,


dependiendo de dnde se ejecutan los diferentes elementos involucrados:

Administracin de los datos.


Lgica de la aplicacin.
Lgica de la presentacin.

1.16.2. Presentacin distribuida


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 51 de 115

La primera variante que tiene algn inters es la llamada presentacin


distribuida, donde tanto la administracin de los datos, como la lgica de la
aplicacin, funcionan en el servidor y la lgica de la presentacin se divide entre el
servidor (parte preponderante) y el cliente (donde simplemente se muestra).

Esta alternativa es extremadamente simple, porque generalmente no implica


programacin alguna. Qu se obtiene con ella? Una mejor presentacin, desde el
punto de vista estrictamente cosmtico, y ciertas capacidades mnimas para
vincular las transacciones clsicas con el entorno Windows.

1.16.2.1. Administracin de datos remota

Una segunda alternativa plausible es la administracin de datos remota,


donde dicha administracin de los datos se hace en el servidor, mientras que tanto
la lgica de la aplicacin, como la de la presentacin, funcionan en el Cliente.
Desde el punto de vista de las necesidades de potencia de procesamiento, esta
variante es la ptima. Se minimiza el costo del procesamiento en el Servidor (slo
se dedica a administrar la base de datos, no participando en la lgica de la
aplicacin que, cada vez, consume ms recursos), mientras que se aumenta en el
cliente, donde es irrelevante, teniendo en cuenta las potencias de Cliente
necesarias, de todas maneras, para soportar el sistema operativo Windows.

El otro elemento a tener en cuenta es el trnsito de datos en la red. Esta


variante podr ser ptima, buena, mediocre o psima, de acuerdo a este trnsito.
En el caso de transacciones o consultas activas, donde prcticamente todos los
registros seleccionados son necesarios para configurar las pantallas a mostrar,
este esquema es ptimo.

Por otro lado, en el caso de programas "batch", donde en realidad no se


muestra nada, esta alternativa es tericamente indefendible (no obstante, si el
cliente est ligado al servidor por una red de alta velocidad, los resultados
prcticos, a menudo, son aceptables). Una variante interesante es la de
complementar el procesamiento en el cliente con procesamiento en el servidor.
Este objetivo se puede abordar de dos maneras bastante diferentes: La primera es
el uso de "Stored Procedures" y "Triggers" asociados al servidor de base de datos.

1.16.2.2. Three Tiered Architecture


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 52 de 115

En este caso se tiene total libertad para escoger dnde se coloca la lgica
de la aplicacin: en el cliente, en el servidor de base de datos, o en otro(s)
servidor(es). Tambin se tiene total libertad para la eleccin del lenguaje a utilizar.
Se utiliza un lenguaje de tipo general (probablemente C) por lo que no existen
restricciones de funcionalidad. Los programas sern ptimos desde el punto de
vista de la performance. Tambin deber implementarse especialmente el Call
remoto, lo que seguramente se har de una forma ms libre que los Remote
Procedure Call actualmente disponibles.

No existe compromiso alguno con el uso de lenguajes propietarios, por lo


que las aplicaciones sern totalmente portables sin cambio alguno. Puede
determinarse en qu servidor(es) se quiere hacer funcionar estos procedimientos.
En aplicaciones crticas se pueden agregar tantos servidores de aplicacin como
sean necesarios, de forma simple, y sin comprometer en absoluto la integridad de
la base de datos, obtenindose una escalabilidad muy grande sin necesidad de
tocar el servidor de dicha base de datos.

El problema de esta arquitectura es cmo se implementa? Parece ilusorio


tratar de programar manualmente estos procedimientos, mientras que, si se
dispone de una herramienta que lo hace automticamente, presenta ventajas
claras sobre la alternativa anterior.

1.17. Leccin 12. Condiciones para la implantacin del Modelo


Cliente/Servidor

1.17.1. Condiciones para la implantacin del modelo Cliente/Servidor

Las condiciones que pueden aconsejar la implantacin del modelo


Cliente/Servidor en una empresa son:

Cambios estructurales y organizativos.


Cambios en los organigramas, con mayor delegacin en personas y
departamentos.
Respuesta a la dinmica del mercado.
Cambios en los procesos de negocio.

La situacin est cambiando. De una poca anterior de masiva produccin


industrial, estamos pasando a otra de ajustada adaptacin a la demanda. La
capacidad de aproximacin de los productos y servicios, a la medida de las
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 53 de 115

necesidades del cliente, exige disearlos, producirlos y suministrarlos con rapidez y


mnimos costos.

Las razones que impulsan el crecimiento de las aplicaciones Cliente/Servidor son:

La demanda de sistemas ms fciles de usar, que contribuyan a una mayor


productividad y calidad.
El precio/rendimiento de las estaciones de trabajo y de los servidores.
La creciente necesidad de acceso a la informacin para tomar decisiones y de
soportar los procesos mediante unas aplicaciones ms ajustadas a la
estructura organizativa de la empresa, que permitan realizar las operaciones
de forma ms natural.
La utilizacin de nuevas tecnologas y herramientas de alta productividad, ms
aptas para la dinmica del mercado.

1.17.2. Costos y beneficios de Cliente/Servidor

Los costos de la implantacin de soluciones Cliente/Servidor no deben


contemplarse slo en trminos absolutos, sino que deben medirse en funcin del
beneficio que reporten los nuevos desarrollos. Como el precio de los ordenadores
personales ha bajado tanto en los ltimos aos, con frecuencia se comete el error
de pensar que las soluciones Cliente/Servidor son ms econmicas que las
basadas en ordenadores tradicionales. Estudios independientes indican que el
costo del hardware y software, en un periodo de 5 aos, representa solamente el
20% de los costos totales. En el caso de sistemas distribuidos, el 80% restante son
costos de infraestructura y gastos de explotacin.

Los beneficios percibidos de la implantacin de un modelo Cliente/Servidor


se encuadran, generalmente, en alguna de estas categoras:

La productividad que se obtiene en las estaciones de trabajo programables con


interface grfica de usuario, que permite acceder e integrar aplicaciones muy
intuitivamente.
La abundancia de software disponible comercialmente, como por ejemplo
procesadores de textos, hojas de clculo, sistemas basados en el
conocimiento, correo, etc.
La cercana del usuario a aplicaciones y datos que son necesarios para su
actividad, compartiendo servicios y costos.
La disponibilidad de potencia de clculo a nivel personal, sin la responsabilidad
del mantenimiento del sistema y del software de aplicaciones.
La disponibilidad de herramientas de desarrollo fciles de usar, reduciendo la
dependencia del departamento informtico.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 54 de 115

Los beneficios obtenidos por la alta direccin, seguramente estarn entre los
siguientes:

Un mejor ajuste del sistema de informacin a la organizacin y a los procesos


de negocio.
Cada tarea se puede ubicar en la plataforma que sea ms eficaz, y los
recursos informticos se pueden aplicar progresivamente. Las funciones y los
datos se pueden localizar donde sean necesarios para la operativa diaria sin
cambiar las aplicaciones.
Mayor proteccin de activos informticos e integracin de los sistemas y
aplicaciones ya existentes.
Acceso a la informacin cundo y dnde la necesitan los usuarios. Este es,
probablemente, el mayor activo corporativo.
Disponibilidad de aplicaciones estndar (comprar en vez de desarrollar).
Libertad para migrar a plataformas de sistemas alternativos y usar servidores
especializados.
Una respuesta ms rpida a las necesidades del negocio gracias a la
disponibilidad de software de productividad personal y de herramientas de
desarrollo fciles de usar.
Un entorno de utilizacin ms sencillo, que proporciona una mayor
productividad.
A largo plazo, las interfaces grficas de usuario reducen los costos asociados a
educacin y formacin de los usuarios.
Los beneficios que se derivan de una aplicacin Cliente/Servidor dependen, en
gran medida, de las necesidades del negocio. Por ejemplo, renovar una
aplicacin existente aadindole una interface grfica de usuario, podra ser
una solucin rentable en un determinado momento, pero puede no serlo en
otro.
Sin embargo, una nueva aplicacin basada en un proceso de negocio
rediseado, seguramente reportar mayor beneficio que migrar a una
aplicacin ya existente.
Como la mayora de las empresas han realizado una importante inversin en
soluciones informticas, muy raramente se pueden construir nuevos sistemas
abandonando los ya existentes.

Las inversiones se contemplan generalmente en trminos de hardware


instalado, pero es probable que sean ms importantes las inversiones realizadas
en:

Software de sistemas.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 55 de 115

Datos disponibles en la empresa.


Aplicaciones.
Conocimientos en el departamento de SI.
Conocimientos de los usuarios.

Todos stos son activos fundamentales que, frecuentemente, se olvidan o


se desprecian. Cliente/Servidor posibilita una migracin paso a paso, es decir, la
generacin de nuevas aplicaciones que coexistan con las ya existentes,
protegiendo, de esta forma, todas las inversiones realizadas por la empresa.

1.18. Leccin 13. Generalidades del Hardware

1.18.1. Hardware

El hardware se refiere a los componentes materiales con los que cuenta un sistema
de cmputo.

Figura 13. El Hardware de un Computador. En la figura muestra diferentes componentes de Hardware de un


computador, entre otro, La MotherBoard, Unidades de Disco, Fuente de Poder, etc. Fuente:
http://2.bp.blogspot.com/_HpyYP961Vzo/TPb_n7d1_XI/AAAAAAAAABY/CfZDo5d9gxo/s1600/partes+de+la+computadora.png

Las funciones de estos se pueden dividir en: entrada, salida y


almacenamiento y estn conectados a travs de un conjunto de cables o circuitos
llamado bus a la unidad central de proceso (CPU) del ordenador, el
microprocesador que controla la computadora y le proporciona capacidad de
clculo. A continuacin, se exponen las funciones del hardware en forma
desarrollada:
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 56 de 115

En breves palabras se puede decir que el hardware es, El conjunto de


elementos fsicos que conforman e integran un equipo o sistema de cmputo.

Dispositivos de entrada
Dispositivos de proceso
Dispositivos de almacenamiento
Dispositivos de entrada salida
Dispositivos de salida

1.18.1.1. Hardware De Entrada

El hardware de entrada est constituido de dispositivos externos


(componentes situados fuera de la CPU de la computadora) que proporcionan
informacin e instrucciones ejemplos de estos son: Un lpiz ptico, Un mouse, Un
joystick, Un digitalizador ptico (emplea dispositivos fotosensibles para convertir
imgenes como una fotografa o un texto) en seales electrnicas que puedan ser
manipuladas por la mquina), Un micrfono, Un mdulo de reconocimiento de voz,
Un mdem, entre muchos otros.

1.18.1.2. Hardware De Salida

A ste lo conforman dispositivos externos que transfieren informacin de la


CPU de la computadora al usuario informtico. Como, por ejemplo: La pantalla
(convierte la informacin generada por el ordenador en informacin visual),
Impresoras (reciben textos e imgenes de la computadora y los imprimen en
papel). Bocinas (emiten los sonidos provenientes de la maquina) etc.

1.18.1.3. Hardware De Almacenamiento

Este tipo de hardware sirve para almacenar permanentemente informacin y


programas que la computadora deba recuperar en algn momento. Los dos tipos
principales de dispositivos de almacenamiento son las unidades de disco y la
memoria. Existen varios tipos de discos: duros, flexibles, magneto-pticos y
compactos.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 57 de 115

Las unidades de disco duro almacenan informacin en partculas


magnticas integradas en un disco suelen ser una parte permanente de la
computadora, pueden almacenar grandes cantidades de informacin y recuperarla
muy rpidamente. Las unidades de disco flexible tambin almacenan informacin
en partculas magnticas integradas en discos intercambiables, que de hecho
pueden ser flexibles o rgidos. Los discos flexibles almacenan menos informacin
que un disco duro, y la recuperacin de la misma es muchsimo ms lenta. Las
unidades de disco magneto-ptico almacenan la informacin en discos
intercambiables sensibles a la luz lser y a los campos magnticos. Pueden
almacenar tanta informacin como un disco duro, pero la velocidad de recuperacin
de la misma es algo menor. Las unidades de disco compacto, o CD-ROM,
almacenan informacin en las cavidades grabadas en la superficie de un disco de
material reflectante. La informacin almacenada en un CD-ROM no puede borrarse
ni sustituirse por otra informacin. Los CD-ROM pueden almacenar
aproximadamente la misma informacin que un disco duro, pero la velocidad de
recuperacin de informacin es menor.

1.18.1.4. Conexiones Del Hardware

Para llegar a su objetivo, el hardware necesita unas conexiones fsicas que


permitan a los componentes comunicarse entre s e interaccionar. Un bus
constituye un sistema comn interconectado, compuesto por un grupo de cables o
circuitos que coordina y transporta informacin entre las partes internas de la
computadora. El bus de una computadora consta de dos canales: uno que la CPU
emplea para localizar datos, llamado bus de direcciones, y otro que se utiliza para
enviar datos a una direccin determinada, llamado bus de datos. Un bus se
caracteriza por dos propiedades: la cantidad de informacin que puede manipular
simultneamente (la llamada 'anchura de bus') y la rapidez con que puede transferir
dichos datos.

Referencias:

http://sistemasoperativos.angelfire.com/html/1.3.html.
http://es.ccm.net/contents/651-sistema-operativo#funciones-del-sistema-
operativo.
http://www.mariapinto.es/alfineees/sistemas/que.htm.
http://eq2-sistemasoperativos.blogspot.com.co/2012/04/16-nucleo-sistemas-
operativos.html.
http://www.monografias.com/trabajos24/arquitectura-cliente-
servidor/arquitectura-cliente-servidor.shtml#ixzz3r7P2a1sy.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 58 de 115

http://oposicionestic.blogspot.com.co/2011/06/arquitectura-cliente-servidor.html
http://www.significados.com/hardware/.
Tanenbaum, Andrew, Sistemas Operativos Modernos, Pearson Educacin,
Mxico 2003.
UNAD, (2003). Modulo del Curso Sistemas Operativos, Colombia, 2013.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 59 de 115

UNIDAD 2: Gestin de Procesos


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 60 de 115

TABLA DE CONTENIDO

Pg.

Unidad 2 de aprendizaje: Gestin de Procesos .................................................... 60


2.1. Objetivos .................................................................................................. 61
2.2. Competencias .......................................................................................... 61
2.3. Estrategias pedaggicas o actividades de aprendizaje ........................... 61
2.4. Recursos de aprendizaje.......................................................................... 61
2.5. Leccin 6: Introduccin a los procesos. ................................................... 62
2.5.1. Concepto de Proceso .................................................................................. 62
2.5.2. Estados de los Procesos .......................................................................... 63
2.5.3. Estructuras de datos de procesos: La PCB .............................................. 65
2.5.4. Thread (hilo de ejecucin) ........................................................................ 67
2.6. Leccin 7. Comunicacin Entre Procesos ................................................ 68
2.6.1. Comunicacin Entre Procesos .................................................................... 68
2.6.2. Mensajes .................................................................................................. 69
2.6.3. Aspectos de comunicacin ....................................................................... 70
2.7. Leccion 8. Sincronizacin de Procesos .................................................... 70
2.7.1. Sincronizacin de Procesos ..................................................................... 70
2.7.2. La seccin crtica ..................................................................................... 71
2.7.2.1.Solucin al problema de la seccin crtica ................................................. 71
2.7.2.2.Semforos ................................................................................................. 72
2.8. Leccion 9. Planificacin de Procesos ....................................................... 74
2.8.1. Planificacin de Procesos ........................................................................ 74
2.8.1.1.A largo plazo ............................................................................................. 74
2.8.1.2.A mediano plazo ........................................................................................ 75
2.8.1.3.A corto plazo ............................................................................................. 76
2.8.2. Caractersticas a considerar de los procesos........................................... 76
2.8.3. Planificacin apropiativa o no apropiativa (preemptive or not preemptive)
77
Unidad 2 de aprendizaje: Gestin de Procesos
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 61 de 115

2.1. Objetivos
El objetivo de esta unidad es conocer el concepto de proceso y como este mdulo
del sistema operativo se encarga de multiplexarlos en el tiempo. Se tratarn los
problemas que surgen con la multiplexacin y las herramientas para solucionarlos.
2.2. Competencias
El estudiante estar en la capacidad de:
Definir con claridad, que es un sistema operativo.
Identificar sus componentes.
Clasificar la evolucin de los Sistemas Operativos, de acuerdo al desarrollo
del Hardware.

2.3. Estrategias pedaggicas o actividades de aprendizaje


Presentacin de tpicos que orienten al entendimiento de la composicin y
funcionamiento de los sistemas operativos.
Proposicin de trabajos independientes para el enriquecimiento de las
actividades realizadas en clase.

2.4. Recursos de aprendizaje


Revistas Informativas del rea
Internet como base o fuente de informacin.
Presentacin de diapositivas con temas relacionados con el modulo.
Libros del rea de la Sistemas Operativos
Herramienta de Hojas de Calculo
Utilizacin de aulas virtuales.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 62 de 115

2.5. Leccin 6: Introduccin a los procesos.

Todas las computadoras modernas hacen varias cosas al mismo tiempo. A la


vez que ejecuta un programa del usuario, una computadora puede leer de un disco e
imprimir en una terminal o impresora. En un sistema de multiprogramacin, la CPU
tambin alterna de programa en programa, ejecutando cada uno de ellos por decenas
o cientos de milisegundos. Aunque, en sentido estricto, la CPU ejecuta en cierto
instante un solo programa, durante un segundo puede trabajar con varios de ellos, lo
que da una apariencia de paralelismo. A veces, las personas hablan de seudo
paralelismo para indicar este rpido intercambio de los programas en la CPU, para
distinguirlo del paralelismo real del hardware, donde se hacen clculos en la CPU a la
vez que operan uno o ms dispositivos de entrada/salida. Es difcil mantener un
registro de las distintas actividades paralelas. Por lo tanto, los diseadores del sistema
operativo han desarrollado con el tiempo un modelo que facilita el uso del paralelismo.

2.5.1. Concepto de Proceso

Tambin llamadas tareas y es una instancia de un programa en ejecucin,


tambin se dice que es la unidad ms pequea de trabajo individualmente planificable
por un sistema operativo. Es una divisin implcita de tareas definidas por el sistema,
tambin se dice que pueden estar definidas por el programador, es decir pueden ser
tecleadas mediante cdigo por el usuario es decir mandar a leer de una unidad de
disco, imprimir en una terminal o impresora.

Los procesos son divididos por el sistema y la divisin aparece en sistemas de


multiprogramacin como por ejemplo un sistema de tiempo compartido donde cada
programa se lo trata como independiente.

Est definida por los programadores a cada uno de los procesos donde se
define atributos como por ejemplo una aplicacin se puede dividir en varias tareas con
el propsito de que haya ganancia de velocidad, el uso eficiente de los dispositivos de
entrada y salida.

A continuacin, se presentan algunas otras definiciones que se asemejan:

Un programa en ejecucin
Una actividad asncrona
El "espritu animado" de un procedimiento
El "centro de control" de un procedimiento en ejecucin
Lo que se manifiesta por la existencia de un "bloque de control del proceso"
(BCP) en el sistema operativo.
La entidad a la que se asignan los procesadores
La unidad "despachable"
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 63 de 115

Aunque se han dado muchas otras definiciones, no hay una definicin


universalmente aceptada, pero el concepto de "Programa en ejecucin" parece ser el
que se utiliza con ms frecuencia. Un programa es una entidad inanimada; slo cuando
un procesador le "infunde vida" se convierte en la entidad "activa" que se denomina
proceso.

Un proceso pasa por una serie de datos discretos. Se dice que un proceso se
est ejecutando (estado de ejecucin), si tiene asignada la UCP. Se dice que un
proceso est listo (estado listo) si pudiera utilizar una UCP en caso de haber una
disponible. Un proceso est bloqueado (estado bloqueado) si est esperando que
suceda algn evento antes de poder seguir la ejecucin.

2.5.2. Estados de los Procesos

Aunque cada proceso es una entidad independiente, con su contador de


programa y estado interno, a menudo necesita interactuar con otros procesos. Un
proceso puede generar alguna salida que otro proceso utiliza como entrada. En el
comando del Shell:

Cat chapter1 chapter2 chapter3 | grep tree

El primer proceso, que ejecuta cat, eslabona y produce tres archivos. El


segundo proceso, que corre grep, selecciona todas las lneas que contienen la palabra
rbol. Segn las velocidades relativas de los procesos (que dependen de la
complejidad relativa de los programas y de la cantidad de tiempo de la CPU que cada
uno haya tenido), puede suceder que grep est listo para correr, sin que haya ninguna
entrada que lo espere. Entonces debe bloquearse hasta que est disponible alguna
entrada.

Un proceso se bloquea porque lgicamente no puede continuar, debido a que


espera una entrada que todava no est disponible. Tambin es posible que un
proceso que conceptualmente est listo para correr se detenga ya que el sistema
operativo ha decidido distribuir la CPU a otro proceso por un momento. A continuacin,
se observa un diagrama de estado que muestra los tres estados en que puede
encontrarse un proceso.

- EJECUCIN. En realidad, hace uso de la CPU en ese instante.


- BLOQUEADO. Incapaz de correr hasta que suceda algn evento externo.
- LISTO. Ejecutable; se detiene temporalmente para permitir que se ejecute otro
proceso.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 64 de 115

Figura 14. Estados de los Procesos. En la figura se muestran todos los estados posibles que puede tener un proceso y
la forma en que interactan entre cada uno de ellos. Fuente:
https://chsos20121910038.files.wordpress.com/2012/04/estados-de-los-procesos.jpg

El proceso se bloque en la entrada

El planificador elige otro proceso

El planificador elige este proceso

La entrada se vuelve disponible

Como se muestra en el grfico entre estos tres estados son posibles realizar
cuatro transiciones. La transicin 1 ocurre cuando un proceso descubre que no puede
continuar. En algunos sistemas el proceso debe ejecutar una llamada al sistema
BLOCK, para entrar en estado bloqueado. Las transiciones 2 y 3 son ocasionadas por
el planificador del proceso, que es parte del sistema operativo sin que el proceso llegue
a saber de ellas. La transicin 2 ocurre cuando el planificador decide que el proceso en
ejecucin ya ha corrido el tiempo suficiente y es tiempo de permitir que otro proceso
tome tiempo de la CPU. La transicin 3 ocurre cuando todos los otros procesos han
utilizado su parte del tiempo de la CPU y es hora que el primer proceso vuelva a correr.
La transicin 4 ocurre cuando aparece el evento externo que estaba esperando
un proceso (como el arribo de alguna entrada). Si ningn otro proceso corre en
ese instante la transicin 3 se activar de inmediato y el proceso iniciar su
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 65 de 115

ejecucin. De lo contrario talvez tenga que esperar en estado listo un poco


hasta que la CPU est disponible.

2.5.3. Estructuras de datos de procesos: La PCB

Cada proceso tiene asociada una estructura de datos llamada la PCB (Process
Control Block). Un proceso se representa desde el punto de vista del sistema
operativo, por un conjunto de datos donde se incluyen el estado en cada momento,
recursos utilizados, registros, etc., denominado Bloque de Control de Procesos (PCB).

Los objetivos del bloque de control de procesos son los siguientes:

Localizacin de la informacin sobre el proceso por parte del sistema operativo.


Mantener registrados los datos del proceso en caso de tener que suspender
temporalmente su ejecucin o reanudarla.

La PCB contiene toda la informacin que necesita el proceso. Por ejemplo:

PID. Identificador del proceso.


Estado. Wait, Run, Ready etc.
PC (Program Counter). Informacin relativa al contenido del contador de
programa.
Registros de CPU. Archivo de registros en uso.
Informacin de Itineracin (Informacin para el Scheduler). Contadores,
relojes, prioridad, punteros a colas de ejecucin.
Informacin de Manejo de Memoria. Registros base y lmite, tablas para manejo
de memoria virtual, lista de pginas, etc.
Informacin de Contabilidad. Tiempo de CPU utilizado, tiempo real utilizado,
lmites de tiempo, etc.
Informacin sobre el estado de E/S. Dispositivos asignados al proceso, lista de
archivos abiertos, estado de esos archivos, etc.
Credenciales. UID, GID, PPID (identificadores de usuario y de proceso).
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 66 de 115

Figura 15. Bloque de Control de Proceso (PCB). En esta figura se encuentra un bloque de control de procesos, con
cada uno de sus componentes, adems podemos visualizar la descripcin de los elementos ms importantes. Fuente:
http://image.slidesharecdn.com/introduccionalosprocesos-090928141604-phpapp02/95/introduccion-a-los-procesos-
5-728.jpg?cb=1254147407.

Estas informaciones se encuentran en memoria principal en disco y se accede a


ellas en los momentos en que se hace necesaria su actualizacin o consulta. Los datos
relativos al estado del proceso siempre se encuentran en memoria principal.

El concepto del PCB es seguir el estado de ejecucin y la locacin del proceso,


cuando un proceso se crea, un nuevo PCB se crea para el proceso. Al terminar el
proceso, su PCB asociado se destruye. El PCB se coloca en una cola de estados.
Existe un Bloque de Control de Sistema (SCB) con objetivos similares al anterior y
entre los que se encuentra el enlazado de los bloques de control de procesos
existentes en el sistema.

El cambio de contexto se producir en caso de ejecucin de una instruccin


privilegiada, una llamada al sistema operativo o una interrupcin, es decir, siempre que
se requiera la atencin de algn servicio del sistema operativo.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 67 de 115

2.5.4. Thread (hilo de ejecucin)

Un Thread (hilo de ejecucin), en sistemas operativos, es una caracterstica que


permite a una aplicacin realizar varias tareas a la vez (concurrentemente). Los
distintos hilos de ejecucin comparten una serie de recursos tales como el espacio de
memoria, los archivos abiertos, situacin de autenticacin, etc. Esta tcnica permite
simplificar el diseo de una aplicacin que debe llevar a cabo distintas funciones
simultneamente.

Figura 16. Thread (Hilo de Ejecucin), En la figura se representa graficamente lom que es un Hilo de ejecucin, adems
de mostrar las diferentes funciones que puede realizar el mismo Fuente: https://i-msdn.sec.s-
msft.com/dynimg/IC710490.png. 9

Los hilos de ejecucin que comparten los mismos recursos, sumados a estos
recursos, son en conjunto conocidos como un proceso. El hecho de que los hilos de
ejecucin de un mismo proceso compartan los recursos hace que cualquiera de estos
hilos pueda modificar stos. Cuando un hilo modifica un dato en la memoria, los otros
hilos acceden a ese dato modificado inmediatamente.

9
Un hilo es bsicamente una tarea que puede ser ejecutada en paralelo con otra tarea.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 68 de 115

Figura 17. Thread (Hilo de Ejecucin). En esta figura se muestran 3 Hilo en ejecucin, como podemos observar cada
hilo posee su propia pila de ejecucin y Contador de programa. Fuente: https://i-msdn.sec.s-
msft.com/dynimg/IC710490.png.

Lo que es propio de cada hilo es el contador de programa, la pila de ejecucin y


el estado de la CPU (incluyendo el valor de los registros). El proceso sigue en
ejecucin mientras al menos uno de sus hilos de ejecucin siga activo. Cuando el
proceso finaliza, todos sus hilos de ejecucin tambin han terminado. Asi mismo en el
momento en el que todos los hilos de ejecucin finalizan, el proceso no existe ms y
todos sus recursos son liberados.

2.6. Leccin 7. Comunicacin Entre Procesos

2.6.1. Comunicacin Entre Procesos

Se conoce por Comunicacin entre procesos InterProcess Communication


(IPC) al conjunto de mecanismos claves en la comparticin de datos
(intercomunicacin) y sincronizacin entre distintos procesos. Los procesos que se
ejecutan concurrentemente pueden ser independientes o cooperativos. Los procesos
independientes cuando no pueden alterar o verse alterados por otros procesos que
estn en ejecucin. En cambio, los procesos cooperativos pueden verse afectados y
afectar a los dems procesos. El IPC provee la forma a travs de la cual los procesos
pueden comunicarse y sincronizarse.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 69 de 115

2.6.2. Mensajes

La comunicacin va IPC no necesita compartir variables. Para esto se


requieren dos operaciones como mnimo:

Send (mensaje) Enviar (mensaje)


Receive (mensaje) Recibir (mensaje)

Los procesos que se comunican necesitan una forma de poder


reverenciarse, La comunicacin puede ser:

1. Comunicacin directa

En este esquema de comunicacin, cada proceso debe explcitamente


indicar el nombre del proceso fuente o del proceso destino:

- Enviar (P,mensaje); : Enva mensaje al proceso P


- Recibir (Q,mensaje); : Recibe un mensaje desde el proceso Q

2. La interaccin productor consumidor

Un tipo de interaccin muy comn en un sistema operativo es la llamada


Productor/Consumidor. El proceso productor genera algn dato y el proceso
consumidor recibe este dato para algn tipo de procesamiento.

Por ejemplo:

Productor: aplicacin que genera datos.


Consumidor: impresora que imprime los datos.

Como los procesos productor y consumidor tienen distintas velocidades,


normalmente se necesita un Buffer para suavizar esta diferencia. El IPC provee de
este Buffer es forma automtica.

3. Direccionamiento simtrico y asimtrico

El esquema visto muestra una simetra: tanto los procesos transmisores


como receptor tienen que nombrarse explcitamente. Una variacin consiste en que
slo el proceso que enva seala explcitamente el nombre del receptor y el
receptor en vez de poner el nombre del transmisor pone una variable.

Enviar (P, mensaje)


Recibir (id, mensaje) la variable id registra el nombre del proceso que enva.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 70 de 115

La desventaja tanto del mtodo simtrico como asimtrico es la baja


modularidad. Si el nombre de un proceso cambia, es necesario cambiar todas las
definiciones de nombre internas. Una forma alternativa es la llamada
comunicacin indirecta.

4. Comunicacin indirecta

En el mtodo de comunicacin indirecta, los mensajes se envan y reciben desde


objetos llamados mailbox (o puertas). Cada mailbox tiene una identificacin nica.

Dos procesos slo se pueden comunicar si ambos comparten un mailbox.

Enviar (A,mensaje) : se enva un mensaje al mailbox A


Recibir (A,mensaje) : se recibe un mensaje desde el maibox A

2.6.3. Aspectos de comunicacin

El sistema IPC es un sistema de comunicacin, es decir se requiere de un


enlace de comunicacin entre dos procesos. Un enlace de comunicacin puede ser
considerado como una cola de mensajes.

Existen varias formas de implementar esta cola de mensajes:

Capacidad cero: sincronizacin rendezvous


Capacidad limitada
Capacidad ilimitada

Capacidad cero: sincronizacin rendezvous: Los procesos que envan y reciben


quedan bloqueados.

Capacidad limitada y Capacidad ilimitada: es necesario sealar cuando un mensaje


ha llegado a su destino. Esto se puede hacer va un mensaje corto llamado ACK. O
tambin llamada sincronizacin con buffers. (UNAD. 2015)

2.7. LECCION 8. Sincronizacin de Procesos

2.7.1. Sincronizacin de Procesos

En muchos casos, los procesos se renen para realizar tareas en conjunto, a


este tipo de relacin se le llama procesos cooperativos. Para lograr la comunicacin,
los procesos deben sincronizarse, de no ser as pueden ocurrir problemas no
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 71 de 115

deseados. La sincronizacin es la transmisin y recepcin de seales que tiene por


objeto llevar a cabo el trabajo de un grupo de procesos cooperativos.

Es la coordinacin y cooperacin de un conjunto de procesos para asegurar la


comparacin de recursos de cmputo. La sincronizacin entre procesos es necesaria
para prevenir y/o corregir errores de sincronizacin debidos al acceso concurrente a
recursos compartidos, tales como estructuras de datos o dispositivos de E/S, de
procesos contendientes. La sincronizacin entre procesos tambin permite
intercambiar seales de tiempo (ARRANQUE/PARADA) entre procesos cooperantes
para garantizar las relaciones especficas de precedencia impuestas por el problema
que se resuelve.

Para que los procesos puedan sincronizarse es necesario disponer de servicios


que permitan bloquear o suspender bajo determinadas circunstancias la ejecucin de
un proceso. Los principales mecanismos de sincronizacin que ofrecen los sistemas
operativos son:

Seales
Tuberas
Semforos
Mutex y variables condicionales
Paso de mensajes.

2.7.2. La seccin crtica

En programacin concurrente, se define como a la porcin de cdigo de un


programa de computador el cual accede a un recurso compartido (estructura de datos
dispositivo) que no debe de ser accedido por ms de un hilo en ejecucin (thread). La
seccin crtica por lo general termina en un tiempo determinado y el hilo, proceso
tarea solo tendr que esperar un perodo determinado de tiempo para entrar. Se
necesita de un mecanismo de sincronizacin en la entrada y salida de la seccin crtica
para asegurar la utilizacin exclusiva del recurso.

2.7.2.1. Solucin al problema de la seccin crtica

Para evitar anomalas en la ejecucin de las secciones crticas de los procesos,


cuando un proceso est en su seccin crtica, ningn otro proceso puede ejecutar su
seccin crtica. La ejecucin de las secciones crticas, debe ser mutuamente exclusiva
en el tiempo. Si dos o ms procesos desean cooperar, es necesario disponer de un
protocolo.

Requisitos de solucin

Una solucin al problema de la seccin crtica debe satisfacer los siguientes tres
requisitos:
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 72 de 115

1. Exclusin mutua. Si un proceso Pi est en su seccin crtica, ningn otro proceso


puede estar ejecutando su seccin crtica.

2. Progreso. Si un proceso Pi est en su seccin crtica, y otro proceso desea entrar a su


seccin crtica, slo los procesos que no estn en el resto del cdigo, pueden participar de
la decisin de qu proceso entrar prximamente, y esta seleccin no se puede postergar
indefinidamente.

3. Espera acotada. Un proceso no puede quedar esperando indefinidamente a entrar en


su seccin crtica.

2.7.2.2. Semforos

Las soluciones a los problemas de secciones crticas son difciles de generalizar


a problemas de mayor complejidad. Herramientas de sincronizacin mucho ms
flexibles son los llamados semforos. Un semforo es una variable entera que es
accesada a travs de dos operaciones atmicas llamadas wait y signal.

Las operaciones wait y signal

wait(S): while (S<=0);

S=S-1;

signal(S): S = S + 1;

Las modificaciones a la variable entera en wait y signal se ejecutan en forma indivisible.

Figura 18. Semaforo. Se muestra de manera grafica, la forma como esta codificada de manera algoritmica las
funciones que realiza el semaforo Fuente:
https://www.google.com.co/search?q=la+seccion+critica+semaforo&espv=2&biw=1366&bih=623&source=lnms&tb
m=isch&sa=X&ved=0CAcQ_AUoAWoVChMIiYypoImRyQIVRmImCh0m1w3W#imgrc=12TNkNEDlTlfzM%3A.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 73 de 115

Un problema es la exclusin mutua de secciones crticas. Otro problema


diferente y frecuente es la sincronizacin de procesos. Sincronizar procesos
significa forzar un orden en su ejecucin.

Figura 19. Implementacin de Semforo para sincronizacin. Como lo dice el nombre de la figura, lo que se muestra es
la implementacin algortmica del proceso de semforo. Fuente: (UNAD, 2015)

En la interaccin productor/consumidor con semforos hay que proporcionar


exclusin mutua al acceso al buffer. Este acceso se logra con un semforo binario
inicializado en 1. Adems del acceso al buffer hay que sincronizar para evitar que
un proceso escriba en el buffer si ste est lleno o que un proceso lea el buffer si
est vaco.

figura 20. Interaccin productor/consumidor con semforos. Fuente:


https://juancarlossys.files.wordpress.com/2012/10/instantanea_p_c1.gif?w=614.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 74 de 115

2.8. LECCION 9. Planificacin de Procesos

2.8.1. Planificacin de Procesos

La planificacin de procesos se refiere a cmo determina el sistema


operativo al orden en que ir cediendo el uso del procesador a los procesos que lo
vayan solicitando, y a las polticas que emplear para que el uso que den a dicho
tiempo no sea excesivo respecto al uso esperado del sistema.

La Planificacin de procesos tiene como principales objetivos la equidad, la


eficacia, el tiempo de respuesta, el tiempo de regreso y el rendimiento.

Equidad: Todos los procesos deben ser atendidos.


Eficacia: El procesador debe estar ocupado el 100% del tiempo.
Tiempo de respuesta: El tiempo empleado en dar respuesta a las solicitudes
del usuario debe ser el menor posible.
Tiempo de regreso: Reducir al mnimo el tiempo de espera de los resultados
esperados por los usuarios por lotes.
Rendimiento: Maximizar el nmero de tareas que se procesan por cada hora.

Podemos hablar de tres tipos principales de planificacin:

2.8.1.1. A largo plazo

Decide qu procesos sern los siguientes en ser iniciados. Este tipo de


planificacin era el ms frecuente en los sistemas de lotes (principalmente aquellos
con spool) y multiprogramados en lotes; las decisiones eran tomadas
principalmente considerando los requisitos pre-declarados de los procesos y los
que el sistema tena libres al terminar algn otro proceso. La planificacin a largo
plazo puede llevarse a cabo con periodicidad de una vez cada varios segundos,
minutos e inclusive horas.

En los sistemas de uso interactivo, casi la totalidad de los que se usan hoy
en da, este tipo de planificacin no se efecta, dado que es tpicamente el usuario
quien indica expresamente qu procesos iniciar.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 75 de 115

Figura 21. Planificador a largo plazo. Este tipo de planificacin, los procesos se ejecuta de acuerdo a una periodicidad,
pueden ser de segundos, minutos incluso horasFuente:
http://sistop.gwolf.org/html/img/dot/planificador_largo_plazo.png

2.8.1.2. A mediano plazo

Decide cules procesos es conveniente bloquear en determinado momento,


sea por escasez/saturacin de algn recurso (como la memoria primaria) o porque
estn realizando alguna solicitud que no puede satisfacerse momentneamente; se
encarga de tomar decisiones respecto a los procesos conforme entran y salen del
estado de bloqueado (esto es, tpicamente, estn a la espera de algn evento
externo o de la finalizacin de transferencia de datos con algn dispositivo). En
algunos textos, al planificador a mediano plazo se le llama agendador (scheduler).

Figura 22. Planificador a mediano plazo, o agendador. Fuente:


http://sistop.gwolf.org/html/img/dot/planificador_mediano_plazo.png
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 76 de 115

2.8.1.3. A corto plazo

Decide cmo compartir momento a momento al equipo entre todos los


procesos que requieren de sus recursos, especialmente el procesador. La
planificacin a corto plazo se lleva a cabo decenas de veces por segundo (razn
por la cual debe ser cdigo muy simple, eficiente y rpido); es el encargado de
planificar los procesos que estn listos para ejecucin.

Figura 23. Planificador a Corto plazo. La figura muestra la manera cmo interactan los elementos que intervienen es
una planificacin de corto plazo Fuente: http://sistop.gwolf.org/html/img/dot/planificador_corto_plazo.png

En algunos textos, al planificador a corto plazo se le llama despachador (dispatcher).

2.8.2. Caractersticas a considerar de los procesos

No todos los equipos de cmputo procesan el mismo tipo de trabajos, y un


algoritmo de planificacin que en un sistema funciona excelente puede dar un
rendimiento psimo en otro cuyos procesos tienen caractersticas diferentes. Estas
caractersticas pueden ser:
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 77 de 115

Cantidad de Entrada/Salida. Existen procesos que realizan una gran cantidad de


operaciones de entrada y salida (aplicaciones de bases de datos, por ejemplo).

Cantidad de uso de CPU. Existen procesos que no realizan muchas operaciones de


entrada y salida, sino que usan intensivamente la unidad central de procesamiento. Por
ejemplo, operaciones con matrices.

Procesos de lote o interactivos. Un proceso de lote es ms eficiente en cuanto a la


lectura de datos, ya que generalmente lo hace de archivos, mientras que un programa
interactivo espera mucho tiempo (no es lo mismo el tiempo de lectura de un archivo que la
velocidad en que una persona teclea datos) por las respuestas de los usuarios.

Procesos en tiempo real. Si los procesos deben dar respuesta en tiempo real se
requiere que tengan prioridad para los turnos de ejecucin.

Longevidad de los procesos. Existen procesos que tpicamente requieren varias horas
para finalizar su labor, mientras que existen otros que slo necesitan algunos segundos.

2.8.3. Planificacin apropiativa o no apropiativa (preemptive or not preemptive)

La planificacin apropiativa es aquella en la cual, una vez que a un proceso


le toca su turno de ejecucin ya no puede ser suspendido, ya no se le puede
arrebatar la unidad central de procesamiento. Este esquema puede ser peligroso,
ya que, si el proceso contiene accidental o deliberadamente ciclos infinitos, el resto
de los procesos pueden quedar aplazados indefinidamente.

Una planificacin no apropiativa es aquella en que existe un reloj que lanza


interrupciones peridicas en las cuales el planificador toma el control y se decide si
el mismo proceso seguir ejecutndose o se le da su turno a otro proceso. Este
mismo reloj puede servir para lanzar procesos manejados por el reloj del sistema.
Por ejemplo, en los sistemas UNIX existen los cronjobs y atjobs, los cuales se
programan con base a la hora, minuto, da del mes, da de la semana y da del ao.

La mayora de los sistemas programan el reloj para que pulse de 20 a 50


veces por segundo y al pulso final es cuando el planificador consigue el control y
puede relegar al proceso en ejecucin.

Las prioridades de los procesos se recalculan frecuentemente. En el clculo


de prioridades se tiene en cuenta la duracin del lapso de tiempo. No tendra
sentido asignar continuamente la CPU a un proceso y luego expulsar el proceso
cuando tan slo haya ejecutado unas pocas instrucciones.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 78 de 115

En una planificacin no apropiativa, un trabajo muy grande aplaza mucho a


uno pequeo, y si entra un proceso de alta prioridad est tambin debe esperar a
que termine el proceso actual en ejecucin.

Referencias:

http://wiki.inf.utfsm.cl/index.php?title=Comunicaci%C3%B3n_entre_procesos
http://sistemasoperativos.angelfire.com/html/2.4.2.html
http://www.monografias.com/trabajos51/sincro-comunicacion/sincro-
comunicacion2.shtml#ixzz3rVUxoiRr
http://www.ecured.cu/index.php/Planificaci%C3%B3n_de_procesos_en_Sistem
as_Operativos
http://sistop.gwolf.org/html/03_planificacion_de_procesos.html#sec-1
UNAD, (2003). Modulo del Curso Sistemas Operativos, Colombia, 2013.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 79 de 115

UNIDAD 3: Administracin de Memoria


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 80 de 115

TABLA DE CONTENIDO

Pg.

Unidad 3 de aprendizaje: Administracin de Memoria................................. 81


3.1. Objetivos ...................................................................................................................... 81
3.2. Competencias ............................................................................................................. 81
3.3. Estrategias pedaggicas o actividades de aprendizaje ...................................... 81
3.4. Recursos de aprendizaje .......................................................................................... 81
3.5. Leccin 10. Administracin de la memoria ........................................................... 82
3.6. Leccin 11. Estructura General y Manejo de la Memoria ................................... 82
3.6.1. Estructura General de la Memoria. ...................................................................... 82
3.6.2. Manejo de memoria en sistemas monousuario sin intercambio ..................... 83
3.7. Memoria Virtual........................................................................................................... 83
3.7.1. Multiprogramacin en memoria virtual ................................................................ 83
3.7.2. Mecanismos de asignacin ................................................................................... 84
3.7.3. Paginacin sobre demanda .................................................................................. 85
3.7.4. Fallos de pgina ...................................................................................................... 87
3.7.4.1. Ventajas ................................................................................................................ 87
3.7.4.2. Desventajas .......................................................................................................... 87
3.7.5. Copia durante escritura ...................................................................................... 88
3.8. Segmentacin pura .................................................................................................... 88
3.9. Paginacin ................................................................................................................... 90
3.9.1. Tablas de pginas .................................................................................................. 92
3.9.2. Ventajas de la paginacin ..................................................................................... 93
3.9.3. Desventajas de la paginacin ............................................................................... 94
3.9.4. Traduccin de Direcciones .................................................................................... 94
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 81 de 115

Unidad 3 de aprendizaje: Administracin de Memoria

3.1. Objetivos
El objetivo de esta unidad es estudiar como el sistema operativo coloca los
procesos y sus datos en la memoria multiplexndolos en el espacio.

3.2. Competencias
El estudiante estar en la capacidad de:
Definir con claridad, que es un sistema operativo.
Identificar sus componentes.
Clasificar la evolucin de los Sistemas Operativos, de acuerdo al desarrollo
del Hardware.

3.3. Estrategias pedaggicas o actividades de aprendizaje


Presentacin de tpicos que orienten al entendimiento de la composicin y
funcionamiento de los sistemas operativos.
Proposicin de trabajos independientes para el enriquecimiento de las
actividades realizadas en clase.

3.4. Recursos de aprendizaje


Revistas Informativas del rea
Internet como base o fuente de informacin.
Presentacin de diapositivas con temas relacionados con el modulo.
Libros del rea de la Sistemas Operativos
Herramienta de Hojas de Calculo
Utilizacin de aulas virtuales.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 82 de 115

3.5. Leccin 10. Administracin de la memoria

La memoria o memoria principal puede ser considerada como una matriz de bytes,
cada uno con una direccin. El administrador de memoria es parte del sistema operativo que
regula el uso o liberacin de la memoria. Una instruccin es una orden que se le da a la
computadora para que ejecute una operacin. Un proceso es una secuencia de instrucciones
que forman parte de un programa en ejecucin.(Tomado de:
http://fundamentosso.readthedocs.org/en/latest/cap4_memoria.md.html)

La memoria es un recurso necesario en todo sistema informtico y por eso debe


ser gestionado con cuidado, esta operacin la ejecuta el administrador de memoria o
Memory Manager. El administrador de memoria est encargado de asignar la memoria
que necesita un proceso, as como liberarla cuando el proceso la haya desocupado.
Tambin debe estar al pendiente de qu secciones de la memoria se estn utilizando y
cules no, as como debe tener control sobre cules procesos estn utilizando la
memoria. Para poder administrar la memoria es necesario poder acceder a ella ya sea
para leerla, guardar datos o simplemente reservarla, los bytes de la memoria pueden
accederse por medio de direcciones, las cuales pueden ser representadas de
diferentes maneras. En un programa fuente se utilizan direcciones simblicas, que ms
adelante representan direcciones concretas en un programa ejecutable.10

3.6. Leccin 11. Estructura General y Manejo de la Memoria

3.6.1. Estructura General de la Memoria.

La memoria es un importante recurso que debe administrarse con cuidado. Los


programas crecen en tamao tan rpido como las memorias. La parte del sistema
operativo que administra la memoria se llama administrador de la memoria. Su labor
consiste en llevar el registro de las partes de memoria que se estn utilizando y
aquellas que no, con el fin de asignar espacio en memoria a los procesos; cuando
estos la necesiten y liberarlo cuando terminen. As como administrar el intercambio
entre la memoria principal y el disco, en los casos en que la memoria principal no
pueda albergar a todos los procesos.

10
En una computadora la memoria principal es un recurso vital para su funcionamiento ya que no solo los
programas pueden modificarla, sino que tambin los dispositivos de entrada y salida pueden tener acceso a
ella y modificarla. El procesador de la computadora es el que debe regular los accesos a a memoria y la
velocidad de este para accederla y modificarla (ya sea para escribir o borrar datos) depender de la
eficiencia del computador.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 83 de 115

3.6.2. Manejo de memoria en sistemas monousuario sin intercambio

Este esquema se usa principalmente en sistemas monousuario y monotarea,


como son las computadoras personales con DOS, Bajo este esquema, la memoria real
es tomada para almacenar el programa que se est ejecutando en un momento dado,
con la visible desventaja de que se est limitado a la cantidad de RAM disponible
nicamente. La organizacin fsica bajo este esquema es muy simple: El sistema
operativo se ubica en las localidades superiores o inferiores de la memoria, seguido
por algunos manejadores de dispositivos (drivers). Esto deja un espacio contiguo de
memoria disponible que es tomado por los programas del usuario, dejando
generalmente la ubicacin de la pila (stack) al ltimo, con el objetivo de que sta pueda
crecer hasta el mximo posible.

3.7. Memoria Virtual.

3.7.1. Multiprogramacin en memoria virtual


La memoria virtual se llama as porque el programador ve una cantidad de memoria
mucho mayor que la real, y en realidad se trata de la suma de la memoria de almacenamiento
primario y una cantidad determinada de almacenamiento secundario. El sistema operativo, en
su mdulo de manejo de memoria, se encarga de intercambiar programas enteros, segmentos o
pginas entre la memoria real y el medio de almacenamiento secundario. Si lo que se
intercambia son procesos enteros, se habla entonces de multiprogramacin en memoria real,
pero si lo que se intercambian son segmentos o pginas, se puede hablar de multiprogramacin
con memoria virtual.(Tomado de: http://sistop.gwolf.org/html/04_administracion_de_memoria.html#sec-
5-1)

La memoria virtual se apoya en varias tcnicas interesantes para lograr su


objetivo. Una de las teoras ms fuertes es la del conjunto de trabajo, la cual se
refiere a que un programa o proceso no est usando todo su espacio de direcciones en
todo momento, sino que existen un conjunto de localidades activas que conforman el
conjunto de trabajo. Si se logra que las pginas o segmentos que contienen al
conjunto de trabajo estn siempre en RAM, entonces el programa se desempear
muy bien.

Otro factor importante es si los programas exhiben un fenmeno llamado


localidad, lo cual quiere decir que algunos programas tienden a usar mucho las
instrucciones que estn cercanas a la localidad de la instruccin que se est
ejecutando actualmente.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 84 de 115

figura 24. Esquema general de la memoria. Incorporando espacio en almacenamiento secundario, representando la
memoria virtual. Fuente: http://sistop.gwolf.org/html/04_administracion_de_memoria.html#sec-5.

3.7.2. Mecanismos de asignacin

Para ejecutar un proceso este debe cargarse en memoria. Generalmente el


proceso reside en disco como archivo binario o ejecutable. El conjunto de procesos en
disco que esperan entrar en la memoria para ejecutarse forman la cola de entrada. El
procedimiento normal consiste en seleccionar uno de los procesos de la cola de
entrada y cargarlos en memoria. Esto ocasiona la relocalizacin de direccin o enlaces
a referencias externas, segn sea el caso. Mientras se ejecuta un programa, se accede
a las instrucciones o datos en la memoria. Finalmente, el programa termina de
ejecutarse y su espacio en memoria se declara disponible.

Un proceso de usuario puede residir en cualquier parte de la memoria fsica.


Por esto, aunque el espacio de direcciones de la computadora comience con 00000, no
necesariamente debe de ser ocupado por el proceso del usuario, en la mayora de los
casos, un programa de usuario pasar por varias etapas (algunas pueden ser
optativas) antes de ejecutarse. En estas etapas las direcciones pueden representarse
de maneras distintas.

En un programa fuente las direcciones son generalmente simblicas. Un


compilador enlazar estas direcciones simblicas con direcciones relocalizables (como
14 bytes a partir del inicio del mdulo). A su vez, el director de enlaces o cargador
enlazar las direcciones relocalizables con direcciones absolutas (como 70414). Cada
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 85 de 115

enlace es una correspondencia entre un espacio de direcciones y otro (hueco de


direcciones virtuales).

3.7.3. Paginacin sobre demanda

La memoria virtual entra en juego desde la carga misma del proceso. Tomemos en
cuenta que casi siempre tenemos cdigo durmiente: Cdigo que slo se emplea eventualmente,
como el que responde ante una situacin de excepcin o el que se emplea slo ante
circunstancias particulares (por ejemplo, la exportacin de un documento a determinados
formatos, o la verificacin de que no haya tareas pendientes antes de cerrar un programa). Y si
bien a una computadora le sera imposible ejecutar cdigo que no est cargado en memoria, el
cdigo s puede comenzar ejecutarse sin estar completamente en memoria: Basta con haber
cargado la pgina donde estn las instrucciones que comenzaremos a seguir. (Tomado de:
http://sistop.gwolf.org/html/04_administracion_de_memoria.html#sec-5-1)

La paginacin sobre demanda significa que, para comenzar a ejecutar un


proceso, el sistema operativo carga solamente la porcin necesaria para comenzar la
ejecucin, y que, a lo largo de la ejecucin de cada uno de los procesos, el
paginador es flojo: Slo carga a memoria las pginas cuando van a ser utilizadas. Al
emplear un paginador flojo, las pginas que no sean requeridas nunca sern siquiera
cargadas a memoria.

La estructura empleada por el MMU para implementar un paginador flojo es


muy parecida a la descrita al hablar del buffer de traduccin adelantada: La tabla de
pginas incluir un bit de validez, indicando para cada pgina del proceso si est
presente o no en memoria. Si el proceso intenta emplear una pgina que est marcada
como no vlida, esto causa un fallo de pgina, que lleva a que el sistema operativo lo
suspenda y traiga a memoria la pgina solicitada:

1. Verifica en el PCB si esta solicitud corresponde a una pgina que ya ha sido


asignada a este proceso.
2. En caso de que la referencia sea invlida, se termina el proceso.
3. Procede a traer la pgina del disco a la memoria. El primer paso es buscar un
marco disponible (por ejemplo, a travs de una tabla de asignacin de marcos)
4. Solicita al disco la lectura de la pgina en cuestin hacia el marco especificado
5. Una vez que finaliza la lectura de disco, modifica tanto al PCB como al TLB para
indicar que la tabla est en memoria.
6. Termina la suspensin del proceso, continuando con la instruccin que
desencaden al fallo. El proceso puede continuar tal como si la pgina siempre
hubiera estado presente en memoria.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 86 de 115

Figura 25. Respuesta Fallo de Pagina. En la Figura se muestran todos los Pasos que atraviesa la respuesta a un fallo de
pgina, dentro de la memoria. Fuente: http://sistop.gwolf.org/html/04_administracion_de_memoria.html#sec-5-1.

Llevando este proceso al extremo, podemos hablar de un sistema


de paginacin puramente sobre demanda (pure demand paging): En un sistema
as, ninguna pgina llegar al espacio de un proceso si no es a travs de un fallo de
pgina; un proceso, al iniciarse, comienza su ejecucin sin ninguna pgina en
memoria, y con el apuntador de siguiente instruccin del procesador apuntando a una
direccin que no est en memoria. El sistema operativo responde cargando esta
primera pgina, y conforme avanza el flujo del programa, el proceso ir ocupando el
espacio real que emplear.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 87 de 115

3.7.4. Fallos de pgina

Un fallo de pgina es cuando un programa intenta acceder a un espacio de sus


direcciones, pero ste espacio no se encuentra cargado en la memoria fsica del
sistema. Cuando se da un fallo de pgina, el sistema operativo debe responder
cargando en memoria los datos que se quieren acceder, permitiendo que el programa
contine con su ejecucin normal.

El manejador de fallos de pgina determina cmo debe reaccionar el sistema


operativo ante un fallo de pgina. Puede determinar las siguientes acciones:
Encontrar donde se encuentra la pgina en disco y leerla.
Cuando la pgina ya est en la RAM, reconfigura la Unidad de Manejo de Memoria
(MMU) para que apunte a dicha pgina.
Apunta a una pgina que slo ceros y si el proceso va a realizar una escritura, se
le asigna una nueva pgina.
Obtener la pgina deseada desde otro lugar.

3.7.4.1. Ventajas

Ejecutar un programa en la memoria virtual, permite una serie de caractersticas


positivas que se mencionan a continuacin:

1. Permite que los programas que se ejecutarn en el sistema sean ms grandes que
la memoria fsica instalada.
2. Permite aumentar el grado de multiprogramacin.
3. Sea necesaria menos e/s para intercambiar programas. -* Se implementa
generalmente mediante la paginacin bajo demanda.

3.7.4.2. Desventajas

As como las caractersticas positivas, se encuentran tambin varios aspectos


negativos que hay que considerar cuando se trabaja con memoria virtual, los cuales
son:

1. La paginacin bajo demanda puede afectar significativamente al rendimiento


de un sistema informtico. Ya que ralentiza el proceso.
2. Carece de una zona de almacenamiento secundario donde almacenar las
pginas.
3. Hacerlo en un archivo es ms flexible, pero hay que sufrir las indirecciones del
sistema de archivos.
4. Hacerlo en una particin o en un disco dedicado es ms rpido, pero se pierde
flexibilidad.
5. Se pueden ejecutar programas ms grandes que la memoria fsica pero
afectando negativamente la velocidad de ejecucin del programa.
6. Dado que a menudo hay que traer pginas a memoria, surge el problema de
cules reemplazar.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 88 de 115

3.7.5. Copia durante escritura

Esta funcin es muy importante durante la ejecucin de los procesos en memoria


virtual, porque permite que los procesos padre e hijo puedan compartir las mismas pginas,
stas pginas son marcadas como copia durante escritura, esto permite que cualquiera de los
dos procesos que se encuentran compartiendo las pginas escriba en alguna de ellas,
inmediatamente se realiza una copia de la misma, para que la informacin escrita pueda estar
disponible solamente para el proceso que la escribi en ese momento. Las pginas no
modificadas por los procesos seguirn siendo compartidas; adems solamente podrn ser
marcadas las pginas que puedan ser modificas, por ejemplo, las que no sean las que
contienen el cdigo ejecutable.(Tomado de:
http://fundamentosso.readthedocs.org/en/latest/cap8_memoriavirtual.md.html)

Esta caracterstica ofrecida por la memoria virtual, mejora la eficiencia de la


memoria fsica, ya que es manejada de igual forma por la misma memoria virtual. As,
cuando dos procesos necesiten tener copias diferentes del mismo objeto, entonces la
Unidad de Manejo de Memoria (MMU) se encarga de realizar una copia compartida en
la memoria virtual y adems de marcar sta como pgina de copia durante escritura
en esa regin de memoria.

3.8. Segmentacin pura

La segmentacin se aprovecha del hecho de que los programas se dividen


en partes lgicas, como son las partes de datos, de cdigo y de pila (stack). La
segmentacin asigna particiones de memoria a cada segmento de un programa y
busca como objetivos el hacer fcil el compartir segmentos (por ejemplo, libreras
compartidas) y el intercambio entre memoria y los medios de almacenamiento
secundario.

En la segmentacin pura las particiones de memoria son de tamao


variable, en contraste con pginas de tamao fijo en la paginacin pura. Tambin
se puede decir que la segmentacin pura tiene una granularidad menor que la
paginacin por el tamao de segmentos versus tamao de pginas. Nuevamente,
para comprender mejor la segmentacin, se debe dar un repaso a la forma en que
las direcciones virtuales son traducidas a direcciones reales.

Prcticamente la traduccin es igual que la llevada a cabo en la paginacin


pura, tomando en consideracin que los tamaos de los bloques a controlar por la
tabla de traduccin son variables, por lo cual, cada entrada en dicha tabla debe
contener la longitud de cada segmento a controlar. Otra vez se cuenta con un
registro base que contiene la direccin del comienzo de la tabla de segmentos. La
direccin virtual se compone de un nmero de segmento (s) y un desplazamiento
(d) para ubicar un byte (o palabra) dentro de dicho segmento. Es importante que el
desplazamiento no sea mayor que el tamao del segmento, lo cual se controla
simplemente chequeando que ese valor sea mayor que la direccin del inicio del
segmento y menor que el inicio sumado al tamao. Una vez dada una direccin
virtual v=(s,d), se realiza la operacin b + s para hallar el registro (o entrada de la
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 89 de 115

tabla de segmentos) que contiene la direccin de inicio del segmento en la


memoria real, denotado por s'. Ya conociendo la direccin de inicio en memoria
real s' slo resta encontrar el byte o palabra deseada, lo cual se hace sumndole a
s' el valor del desplazamiento, de modo que la direccin real r= s' + d.

Figura 26. En la figura se muestra el proceso de Traduccin de direcciones de memoria en segmentacin. Fuente:
UNAD, (2003). Modulo del Curso Sistemas Operativos, Colombia, 2013.

La finalidad de la tabla de pginas es asociar pginas virtuales con marcos de pgina.

La entrada tpica en una tabla de pginas es la siguiente:

Figura 27. Entrada tpica de una tabla de pginas En la figura se muestran los diferentes elementos que componen una
entrada de una tabla de pgina. Fuente: UNAD, (2003). Modulo del Curso Sistemas Operativos, Colombia, 2013.

La direccin del marco de pgina, guarda la direccin en memoria real donde se


encuentra la pgina.

El bit presente/ausente, indica si la pgina reside en la memoria real o no. Si la


pgina no est presente (0) y se referencia, se producir un defecto de pgina.
Los bits de proteccin indican el tipo de acceso permitido. Estos generalmente se
conocen como rwx y dependiendo de si estn encendidos, la pgina se podr leer (r),
escribir (w) o ejecutar (x).
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 90 de 115

El bit de modificacin se enciende cada que la pgina sufre algn cambio en


memoria real. Se utiliza cuando la pgina es seleccionada para salir de la memoria
real, cuando se presenta un defecto de pgina. Si el bit est encendido, entonces la
pgina se escribir sobre el disco. En caso contrario slo se desecha pues la imagen
en disco es igual a la existente en la memoria real.

El bit de referencia como su nombre lo indica se enciende cada vez que la pgina es
referenciada, bien sea para lectura o escritura. Sirve para apoyar al sistema operativo,
para seleccionar la pgina a salir cuando se presenta un defecto de pgina. Las
pginas no referenciadas son unas muy buenas candidatas a salir.

El bit de caching. Si est esta desactivado, cuando se produzca una operacin de


E/S, el sistema operativo busca la informacin en el hardware y no una copia antigua
en el cach.11

3.9. Paginacin

Figura 28. En la figura se muestra un Esquema del proceso de paginacin, una de las tcnicas que se usan para el
manejo de memoria. Fuente: http://sistop.gwolf.org/html/04_administracion_de_memoria.html#paginacion.

Es una tcnica de manejo de memoria, en la cual el espacio de memoria se


divide en secciones fsicas de igual tamao, denominadas marcos de pgina. Los
programas se dividen en unidades lgicas, denominadas pginas, que tienen el mismo
tamao que los marcos de pginas. De esta forma, se puede cargar una pgina de
informacin en cualquier marco de pgina. Las pginas sirven como unidad de
almacenamiento de informacin y de transferencia entre memoria principal y memoria

11
Un hecho notable en los sistemas que manejan paginacin es que cuando el proceso comienza a
ejecutarse ocurren un gran nmero de fallos de pgina, porque es cuando est referenciando muchas
direcciones nuevas por primera vez, despus el sistema se estabiliza, conforme el nmero de marcos
asignados se acerca al tamao del conjunto de trabajo.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 91 de 115

auxiliar o secundaria. Cada marco se identifica por la direccin de marco, que est en
la posicin fsica de la primera palabra en el marco de pgina.

Las pginas de un programa necesitan estar contiguamente en memoria,


aunque el programador lo observe de esta forma. Los mecanismos de paginacin
permiten la correspondencia correcta entre las direcciones virtuales (dadas por los
programas) y las direcciones reales de la memoria que se reverencien. Cada pgina
consiste en z palabras contiguas; un espacio de direcciones N de un programa
consiste de n paginas (0,1,2,3n-1) (n*z direcciones virtuales) y el espacio de
memoria consiste de m marcos de pginas (0,z,2z,,(m-1)z)(m*z posiciones). Una
direccin virtual a es equivalente a una direccin dada como una dupla (p, d), en la
cual p es el nmero de la pgina y del nmero de la palabra dentro de la pgina, de
acuerdo con la relacin:

a=p*z+d (0<=d<z)
p=(a/z) (parte entera de la division)
d=a mod z (resto de divisor a/z)

En las maquinas que usan aritmtica binaria, el clculo de (p, d) es trivial, si z


es potencia de 2. Por ejemplo, si el campo de direcciones de la instruccin es de m bits
(m>6), los cuatro bits ms significativos indican el nmero de la pgina y los m-4 bits
restantes, el desplazamiento.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 92 de 115

Figura 29. Ejemplo de paginacin. En la figura se muestra un ejemplo grfico de paginacin con un espacio de
direccionamiento de 32 bytes y pginas de 4 bytes. Fuente:
http://sistop.gwolf.org/html/04_administracion_de_memoria.html#paginacion

Para tener el control de las pginas, debe mantenerse una tabla en memoria
que se denomina tabla de Mapas de Pagina (PMT) para cada uno de los procesos.

Hasta ahora, los mtodos que hemos visto de la administracin de la memoria


principal, nos han dejado con un problema: fragmentacin, (huecos en la memoria que
no pueden usarse debido a lo pequeo de su espacio) lo que nos provoca un
desperdicio de memoria principal. Una posible solucin para la fragmentacin externa
es permitir que espacio de direcciones lgicas lleve a cabo un proceso en direcciones
no contiguas, as permitiendo al proceso ubicarse en cualquier espacio de memoria
fsica que est disponible, aunque est dividida. Una forma de implementar esta
solucin es a travs del uso de un esquema de paginacin. La paginacin evita el
considerable problema de ajustar los pedazos de memoria de tamaos variables que
han sufrido los esquemas de manejo de memoria anteriores. Dado a sus ventajas
sobre los mtodos previos, la paginacin, en sus diversas formas, es usada en muchos
sistemas operativos.

Al utilizar la memoria virtual, las direcciones no pasan en forma directa al bus de


memoria, sino que van a una unidad administradora de la memoria (MMU Memory
Management Unit). Estas direcciones generadas por los programas se llaman
direcciones virtuales y conforman el hueco de direcciones virtuales. Este hueco se
divide en unidades llamadas pginas. Las unidades correspondientes en la memoria
fsica se llaman marcos para pgina o frames. Las pginas y los frames tienen siempre
el mismo tamao.

3.9.1. Tablas de pginas

Cada pgina tiene un nmero que se utiliza como ndice en la tabla de pginas, lo que
da por resultado el nmero del marco correspondiente a esa pgina virtual. Si el bit presente /
ausente es 0, se provoca un sealamiento (trap) hacia el sistema operativo. Si el bit es 1, el
nmero de marco que aparece en la tabla de pginas se copia en los bits de mayor orden del
registro de salida, junto con el ajuste (offset) de 12 bits, el cual se copia sin modificaciones de la
direccin virtual de entrada. Juntos forman una direccin fsica de 15 bits. El registro de salida
se coloca entonces en el bus de la memoria como la direccin en la memoria fsica.(Tomado de:
http://www.monografias.com/trabajos13/gesme/gesme.shtml#pag#ixzz3rbCQD5Z4)

En teora, la asociacin de las direcciones virtuales con las fsicas se efecta


segn lo descrito. El nmero de pgina virtual se divide en un nmero de pgina virtual
(los bits superiores) y un ajuste (los bits inferiores). El nmero de pgina virtual se
utiliza como un ndice en la tabla de pginas para encontrar la entrada de esa pgina
virtual. El nmero de marco (si existe) se determina a partir de la tabla de pginas. El
nmero de marco se asocia al extremo superior del ajuste y reemplaza al nmero de
pgina virtual para formar una direccin fsica que se puede enviar a la memoria. La
finalidad de la tabla de pginas es asociar las pginas virtuales con los marcos. En
trminos matemticos, la tabla de pginas es una funcin, cuyo argumento es el
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 93 de 115

nmero de pgina virtual y como resultado el nmero del marco fsico. Mediante el
resultado de esta funcin, se puede reemplazar el campo de la pgina virtual de una
direccin virtual por un campo de marco, lo que produce una direccin en la memoria
fsica. Sin embargo, hay que enfrentar dos aspectos fundamentales:

La tabla de pginas puede ser demasiado grande.


La asociacin debe ser rpida.

El primer punto proviene del hecho de que las computadoras modernas utilizan
direcciones virtuales de al menos 32 bits. Por ejemplo, si el tamao de pgina es de
4K, un hueco de direcciones de 32 bits tiene un milln de pginas; en el caso de un
hueco de direcciones de 64 bits, se tendra ms informacin de la que uno quisiera
contemplar. El segundo punto es consecuencia del hecho de que la asociacin virtual
fsica debe hacerse en cada referencia a la memoria. Una instruccin comn tiene una
palabra de instruccin y tambin un operando de memoria. Entonces es necesario
hacer una, dos o ms referencias a la tabla de pginas por cada instruccin.

Caractersticas de la paginacin:

El espacio de direcciones lgico de un proceso puede ser no contiguo.


Se divide la memoria fsica en bloques de tamao fijo llamados marcos (frames).
Se divide la memoria en bloques de tamao llamados pginas.
Se mantiene informacin en los marcos libres.
Para correr un programa de n pginas de tamao, se necesitan encontrara n
marcos y cargar el programa.
Se establece una tabla de pginas para trasladar las direcciones lgicas a fsicas.
Se produce fragmentacin interna.

3.9.2. Ventajas de la paginacin

1. Es posible comenzar a ejecutar un programa, cargando solo una parte del mismo en
memoria, y el resto se cargar bajo la solicitud.
2. No es necesario que las paginas estn contiguas en memoria, por lo que no se
necesitan procesos de compactacin cuando existen marcos de pginas libres dispersos
en la memoria.
3. Es fcil controlar todas las pginas, ya que tienen el mismo tamao.
4. El mecanismo de traduccin de direcciones (DAT) permite separar los conceptos de
espacio de direcciones y espacios de memoria. Todo el mecanismo es transparente al
usuario.
5. Se libera al programador de la restriccin de programar para un tamao fsico de
memoria, con lo que s e aumenta su productividad. Se puede programar en funcin de
una memoria mucho ms grande a la existente.
6. Al no necesitarse cargar un programa completo en memoria para su ejecucin, se
puede aumentar el nmero de programas multiprogramndose.
7. Se elimina el problema de fragmentacin externa.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 94 de 115

3.9.3. Desventajas de la paginacin

1. El costo de hardware y software se incrementa, por la nueva informacin que debe


manejarse y el mecanismo de traduccin de direcciones necesario. Se consume muchos
ms recursos de memoria, tiempo en el CPU para su implantacin.
2. Se deben reservar reas de memoria para las PMT de los procesos. Al no ser fija el
tamao de estas, se crea un problema semejante al de los programas (como asignar un
tamao ptimo sin desperdicio de memoria, u "ovearhead" del procesador).
3. Aparece el problema de fragmentacin interna. As, si se requieren 5K para un
programa, pero las paginas son de 4K, debern asignrseles 2 paginas (8k), con lo que
quedan 3K sin utilizar. La suma de los espacios libres dejados de esta forma puede ser
mayor que el de varias pginas, pero no podrn ser utilizados. Debe asignarse un tamao
promedio a las pginas, evitando que si son muy pequeas, se necesiten TABLAS BMT y
PMT muy grandes, y si son muy grandes, se incremente el grado de fragmentacin
interna.

3.9.4. Traduccin de Direcciones

La direccin generada por la CPU se divide en:

Numero de pgina (p): utilizado como ndice en la tabla de pginas que contiene la
direccin base de cada pgina en la memoria fsica.

Offset de la pgina (d): combinado con la direccin base define la direccin fsica que ser
enviada a la unidad de memoria.

Referencias:

http://sistop.gwolf.org/html/04_administracion_de_memoria.html#sec-5-1
http://fundamentosso.readthedocs.org/en/latest/cap4_memoria.md.html
http://fundamentosso.readthedocs.org/en/latest/cap8_memoriavirtual.md.html
http://www.monografias.com/trabajos13/gesme/gesme.shtml#pag#ixzz3rbCQD5Z4
http://sistop.gwolf.org/html/04_administracion_de_memoria.html#paginacion
UNAD, (2003). Modulo del Curso Sistemas Operativos, Colombia, 2013.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 95 de 115

8. Recursos

8.1. Fsicos
- Aulas de clases.
- Tableros.
- Computadores.

8.2. Tecnolgicos
- Plataforma SLPAVIA, Internet, Buscadores.

8.3. Audiovisuales
- VideoBeam

8.4. Telecomunicaciones
- Skype, Sistemas de vdeo conferencia.

9. Glosario
Aplicaciones: El trmino "aplicacin" es una forma abreviada para designar a un programa de
aplicacin. Un programa de aplicacin es aqul diseado para desempear una funcin especfica
directamente para el usuario o, en algunos casos, para otro programa de aplicacin. Los ejemplos
de estas aplicaciones incluyen los procesadores de textos, programas de bases de datos,
navegadores de la Red, herramientas de desarrollo, programas de dibujo, pintura y edicin de
imgenes, y programas de comunicaciones. Las aplicaciones usan los servicios del sistema
operativo del ordenador y otras aplicaciones de apoyo. La solicitud formal y los medios de
comunicarse con otros programas que usa un programa de aplicacin son lo que se denomina
interfaz de programa de aplicacin (application programa interface, API).
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 96 de 115

Bit de Espera: Es un bit dentro de la Pep.

Canales: Procesadores dedicados.

Cdigo: O programa de mquina; es el conjunto de instrucciones mquina que tiene por objeto
que el computador realice una determinada funcin.

Controlador de dispositivo: Software que controla un dispositivo que est conectado a, o es parte
de, una computadora. (En ingls: device driver).

Demonio: Un demonio es un programa que funciona sin intervencin humana, para cumplir una
tarea determinada. Por ejemplo, lpd es un demonio que controla el flujo de los trabajos de
impresin en una impresora

Desvos: Interrupciones debidas a errores de programacin, producidas por el procesador cuando


intenta ejecutar una instruccin.

Direccin IP: Las direcciones IP son el mtodo mediante el cual se identifican los ordenadores
individuales (o, en una interpretacin ms estricta, las interfaces de red de dichos ordenadores)
dentro de un red TCP/IP. Todas las direcciones IP consisten en cuatro nmeros separados por
puntos, donde cada nmero est entre 0 y 255.

Dispositivos de E/S: Componente mecnico que se conecta a la Unidad Central de Procesamiento


a travs de las unidades de Entrada y Salida.

E/S: Entrada / Salida.

ENIAC: (electronic numerical integrator anallizer and computer), uno de los primeros
computadores construdos.

Estado problema: Modo Usuario; Este es el modo en el que se ejecutan los programas del usuario,
en el cual slo se pueden ejecutar instrucciones no privilegiadas.

Estado Supervisor: Modo Ncleo; En este modo se pueden ejecutar todas las instrucciones
privilegiadas y no privilegiadas, teniendo acceso total al hardware.

Estado: El estado es un bit dentro de la PEP.

Hardware: Son todos los componentes fsicos que componen un computador.


Instrucciones no privilegiadas: Todas aquellas que su ejecucin no afecta los recursos de la
mquina de forma directa.

Instrucciones privilegiadas: Aquellas instrucciones cuya ejecucin afecta directamente los


recursos de la mquina.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 97 de 115

Interrupcin Asincrnica: Son aquellas interrupciones que ocurren de forma simultnea con el
procesamiento y son generadas por un agente distinto al procesador.

Interrupciones: Una interrupcin es un llamado forzoso a un procedimiento.

Kernel: ncleo; La parte central de un sistema operativo, sobre la cual el resto del sistema se
apoya. Llamada al sistema: Es una rutina que cumple una funcin a nivel del sistema en nombre
de un proceso. En ingls: System Call.

Mquina Virtual: Se trata de un tipo de sistemas operativos que presentan una interface a cada
proceso, mostrando una mquina que parece idntica a la mquina real subyacente.

Mscara: Un Mecanismo creado para el control de las interrupciones.

Mecanismo de estados: Mecanismo ideado para conservar la consistencia e integridad en un


sistema multiusuario.

Memoria virtual: La idea fundamental detrs de la memoria virtual es que el tamao combinado
del programa, los datos y la pila de ejecucin puede exceder la cantidad de memoria real
disponible para l. El sistema operativo mantiene aquellas partes del programa que estn
utilizando en cada momento en la memoria principal y el resto permanece en el disco. En la
medida en que se vayan necesitando nuevas partes estas se intercambian con las residentes en la
memoria principal.

Memoria: Cuando se refiere a ordenadores, la memoria (en general) es cualquier hardware capaz
de almacenar datos para recuperarlos posteriormente. En este contexto, la memoria en general se
refiere especficamente a la RAM.

Multiprogramacin: Se caracteriza por una multitud de programas activos simultneamente que


compiten por los recursos del sistema, tales como procesador, memoria y dispositivos de E/S.

Multitarea: Un solo usuario ejecutando varias tareas al mismo tiempo en un sistema.

Ncleo: La parte central de un sistema operativo, sobre la cual el resto del sistema se apoya. En
ingls: kernel.

PCB: (Process Control Bloc). Estructura de datos almacenan la PEP, aspectos sobre la ejecucin del
proceso y de la utilizacin de los recursos.

Planificacin: Proceso cuyo objetivo principal es repartir el tiempo del procesador entre los
procesos ejecutables y optimizar el comportamiento del sistema.

Prioridad: Nmero asociado a cada proceso o thread y utilizado por la poltica de planificacin.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 98 de 115

Procesador: Llamado tambin Microprocesador. Es el chip encargado de ejecutar las instrucciones


y procesar los datos que son necesarios para todas las funciones de la computadora. Se puede
decir que es el cerebro de la computadora. El estndar del mercado es el fabricado por la empresa
INTEL.

Proceso: programa en ejecucin.

Programa: Es esencialmente un archivo ejecutable que se coloca en memoria para que pueda el
procesador ir tomando su cdigo, y obedeciendo las instrucciones de l.

PSW-PEP: (Program status Word Palabra de Estado del Programa); Contiene toda la informacin
del estado del proceso y define sus privilegios.
SGMV: Sistema Generador de Mquina Virtual.

Shell: Intrprete de comandos.

Sincronizacin: Necesidad que tiene algunos procesos de bloquearse en determinadas


circunstancias y ser despertados cuando ocurren ciertos eventos.

Sistema de Archivos Sistema de ficheros: Es el mtodo mediante el cual se almacena la


informacin en las unidades de disco. Los distintos sistemas operativos normalmente usan
diferentes sistemas de ficheros, lo que dificulta el compartir los contenidos de una unidad de disco
entre ellos. Sin embargo, Linux admite mltiples sistemas de ficheros, lo cual hace posible la
lectura/escritura de particiones dedicadas a MS-Windows, por ejemplo. En ingls: Filesystem .

Sistema Monoltico: Sistemas que tienen un ncleo grande y complejo, que engloba todos los
servicios del sistema.

Sistema Monousuario: Sistemas operativos que no pueden dar servicio sino slo a un usuario cada
vez, sin importar el nmero de procesadores que tenga la computadora o el nmero de tareas o
procesos que el usuario pueda ejecutar en un instante de tiempo.

Sistema Multiusuario: Sistemas que pueden atender mltiples usuarios, ya sea por medio de
varias terminales conectadas a la computadora o por medio sesiones remotas en una red de
comunicaciones.

Sistema operativo: Conjunto de software que controla los distintos recursos del ordenador. En
ingls: operating system.

Sistemas de tiempo compartido: Son sistemas de multiprogramacin en donde existe interaccin


directa entre el usuario y la mquina.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 99 de 115

10. Bibliografa

ORTIZ PABON, H. (2005). Sistemas Operativos Modernos, Medelln: Sello Editorial Universidad de
Medelln.

QUESADA, A. & CANDELA, S. & GARCA C. & SANTANA F. & SANTOS J. (2007) Fundamentos De
Sistemas Operativos. Teora Y Ejercicios Resueltos.

STALLINGS, W. (2005). Sistemas Operativos principios de diseo e interioridades. Editorial Prentice


Hall.

SILBERSCHATZ, A. (2007) Sistemas operativos, Mxico: Editorial Limusa.

TANENBAUM, A. (2003). Sistemas operativos modernos, Mxico: Editorial Pearson Educacin.

UNAD, (2013). Modulo del Curso Sistemas Operativos, Colombia.

11. Enlaces de Inters

http://fundamentosso.readthedocs.org/en/latest/index.html#
http://sistop.gwolf.org/html/index.html#undefined
https://books.google.com.co/books?id=fRK3lbTrNy4C&printsec=frontcover&hl=es#v=o
nepage&q&f=false
http://fundamentosso.readthedocs.org/en/latest/cap8_memoriavirtual.md.html

http://www.monografias.com/trabajos13/gesme/gesme.shtml#pag#ixzz3rbCQD5Z4

http://wiki.inf.utfsm.cl/index.php?title=Comunicaci%C3%B3n_entre_procesos

http://sistemasoperativos.angelfire.com/html/2.4.2.html

http://www.monografias.com/trabajos51/sincro-comunicacion/sincro-
comunicacion2.shtml#ixzz3rVUxoiRr
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 100 de 115

http://www.ecured.cu/index.php/Planificaci%C3%B3n_de_procesos_en_Sistemas_
Operativos

12. Perfil del TUTOR(A)


Fabin Enrique Hoyos Paternina, Ingeniero de Sistemas egresado de la Universidad de San
Buenaventura, Especialista en Telecomunicaciones egresado de la Universidad Autnoma de
Bucaramanga en Convenio con la universidad Tecnolgica de Bolvar y Magister en
Educacin. Con 9 aos de experiencia docente, desarrollados en la Universidad Nacional
Abierta y a Distancia, la Corporacin Unificada Nacional y la Fundacin Tecnolgica Antonio de
Arevalo TECNAR. Amplios Conocimientos en el tema de Algoritmos y programacin en
lenguaje C, adems Desarrollo, Diseo y Programacin de Pginas Web, utilizando lenguajes
de programacin HTML, CSS3 y PHP, tambin tengo conocimientos en el diseo, instalacin y
configuracin de redes de computadoras.

[NOMBRE DEL TUTOR]


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 101 de 115


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 102 de 115

FAC U LTAD D E D I S E O E I N G E N I E R A
TECNOLOGA EN SISTEMAS DE INFORMACIN
ELECTIVA DE PROFUNDIZ ACIN I

GUA DE TRABAJO DEL ESTUDIANTE


S I S T E M A S O P E R AT I V O S

FA B I A N H OYO S PAT E R N I N A
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 103 de 115

SISTEMAS OPERATIVOS
Programas de Educacin a Distancia
Fundacin Antonio de Arvalo, TECNAR

Autor: Ing. Fabin Enrique Hoyos Paternina

Diseo de la Plantilla y Estructura del mdulo: Astrid Caldern Hernndez


Diagramacin, Portadas y Arte Grfico: [Nombre del Diseador Grfico]

Primera Edicin: Julio 2016 - [Nmero de Ejemplares]

Sistemas Operativos
Programas de Educacin a Distancia
Fundacin Antonio de Arvalo - TECNAR
2016; [N] Pg.; 21.5 X 27.9 cm

Prohibida su reproduccin parcial o total, por cualquier medio o mtodo de este mdulo sin previa
autorizacin de TECNAR y la Empresa Editorial.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 104 de 115

GUA DE TRABAJO
U N I D A D 1 : I N T R O D U C C I O N A L O S S I S T E M A S O P E R AT I V O S
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 105 de 115

GUA DE TRABAJO DEL ESTUDIANTE

GUIA DE APRENDIZAJE ACTIVIDAD 1 - SEMANA 4


1. Titulo
Gua actividad Unidad 1.

2. Temticas revisadas
Unidad 1.

3. Fecha de entrega
Martes, 01 de marzo de 2016

4. Actividad problematizadora general


- Realizar una Lnea de Tiempo sobre la temtica Historia de Los Sistemas Operativos,
Utilizando la Herramienta On line, tiki-toki.
- Realizar un Mapa Mental sobre la temtica Hardware del Computador, utilizando la
herramienta On line Coggle.
5. Producto esperado
En un documento desarrollado en el programa Word, se deben entregar los link de los dos
productos solicitados, adems el documento debe contener la siguiente estructura:
- Portada, Con los datos Principales del Estudiante.
- Introduccin.
- Contenido (Link Solicitados).
- Bibliografa.
6. Forma de Entrega
El docente del curso, creara un espacio para la entrega del documento en la plataforma SLPAVIA,
para que los estudiantes entreguen la actividad.
7. Rubrica de evaluacin

Criterios de Valoracin Baja Valoracin Media Valoracin Alta Mximo Puntaje


Evaluacin

Creacin de la El estudiante no El estudiante El estudiante


2.0
Lnea de Tiempo entrega la Lnea entrega la lnea realiza la Lnea
de tiempo, pero de tiempo en la
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 106 de 115

de Tiempo. (0.0) no en la herramienta y


Herramienta On con la temtica
Line, solicitada o solicitada. (2.0)
no trabaja la
temtica
Solicitada (1.0)

El estudiante no El estudiante El estudiante


entrega el Mapa entrega el Mapa realiza Mapa
Mental. (0.0) Mental, pero no Mental en la
en la herramienta y
Creacin del
Herramienta On con la temtica 2.0
Mapa Mental
Line, solicitada o solicitada. (2.0)
no trabaja la
temtica
Solicitada (1.0)

El estudiante No El documento El estudiante


entrega el Final entregado, entrega el
Entrega del Documento Final no cumple con documento final
Documento en Splavia. (0.0) las en Splavia y este 1.0
Final caractersticas cumple con todos
solicitadas en la los requisitos.
gua. (0.5) (1.0)

5.0
Total Puntajes
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 107 de 115

GUA DE TRABAJO
UNIDAD 2: GESTION DE PROCESOS
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 108 de 115

GUA DE TRABAJO DEL ESTUDIANTE

GUIA DE APRENDIZAJE ACTIVIDAD 1 - SEMANA 10


1. Titulo
Gua actividad Unidad 2.

2. Temticas revisadas
Unidad 2.

3. Fecha de entrega
Viernes, 22 de abril de 2016

4. Actividad problematizadora general


- Tomado como base la Teora sobre la planificacin de procesos y profundizando el tema
de Algoritmos de planificacin, investigar cuales son los algoritmos de planificacin,
realizar una descripcin de cada uno de ellos y crear un ejemplo de cmo trabaja cada
algoritmo.
- Luego de desarrollado el punto anterior, a travs de un cuadro, clasificar los algoritmos de
planificacin, segn utilizacin en planificacin de Multitareas preventivas o Multitareas
Cooperativas, adems agregar la clasificacin y si emplean informacin intrnseca a los
procesos evaluados o no lo hacen.
- Desarrollo Practico:
1. Instalar un programa de Mquina Virtual en un computador, con sistema Operativo
Windows (se recomienda utilizar Virtual Box). Para descargarlo pueden ingresar a la
pgina https://www.virtualbox.org/.
2. Dentro de la mquina virtual, Instalar el sistema Operativo Linux (Cualquier
Distribucin), Documentar la instalacin pas a paso.
3. Investigar los principales comandos del sistema operativo Linux, para la gestin de
ficheros y directorios, crear una lista y descripcin de cada uno.
4. Realizar la prueba de los comandos de gestin de ficheros y directorios investigados
en el S.O. Instalado y documentar.

5. Producto esperado
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 109 de 115

En un documento desarrollado en el programa Word, donde se entregue el desarrollo de los


puntos, debe incluir:
- Portada, Con los datos Principales del Estudiante.
- Introduccin.
- Contenido
1. Respuesta punto 1.
2. Respuesta punto 2.
3. Documentacin, paso a paso a travs de pantallazos, de la Instalacin del Sistema
Operativo Linux.
4. Listado de Comandos y Pantallazos de las pruebas realizadas.
- Conclusiones
- Bibliografa.
6. Forma de Entrega
El docente del curso, creara un espacio para la entrega del documento en la plataforma SLPAVIA,
para que los estudiantes entreguen la actividad.
7. Rubrica de evaluacin

Criterios de Valoracin Baja Valoracin Media Valoracin Alta Mximo Puntaje


Evaluacin

El estudiante no El estudiante El estudiante


entrega la entrega la entrega la
respuesta al respuesta al respuesta al
Punto 1. (0.0) Punto 1, pero Punto 1, y esta
esta no hace responde
Respuesta referencia al total adecuadamente
1.25
Punto 1 de puntos a todo los
solicitados o no requerimientos,
responden entregados en la
adecuadamente Gua. (1.25)
la pregunta
entregada. (0.5)

El estudiante no El estudiante El estudiante


entrega la entrega la entrega la
Respuesta
respuesta al respuesta al respuesta al 1.25
Punto 2
Punto 2. (0.0) Punto 2, pero Punto 2, y esta
esta no hace responde
referencia al total adecuadamente
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 110 de 115

de puntos a todo los


solicitados o no requerimientos,
responden entregados en la
adecuadamente Gua. (1.25)
la pregunta
entregada. (0.5)

El estudiante no El estudiante El estudiante


entrega la entrega la entrega la
respuesta al respuesta al respuesta al
Punto 3. (0.0) Punto 3, pero Punto 3, y esta
esta no hace responde
Respuesta referencia al total adecuadamente
1.25
Punto 3 de puntos a todo los
solicitados o no requerimientos,
responden entregados en la
adecuadamente Gua. (1.25)
la pregunta
entregada. (0.5)

El estudiante no El estudiante El estudiante


entrega la entrega la entrega la
Respuesta respuesta al respuesta al respuesta al
Punto 4 Punto 4. (0.0) Punto 4, pero Punto 4, y esta
esta no hace responde
referencia al total adecuadamente
1.25
de puntos a todo los
solicitados o no requerimientos,
responden entregados en la
adecuadamente Gua. (1.25)
la pregunta
entregada. (0.5)

Total Puntaje 5.0


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 111 de 115

GUA DE TRABAJO
UNIDAD 3: ADMINISTRACION DE MEMORIA
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 112 de 115

GUA DE TRABAJO DEL ESTUDIANTE

GUIA DE APRENDIZAJE ACTIVIDAD 3 - SEMANA 14


1. Titulo
Gua actividad Unidad 3.

2. Temticas revisadas
Unidad 3.

3. Fecha de entrega
Lunes, 30 de mayo de 2016

4. Actividad problematizadora general


- Investigar, cuales son la estrategias que utilizan los sistemas operativos para compartir la
memoria entre procesos, realizar una descripcin de los mismos y entregar ejemplos.
- Realizar una investigacin sobre las tcnicas de gestin de memoria paginacin y
segmentacin, adems se debe incluir un cuadro comparativo de ventajas y desventajas,
esta actividad se debe entregar a travs de unas diapositivas, desarrolladas en Microsoft
PowerPoint.
- Luego de haber instalado el sistema operativo Linux, el estudiante debe realizar una
investigacin donde se mencionen los siguiente puntos, con respecto a Linux:
1. Recursos necesarios para la instalacin.
2. Forma de administrar los procesos.
3. Forma de administrar la memoria.
4. Forma de administrar los dispositivos de entrada y salida.
5. Forma de administrar archivos y directorios.
6. Proteccin y seguridad.
7. Administracin de redes.

5. Producto esperado
En un documento desarrollado en el programa Word, donde se entregue el desarrollo de los
puntos, debe incluir:
- Portada, Con los datos Principales del Estudiante.
- Introduccin.
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 113 de 115

- Contenido
5. Respuesta punto 1.
6. Respuesta punto 3.
- Conclusiones
- Bibliografa.
Archivo en PowerPoint, que contenga la informacin de la investigacin sobre las tcnicas de
gestin de memoria.
6. Forma de Entrega
El docente del curso, creara un espacio para la entrega del documento en la plataforma SLPAVIA,
para que los estudiantes entreguen los productos esperados.
7. Rubrica de evaluacin

Criterios de Valoracin Baja Valoracin Media Valoracin Alta Mximo Puntaje


Evaluacin

El estudiante no El estudiante El estudiante


entrega la entrega la entrega la
respuesta al respuesta al respuesta al
Punto 1. (0.0) Punto 1, pero Punto 1, y esta
Respuesta esta no responde
1.5
Punto 1 responden adecuadamente
adecuadamente a todo los
la pregunta requerimientos,
entregada. (0.5) entregados en la
Gua. (1.25)

El estudiante no El estudiante El estudiante


entrega la entrega la entrega la
respuesta al respuesta al respuesta al
Punto 2. (0.0) Punto 2, pero Punto 2, y esta
Respuesta esta no responde
1.5
Punto 2 responden adecuadamente
adecuadamente a todo los
la pregunta requerimientos,
entregada. (0.5) entregados en la
Gua. (1.25)

El estudiante no El estudiante El estudiante


Respuesta entrega la entrega la entrega la
1.5
Punto 3 respuesta al respuesta al respuesta al
Punto 3. (0.0) Punto 3, pero Punto 3, y esta
FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 114 de 115

esta no responde
responden adecuadamente
adecuadamente a todo los
la pregunta requerimientos,
entregada. (0.5) entregados en la
Gua. (1.25)

El estudiante no El estudiante
entrega los entrega los
Respuesta productos productos
Punto 4 N/A 0.5
esperados, en los esperados, en los
formatos formatos
solicitados. (0.0) solicitados. (0.0)

Total Puntaje 5.0


FUNDACIN TECNOLGICA ANTONIO DE ARVALO - TECNAR Fecha: 01/10/2015
FACULTAD DE DISEO E INGENIERA
TECNOLOGA EN SISTEMAS DE INFORMACIN Versin:1.0

SISTEMAS OPERATIVOS Pgina 115 de 115

También podría gustarte