0% encontró este documento útil (0 votos)
205 vistas35 páginas

Implantación de Sistemas Operativos

Este documento presenta un temario sobre la implantación de sistemas operativos. Introduce los conceptos clave de la arquitectura de sistemas operativos, incluyendo la definición de sistemas operativos, la evolución de sistemas por lotes a sistemas en tiempo compartido, y los tipos de sistemas como sistemas paralelos y distribuidos. También describe las funciones principales de los sistemas operativos como la gestión de procesos, memoria y archivos.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
205 vistas35 páginas

Implantación de Sistemas Operativos

Este documento presenta un temario sobre la implantación de sistemas operativos. Introduce los conceptos clave de la arquitectura de sistemas operativos, incluyendo la definición de sistemas operativos, la evolución de sistemas por lotes a sistemas en tiempo compartido, y los tipos de sistemas como sistemas paralelos y distribuidos. También describe las funciones principales de los sistemas operativos como la gestión de procesos, memoria y archivos.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Implantación de sistemas operativos

TEMARIO

Unidad 1: Arquitectura de los Sistemas Operativos

1.- Introducción
1.1.- Definición de Sistema Operativo
1.2.- Sistemas por lotes sencillos
1.3.- Sistemas por lotes multiprogramados
1.4.- Sistemas de tiempo compartido
1.5.- Sistemas de computador personal
1.6.- Sistemas paralelos
1.7.- Sistemas distribuidos
1.8.- Sistemas en tiempo real

2.- Estructura
2.1.-Funcionamiento de los sistemas de computación
2.2.-Componentes
2.3.-Servicios
2.4.-Llamadas al sistema
2.5.-Programas del sistema
2.6.-Estructura del sistema
2.7.-Máquinas virtuales

Unidad 2: Funciones de los Sistemas Operativos

1.-Gestión de Procesos
1.1.-Definición de proceso
1.2.-Estados de un proceso
1.3.-Colas de planificación
1.4.-Algoritmos de planificación

2.-Gestión de Memoria Principal


2.1.-Intercambio
2.2.-Asignación contigua
2.3.-Fragmentación externa e interna
2.4.-Compactación
2.5.-Paginación
2.6.-Segmentación
2.7.-Memoria Virtual

1
Implantación de sistemas operativos

3.-Gestión de Archivos
3.1.-Definición de sistemas de archivos
3.2.-Definición de archivo
3.3.-Atributos de un archivo
3.4.-Operaciones sobre un archivo
3.5.-Tipos de archivo
3.6.-Métodos de acceso
3.7.-Definición de directorio
3.8.-Operaciones sobre un directorio

4.-Gestión de Entrada – Salida (E/S)


4.1.-Definición de E/S
4.2.-Estructura física de un disco
4.3.-Estructura lógica de un disco
4.4.-Clúster
4.5.-Tablas de localización de archivos (FAT, NTFS, …)

Unidad 3: Documentación técnica y Resolución de


problemas

1.-Documentación técnica
1.1.-Elaboración documentación técnica
1.1.1.-Fases de una implantación
[Link].-Requerimientos
[Link].-Análisis
[Link].-Instalación
[Link].-Pruebas
[Link].-Mantenimiento
[Link].-Documentación
[Link].1.-Elaboración guía de usuario
1.2.-Tareas a realizar por un administrador informático

2.-Resolución de problemas durante la asistencia técnica


2.1.-Elaboración de un parte de asistencia técnica

2
Implantación de sistemas operativos

Unidad 1: Arquitectura de los Sistemas Operativos

1 INTRODUCCIÓN

1.1 Definición de SO

Características:

-Eficiente
-Seguro
-Fiable
-Amigable

Definiciones de Sistema operativo:

- El SO es un programa (software) que actúa de intermediario entre


el usuario y el hardware.

- Controla y coordina el uso del hardware entre los diversos


programas de aplicación de los distintos usuarios.

- Asignador de recursos hardware y software, por ejemplo: tiempo de


CPU, espacio de memoria,…

- Los recursos se deben asignar de manera eficiente y justa.

- Controla la ejecución de los programas de usuarios a fin de evitar


errores y el uso incorrecto del ordenador.

- Es el programa individual, también llamado núcleo, que siempre se


está ejecutando en el ordenador.

- El SO saca el máximo rendimiento al hardware

Recurso: Componente software o hardware de un sistema informático.

Programas de aplicación CPU, memoria, disco...

Los SO gestionan los recursos


La asignación de recursos debe ser Eficiente y Justa

Proceso: Programa en ejecución.

3
Implantación de sistemas operativos

El núcleo o Kernel: Es el programa básico del SO para que se ejecuten los


distintos servicios del SO.

Programas que se ejecutan al arrancar un ordenador:

1. BIOS
2. Gestor de arranque del SO
3. SO

Los SO se crearon para facilitar el uso del hardware y es por esto


por lo que vamos a hacer historia, repasando lo sucedido desde la creación
de los SO.

1.2 Sistemas por lotes sencillos

SO Programa usuario

Características:

- No hay interacción entre el usuario y el programa mientras este se


está ejecutando.

- El SO era sencillo ya que sólo se encargaba de transferir el control


de un trabajo al siguiente.

- Se utiliza la técnica de Spooling (utilizar discos para no ralentizar el


SO). Antes de la aparición de los discos como unidades de
almacenamiento, la lectura y escritura de datos se realizaba en tarjetas
perforadas (dispositivos mucho más lentos que los discos). Con la técnica
de spooling se conseguía utilizar a los discos como memoria intermedia
(buffer), ya que era más rápido que volver a escribir en la tarjeta perforada.

4
Implantación de sistemas operativos

1.3 Sistemas por lotes multiprogramados

SO Programa usuario1 Programa usuario2

Características:

- Al usar el spooling permite tener distintos trabajos en disco y la


posibilidad de escoger el trabajo a ejecutar, esto da lugar a lo que se
conoce como Multiprogramación.

- La idea es que el SO elige un programa y este necesitará una


operación de E/S, durante la cual la CPU estará ociosa, y es ahí donde la
el SO elige otro programa para que se ejecute
Problemas:
- Gestión de Procesos (elección de un trabajo para su
ejecución)
- Gestión de Memoria (al tener distintos trabajos en memoria a
la misma vez)

- El usuario no puede interactuar con su trabajo.

1.4 Sistemas de tiempo compartido o Multitarea

Características:

- A diferencia con el sistema multiprogramado aquí si existe


interacción entre el usuario y el SO, en la ejecución de procesos.

1.5 Sistemas de computador personal

- Debido al abaratamiento del hardware, vuelve a ser factible tener


un sistema de computación dedicado a cada usuario. Así a finales de la
década de los 70 aparecen los llamados PC (personal computer). Estos
tomaron distintos SO como por ejemplo:
-Multics (1964, creado por los laboratorios Bell y MIT) è
Macrocomputador
-Unix (1969, Laboratorios Bell) è Minicomputadoras
-Windows NT, IBM 0S/2, MAC (década 80) è PC

-Los SO heredaron parte de las ideas, características y soluciones


de los grandes ordenadores.

5
Implantación de sistemas operativos

1.6 Sistemas paralelos

Características:

- Cuando tenemos más de 1 procesador, pero que comparten la


misma memoria, dispositivos y componentes.

- Los programas se distribuyen entre los distintos procesadores.

- Si un procesador deja de funcionar el sistema sigue funcionando


sobre el resto de procesadores.

1.7 Sistemas distribuidos

Características:

-Equipos conectados en red, en los que se aprovecha la capacidad de


todos ellos. A cada equipo se le llama nodo. Cada equipo puede ser un PC,
servidor o incluso un supercomputador.
-A diferencia de los sistemas paralelos aquí No comparten Memoria,
dispositivos, bus, reloj...
-SO inteligente encargado de repartir la carga de trabajo entre los
distintos nodos y luego recoger el resultado y procesarlo.
-Un sistema distribuido puede contener a un sistema paralelo.

1.8 Sistema en tiempo real

Características:

§ Se usan cuando el tiempo es un factor crítico, es decir que la respuesta


del sistema sea lo más rápida posible.

§ Sirve para dar respuestas a tiempo real, por ejemplo en control


industrial, armamento, robótica,…

6
Implantación de sistemas operativos

2.- ESTRUCTURA DEL S.O.

2.1 Funcionamiento de los sistemas de computación

Contamos con una CPU conectada a distintos controladores de


dispositivos a través del bus de sistema.

Pasos durante el arranque de funcionamiento de un computador:

1. Programa de arranqueè BIOS (testear el hardware)


2. Gestor de arranqueè SO (LILO)
3. Carga del SO

Por medio de las interrupciones hardware y software podemos


llamar la atención de la CPU para ser atendidos.

2.2 Componentes de un SO

A la hora de desarrollar un S.O. debemos tener presentes sus


componentes:

a) Gestión de procesos (CPU)

- Crear y eliminar procesos


- Suspender y reanudar procesos
- Proveer mecanismos de sincronización de
procesos
- Proveer mecanismos de comunicación
- Proveer mecanismos para manejar bloqueos
mutuos (El SO gestiona evitando la inanición)

7
Implantación de sistemas operativos

b) Gestión de memoria principal

- Saber que partes de la memoria se están


usando y por quién
- Decidir que procesos se cargarán en
memoria y cuándo
- Asignar y liberar memoria según se necesite

c) Gestión de archivos

- Crear, manipular y eliminar archivos y


directorios

Debe de haber un intermediarioè Núcleo del SO, porque el


usuario no debe tener contacto con el hardware, porque si lo
hace mal se bloqueará. El usuario sólo debe dar órdenes.

d) Gestión de Entrada / Salida

- Uso de spooling
- Drivers (controladores de software)
- Planificación del disco

e) Sistema de protección y seguridad

- Proteger los procesos del resto de usuarios


no propietarios del proceso
- Identificación por parte del usuario

f) Sistema de interpretación de órdenes y comandos

- Shell (intérprete de comandos, en el entorno


de ventana)

8
Implantación de sistemas operativos

2.3 Servicios del SO

Se crean para la comodidad del programador.

a) Servicios de ayuda al usuario

- Ejecución de programas
- Operación Entrada / Salida (acceso a
impresora, escáner...)
- Manipulación del sistema de archivos
(permite: leer y escribir archivos)
- Comunicaciones (Intercambio de información
entre distintos procesos)
- Detección de errores

b) Servicios para asegurar eficiencia del sistema

- Asignación de recursos (según la política de


gestión)
- Contabilización ( Estadística para monitorizar
el sistema y saber que usuarios lo están
usando y que recursos utiliza)
- Protección

2.4 Llamadas al sistema

Son órdenes muy elementales y que no admiten más división.


Normalmente se crean en lenguaje ensamblador.

a) Control de procesos

- Crear y terminar proceso


- Cargar - ejecutar

b) Manipulación de archivos

- Crear y eliminar un archivo


- Abrir y cerrar un archivo
- Leer y escribir un archivo

9
Implantación de sistemas operativos

c) Manipulación de dispositivos

- Solicitar y liberar dispositivos


- Leer, escribir y reposicionar

d) Mantenimiento de la información

- Obtener y establecer la fecha y hora del


sistema
- Obtener y establecer los datos del sistema

e) Comunicaciones

- Crear y eliminar una conexión


- Enviar y recibir información

2.5 Programas del sistema

Crean un entorno más cómodo para el desarrollo y ejecución de


programas. Se pueden implantar realizando varias llamadas al sistema,
pero a diferencia de estas los programas del sistema no son necesarios y si
útiles para ayudar al usuario.

Características:

§ Manipulación de archivos (crear, borrar, copiar archivos)


§ Modificación de archivos (editores de textos)
§ Información del estado (espacio disponible en disco, nº de usuarios,
fecha/hora)
§ Apoyo a los lenguajes de programación (compiladores, intérpretes,
ensambladores)
§ Carga y ejecución de programas (cargadores y depuradores)
§ Comunicaciones (correo-e, usar ordenadores de forma remota)
§ Intérprete de órdenes

10
Implantación de sistemas operativos

2.6 Estructura del SO

Un SO es tan grande y complejo, que se intenta modularizar los


procedimientos y funciones lo más pequeño posible, para facilitar la
interacción.

Estructuras del SO:

- Sin ninguna estructura:

Definida en UNIX y utilizada en MSDOS, se trata de tener el núcleo


y los programas del sistema, sin utilizar jerarquía.

- Estructura por capas:

§ Nuestro SO lo dividimos en capas y con esto conseguimos simplificar la


depuración y verificación del sistema.
§ La de comienzo es la capa 1, más interna y relacionada directamente
con el hardware del ordenador.
§ Cuando la capa 1 está completada, se creará la capa 2 y así
sucesivamente.
§ A la capa 2 se le asignarán distintas tareas que a la capa 1, además
sabrá lo que hace la capa 1, pero no como lo hace. Así se siguen
creando capas.

Capa 1

Capa 2
Capa 3

- Cliente / Servidor

- Máquina virtual:

Se intenta simular que múltiples procesos se ejecutan a la vez, cada


uno en su propio procesador y en su propia RAM (ver siguiente apartado).

2.7 Máquinas virtuales

Es cuando un SO crea la ilusión a los usuarios de que cada uno


tiene un procesador, memoria y dispositivos para él.
Esto se consigue gracias a la planificación CPU y a las distintas
técnicas de memoria virtual.

11
Implantación de sistemas operativos

Unidad 2: Funciones de los Sistemas Operativos

1.- GESTIÓN DE PROCESOS

1.1 Definición de proceso

Proceso: Es un programa en ejecución, el cual se encontrará en


memoria principal (RAM) y necesitará algún recurso para su ejecución.

Recurso: Cualquier evento hardware o software necesario para un


proceso.

Por ejemplo:
- Tiempo de CPU
- Memoria
- Archivos
- Dispositivos E / S

Programación concurrente: Debido a la multiprogramación se


pueden cargar varios procesos a la vez en memoria. La CPU es la
encargada de organizar los procesos para que todos terminen
ejecutándose.

12
Implantación de sistemas operativos

1.2 Estados de un Proceso

Admitido Ejecución Salir


En
Nuevo Listo Ejecución Terminado

Interrupción
Termina E/S espera por E/S
o suceso o suceso
En Espera

Nuevo: El proceso se está creando.

Listo: El proceso está esperando que se le asigne un procesador.

En ejecución: El proceso se está ejecutando.

En Espera: El proceso está esperando por un dispositivo de E/S u otra


señal.

Terminado: El proceso llega a este estado cuando se ha ejecutado


correctamente. Todos los procesos deberían llegar al estado de terminado
pero no tienen que llegar a dicho estado.

Si un proceso no se está ejecutando se coloca en alguna de estas


dos colas de espera:

- Cola de solicitud de E/S


- Cola de procesos listos

Cada proceso se representa en el Sistema Operativo como un


Bloque de Control de Proceso (PCB)

Puntero Estado del Proceso


Número del Proceso
Contador del Proceso
Registros
Límites de Memoria
Límites Archivos Abiertos

13
Implantación de sistemas operativos

1.3 Colas de planificación

Cola de procesos listosà

P3 P5 P1 P4 ......

Cola Dispositivo Impresoraà

P2 P1 P5 P3 ......

Cola dispositivo Disco Duroà

P4 P2 P1 ......... ......

14
Implantación de sistemas operativos

1.4 Algoritmos de planificación de CPU

La planificación de CPU es la tarea de escoger un proceso que


espera en la cola de procesos listos y asignarle tiempo de CPU. Esto es la
base de los sistemas operativos multiprogramados. Ahora veremos algunos
métodos (algoritmos) para su implementación en un S.O.

1.4.1 Algoritmo de Planificación de servicio por orden de llegada (FCFS:


first come first served)

² El proceso que primero solicite la CPU la recibe. Simula una cola


FIFO (first in first out)

Proceso Tiempo(ms*)
P1 6
P2 8
P3 4
P4 7
P5 8

ms* = milisegundos

El primero que llega (P1) es el primero en ser atendido. Vamos a


representarlo a través del Diagrama de Gantt.

| P1 | P2 | P3 | P4 | P5 |
0 6 14 18 25 33

Tiempo de conmutación(Tc): es el tiempo desde que un proceso sale


de la RAM hasta que entra el siguiente proceso en la RAM. Si no se indica
otra cosa el valor de Tc=1 ms

Número_conmutaciones(Nc): es la cantidad de saltos que existen en


el diagrama de Gantt, sin contar el último, en nuestro ejemplo Nc=5

Tiempo_final: es el último tiempo que aparece en el diagrama de


Gantt, en nuestro ejemplo es de 33 ms

Tiempo_total = Tiempo_final + ( Tc * Nc )

En nuestro ejemplo el tiempo total es de:


Tiempo_total = 33 + 1 * 5 = 38 ms

15
Implantación de sistemas operativos

El tiempo de espera de cada proceso nos va a indicar cuanto debe


esperar cada proceso antes de entrar en el estado de ejecución. Se calcula
de la siguiente manera: En nuestro ejemplo

Tiempo de espera P1 (TP1) = 0 ms


Tiempo de espera P2 (TP2) = 6 ms
Tiempo de espera P3 (TP3) = 14 ms
Tiempo de espera P4 (TP4) = 18 ms
Tiempo de espera P5 (TP5) = 25 ms

El tiempo de espera medio, nos indica cuanto debe esperar un


proceso que no se encuentra en la cola de procesos listos y pretende
acceder a dicha cola. Depende mucho de cómo lleguen los procesos a la
cola. Para el ejemplo anterior:

Tiempo_espera_medio = (TP1+TP2+…+TPn) / Número_procesos

T. espera medio = ( 0+6+14+18+25 ) / 5 = 12,6 ms

En cambio, si los procesos llegan en el orden P3, P1, P4, P2, P5 el


resultado del tiempo de espera medio sería otro, ya que varía el tiempo de
espera de cada proceso. Lo que no varía es el tiempo total.

| P3 | P1 | P4 | P2 | P5 |
0 4 10 17 25 33

Tiempo de espera P3 (TP3) = 0 ms


Tiempo de espera P1 (TP1) = 4 ms
Tiempo de espera P4 (TP4) = 10 ms
Tiempo de espera P2 (TP2) = 17 ms
Tiempo de espera P5 (TP5) = 25 ms

T. espera medio = ( 0+4+10+17+25 ) / 5 = 11,2 ms

Tiempo total = 38 ms

Este algoritmo depende del orden de llegada de los procesos. Es


conveniente tener los procesos de menor tiempo al principio.

16
Implantación de sistemas operativos

Realizaremos un análisis de los datos desde 3 puntos de vista:

1.- Desde el proceso que quiere entrar: Hay que contemplar el


Tiempo de espera medio.

Tiempo_espera_medio = (TP1+TP2+…+TPn) / Número_procesos

2.- Desde el proceso que ya está dentro: Miraremos el Tiempo


de espera del proceso en cuestión.

3.- Desde el servidor o el administrador: Nos interesa el


Tiempo de espera total.

Tiempo_total = Tiempo_final + ( Tc * Nc )

17
Implantación de sistemas operativos

1.4.2 Primero el proceso más corto (SJF: shortest job first )

Se ordenan los procesos, eligiendo primero el proceso que tenga


menor tiempo estimado de ejecución.

Proceso Tiempo(ms)
P1 6
P2 8
P3 4
P4 7
P5 8

Para la siguiente carga de trabajo el orden sería:

P3, P1, P4, P2, P5

Y representándolo a través del Diagrama de Gantt


Es igual que el del ejercicio anterior.

1.4.3 Planificación por Prioridad

Proceso Tiempo(ms) Prioridad


P1 6 3
P2 8 1
P3 4 4
P4 7 5
P5 8 2

El orden de ejecución viene establecido por la prioridad que


tenga cada proceso. En este ejemplo sería: P2, P5, P1, P3, P4

18
Implantación de sistemas operativos

1.4.4 Planificación por Turno circular (método RR)

Este método es igual que FCFS, pero hay que fijar un cuanto
de tiempo, pasado el cual sale de ejecución el proceso y entra el
siguiente. Así sucesivamente hasta que termine la ejecución de
todos los procesos. Este es un método “justo”, ya que evita la
inanición de algún proceso.

Proceso Tiempo(ms)
P1 24
P2 3
P3 3

| P1 | P2 | P3 | P1 | P1 | P1 | P1 | P1 | Cuanto=4ms
0 4 7 10 14 18 22 26 30

Cuanto: Es el tiempo asignado en el método de planificación RR,


para indicar cuando el SO debe conmutar al siguiente proceso.

Para calcular el tiempo de espera de cada proceso se actúa de la


siguiente manera:

Tiempo de espera de P1 = TP1 =

Paso 1.- Localizamos al proceso1 en el diagrama de


Gantt empezando por el final hasta que salte a otro proceso, y
tomamos ese tiempo (10 ms)

Paso 2.- Se le restan todas las intervenciones del


proceso1, hasta el inicio del diagrama de Gantt ( sólo
interviene una vez y dura 4 ms ).

TP1 = 10 – 4 = 6 ms

Ejemplos:
TP2 = 4 ms
TP3 = 7 ms

Tiempo_espera_medio = (TP1+TP2+…+TPn) / Número_procesos


Tiempo_espera_medio = ( 6+4+7 ) / 3 = 5,6 ms

Tiempo_total = Tiempo_final + ( Tc * Nc )
Tiempo_total = 30 + ( 1 * 8 ) = 38 ms

19
Implantación de sistemas operativos

2.- GESTIÓN DE LA MEMORIA RAM

2.1 Definiciones

-En la arquitectura de computadores diseñada por Von-Neumann, nos


encontramos los siguientes componentes hardware:

CPU RAM

E/S

-Un proceso necesita estar alojado en la memoria RAM para que pueda ser
ejecutado.
-La memoria RAM es finita, volátil y extremadamente rápida, ya que es
aproximadamente un millón de veces más veloz que un disco duro magnético.
-Es necesario tener varios procesos alojados en la RAM para hablar de
planificación de CPU y esto implica compartir la memoria RAM. Para ello, el SO deberá
gestionar la CPU y la RAM
-Inicialmente entrarán en memoria RAM todos los procesos que se
necesiten por parte del procesador (según la gestión de la CPU) y que se puedan
alojar en la memoria RAM (según la política de gestión de la RAM).

-Elección de huecos disponibles. A la hora de alojar un proceso y nos


encontráramos con varios huecos, este se podrá alojar de tres maneras posibles:
-Primer hueco: Se alojará en el primer hueco disponible.
-Mejor hueco: Se alojará en el hueco que mejor aproveche el espacio
disponible.
-Peor hueco: Se alojará en el hueco que peor aproveche el espacio
disponible.

20
Implantación de sistemas operativos

-Fragmentación interna y externa. En ambos casos se produce una división del


espacio de almacenamiento.

-Fragmentación externa:

P1
L(100)
P2
L(300)

Observando la tabla anterior podemos comprobar que si un proceso (P3 que pese
350MB), no podría alojarse en los huecos disponibles (100 y 300), pero si los sumáramos
(400), sí que podría. A esto se le conoce como fragmentación externa

-Fragmentación interna:

P1
P5
P2
L(300)

Observando la tabla anterior podemos comprobar que si un proceso P3 que pese


50MB se fuera a alojar en la RAM, tendríamos dos situaciones:

-Caso 1. Escoger solamente el espacio que necesita. En nuestro caso 50


MB, dejando un hueco libre de 250MB.

-Caso 2. Escoger TODO el hueco disponible. A esto se le conoce como


fragmentación interna. La utilidad estriba en que cuando éste proceso abandone la
RAM, liberará TODO el espacio que ocupó, permitiendo de esta manera que otros
procesos GRANDES la puedan ocupar.

21
Implantación de sistemas operativos

2.2 Asignación contigua

En esta técnica entrarán en la RAM todos aquellos procesos que quepan. Los
huecos disponibles solamente se podrán agrupar si se encuentran en posiciones
contiguas.
Si un proceso no cabe en la RAM no podrá ejecutarse, por lo que es NECESARIO
que TODO el proceso se pueda alojar en la RAM para que la CPU lo pueda ejecutar.

Veámoslo con el planteamiento y resolución de un ejercicio.

Proceso Tiempo(ms*) Memoria(MB) Prioridad


P1 10 600 3
P2 5 1000 2
P3 20 300 4
P4 8 700 3
P5 15 500 7

Gestión RAM: Asignación contigua


Gestión CPU: FCFS
Elección del hueco: Primer ajuste
Fragmentación interna: NO
Tamaño RAM: 2560 KB
Tamaño SO: 400 KB

Lo primero que realizaremos será el Diagrama de Gantt

| P1 | P2 | P3 | P4 | P5 |
0 10 15 35 43 58

22
Implantación de sistemas operativos

A continuación deberíamos rellenar la memoria RAM, según la entrada y salida


de procesos.

t=0 t=0 t=10 t=15

SO SO SO SO
L(2160) P1 L(600) L(600)
P2 P2 L(1000)
P3 P3 P3
L(260) L(260) L(260)

t=15 t=15 t=35 t=35

SO SO SO
SO
P4 P4 P4
L(1600)
P5 P5 P5
P3
L(400) L(400) L(960)
L(260)
P3 L(300)
L(260) L(260)
t=43 t=58 t=58

SO SO SO
L(700) L(700) L(2160)
P5 L(500)
L(960) L(960)

A la misma vez crearíamos una TABLA que recoja los sucesos (entradas y
salidas), tiempos (según el diagrama de Gantt) y observaciones (anotaciones que
consideremos importantes).

SUCESO TIEMPO OBSERVACIONES


E(P1,P2,P3) 0
S(P1) 10* No puede entrar P4
S(P2), E(P4,P5) 15
S(P3) 35
S(P4) 43
S(P5) 58

23
Implantación de sistemas operativos

2.3 Compactación

Es una evolución del método de asignación contigua. Se van a poder unir los
huecos NO contiguos, por lo que SOLUCIONA el problema de la fragmentación externa.

2.4 Paginación

-Es una técnica que SOLUCIONA el problema de la fragmentación externa.


-La memoria RAM se va a dividir en zonas del mismo tamaño (marcos).
-El usuario va a disponer de una memoria lógica, también dividida en zonas del
mismo tamaño (páginas), las cuales se alojarán en el disco duro.
-Contaremos con una tabla de páginas (la cual se alojará en la RAM), que me
indicará que página se encuentra en la RAM y en qué posición.
-A diferencia de los métodos anteriores el límite de procesos lo marca la memoria
secundaria (disco duro) y no la RAM.

Vamos a verlo con un ejemplo:

P1= 512B; P2=4KB; P3=1575B; P4=2048B


Tamaño página = Tamaño marco = 1KB
Tamaño de la RAM = 8GB à 8 millones de marcos

Según estos valores los procesos ocuparán las siguientes páginas:

P1= 512B à Página 0


P2= 4KB à Páginas 1,2,3,4
P3=1575B à Páginas 5,6
P4=2048B à Páginas 7,8

Dibujamos la memoria lógica (lo que el usuario cree disponer )

Página Proceso
0 P1
1 P2
2 P2
3 P2
4 P2
5 P3
6 P3
7 P4
8 P4

24
Implantación de sistemas operativos

A continuación creamos la Tabla de páginas, asignando las “páginas” a un


“marco” disponible en la RAM. Recordar que existen 8 millones de marcos disponibles y
podemos escoger cualquiera que se encuentre disponible. Por lo que una posible solución
de “Tabla de paginas” podría ser la siguiente…

Memoria Memoria
Lógica Física. RAM
(Página) (Marco)
0 3
1 1
2 548
3 6
4 1050
5 1
6 43
7 21
8 1100

Para finalizar dibujamos la memoria RAM, tal y como nos indica la tabla de
páginas.

Marco Página
0
1 Página 1
2
3 Página 0
6 Página 3
11 Página 5
21 Página 7
43 Página 6
548 Página 2
1050 Página 4
1100 Página 8
… …
8192000

Podríamos solicitar que se calcule unas dirección físicas a partir de unas


direcciones lógicas. Por ejemplo:

-Hallar la dirección física de inicio del proceso 1:


El Proceso 1 se encuentra en la página 0, el cual se aloja en el marco 3 de
la RAM
3(marco) * 1024(tamaño del marco) = 3072

-Hallar la dirección física de la página 7, desplazamiento 111:


La página 7 se aloja en el marco 21 de la RAM
21(marco) * 1024(tamaño del marco) + 111 (desplaz)= 21615

-Hallar la dirección física de la página 7, desplazamiento 1500:


Error. No existe el desplazamiento 1500 (máximo 1024)

25
Implantación de sistemas operativos

2.5 Segmentación

-Es igual que paginación, con la excepción de que el tamaño de página (aquí se le
llama segmento), NO es del mismo tamaño.

Vamos a verlo con un ejemplo:

P1= 512B; P2=4KB; P3=1575B; P4=2048B


Tamaño segmento: VARIABLE
Tamaño de la RAM = 8GB à No sabemos de antemano cuantos segmentos
emplearemos.

En primer lugar creamos la Tabla de segmentos, asignando los “segmentos” a un


espacio disponible en la RAM. Podemos escoger cualquiera que se encuentre disponible.
Por lo que una posible solución de “Tabla de segmentos” podría ser la siguiente…

Memoria Memoria Memoria Física.


Lógica Física. RAM RAM
(Segmentos) (Dirección (Desplazamiento)
BASE)
0 1400 1000
1 6300 400
2 4300 400
3 3200 1100
4 4700 1000
… … …

Según estos valores los procesos ocuparán los siguientes segmentos:

P1= 1500B à Segmentos 0, 1, 2


P2= 500B à Segmento 3
P3=800B à Segmento 4

Dibujamos la memoria lógica (lo que el usuario cree disponer )

Segmentos Proceso
0 P1
1 P1
2 P1
3 P2
4 P3

26
Implantación de sistemas operativos

Para finalizar dibujamos la memoria RAM, tal y como nos indica la tabla de
segmentos.

Dirección Segmento
RAM
0

1400-2400 Segmento 0

3200-4300 Segmento 3
4300-4700 Segmento 2
4700-5700 Segmento 4

6300-6700 Segmento 1

8192000000 …

Podríamos solicitar que se calcule unas dirección físicas a partir de unas


direcciones lógicas. Por ejemplo:

-Hallar la dirección física del segmento 1, desplazamiento 125:


6300 + 125 = 6425

-Hallar la dirección física del segmento 8, desplazamiento 25:


Error. No existe el segmento 8

-Hallar la dirección física del segmento 1, desplazamiento 425:


Error. No existe el desplazamiento 425 (máximo 400)

27
Implantación de sistemas operativos

2.6 Memoria Virtual

A diferencia de las técnicas anteriores, en esta NO es NECESARIO que TODO el


proceso se tenga que alojar en la RAM para que la CPU lo pueda ejecutar.
Para ello emplearemos la técnica de Paginación, por lo que para ejecutar un
proceso que contenga por ejemplo 4 páginas, solo necesitamos que una de las páginas se
tenga que alojar en un instante dado en la RAM.

Veámoslo con un ejemplo:

Un usuario quiere localizar las siguientes páginas en memoria (en el orden en que
aparecen):

C, A, B, D, E, F, H

Contamos con la siguiente información:

TABLA DE PAGINAS RAM


D.D.

Página Marco Bit Marco Página Página


A 0 A
B 3 V 1 C B
C 1 V 2 C
D 3 B D
E 4 E
F F

Explicar y Representar lo que sucede para cada página solicitada por el usuario. Rellenar la
tabla de páginas y la memoria RAM (la cual sólo cuenta con 5 posiciones). Posteriormente se debe
realizar un análisis explicando los resultados obtenidos. A la hora de elegir una víctima en la RAM,
esta será la que lleve más tiempo. La RAM se empezó a llenar por el marco 0, luego 1, etc…

Para resolver el ejercicio deberemos dar respuesta a cada una de las páginas
solicitadas: C, A, B, D, E, F, H y en ese orden

Página C à Bit Validez=V à Acierto página à Marco 1 de la RAM


Página A à Bit Validez=F à Fallo página à Acude DD à Marco 0 de la RAM
Página B à Bit Validez=V à Acierto página à Marco 3 de la RAM
Página D à Bit Validez=F à Fallo página à Acude DD à Marco 2 de la RAM
Página E à Bit Validez=F à Fallo página à Acude DD à Marco 4 de la RAM
Página F à Bit Validez=F à Fallo página à Víctima “C” à Acude DD à Marco 1 RAM
Página E à ERROR, la página No existe en el DD

Página Marco Bit Marco Página


A -,0 F,V
0 -,A
B 3 V
1 C,F
C 1,- V,F
2 -,D
D -,2 F,V
3 B
E -,4 F,V
4 -,E
F -,1 F,V

28
Implantación de sistemas operativos

A la hora de efectuar el Análisis, obtenemos los siguientes datos

Aciertos de página = 2/7 à 28%


Fallo de página = 3/7 à 42%
Fallo de página con Víctima = 1/7 à 14%
Errores = 1/7 à 14%

La tasa de aciertos es de solo un 28% por lo que nuestro sistema informático


ofrece resultados MUY MEJORABLES.

Posibles SOLUCIONES:

-Aumentar los recursos hardware, especialmente:


-RAM, CPU y los periféricos de entrada y salida como el disco
duro
-Disminuir la cantidad de procesos ejecutándose a la misma vez

29
Implantación de sistemas operativos

3.- TRABAJO SOBRE SISTEMAS OPERATIVOS

Deberemos realizar un trabajo sobre los siguientes sistemas operativos:

1-Unix
2-IBM AIX
3-Solaris
4-Free-BSD
5-MAC-OS
6-Android
7-Chrome OS

Además deberá contener los siguientes apartados:

-Características
-Sistemas de archivos
-Hardware empleado
-Arquitectura
-Licencia y PVP
-Comparativa con Windows
-Empresas que trabajan con el SO

4.- GESTIÓN DE ARCHIVOS

4.1.-Definición de sistemas de archivos

Consiste en dos partes distintas, por un lado una colección de archivos


donde cada uno de ellos contiene datos relacionados y por otra parte una estructura de
directorios que organiza todos los archivos del sistema y proporciona información sobre
ellos.
4.2.-Definición de archivo

Información almacenada

4.3.-Atributos de un archivo

Nombre, tipo, ubicación, tamaño, protección, fecha, hora, identificación de


usuario…

4.4.-Operaciones sobre un archivo

Creación, escribir, leer, posicionarse, eliminar…

4.5.-Tipos de archivo

Texto, gráfico, directorio, ejecutable, código fuente, biblioteca…

4.6.-Métodos de acceso

Secuencial, directo, indexado…

4.7.-Definición de directorio

Es un tipo de archivo, el cual indica la posición de otros archivos. Otra


definición sería “un contenedor de archivos”.

4.8.-Operaciones sobre un directorio

Igual que las operaciones sobre un archivo.

30
Implantación de sistemas operativos

5.- GESTIÓN DE E/S

5.1.-Definición de E/S

-Las dos operaciones principales de un computador son:


-Procesamiento de los datos
-Operaciones de E/S

-Deberíamos prestar más atención a las operaciones de E/S, ya que


nuestro interés inmediato será leer o escribir datos sobre dispositivos de
E/S.

-En la arquitectura de computadores diseñada por Von-Neumann, nos


encontramos los siguientes componentes hardware:

CPU RAM

E/S

-Para que un sistema informático (software, hardware y personal), sea lo


más eficiente y rápido posible deberemos prestar atención a cada uno de
sus componentes, especialmente a lo más lentos. Es por esto que
deberíamos mejorar las prestaciones de los periféricos de E/S.

5.2.-Estructura física de un disco

Se crea cuando se construye un disco en la fábrica, asignándole un


número determinado de caras, cilindros o pistas y sectores. Por ejemplo podemos buscar
información en internet sobre la fabricación de un disco duro magnético y otro sólido.

31
Implantación de sistemas operativos

5.3.-Estructura lógica de un disco

A la hora de trabajar con un periférico de almacenamiento como un disco


duro, deberíamos realizar los siguientes pasos para que nuestro disco pueda almacenar
correctamente los archivos con los que posteriormente trabajaremos.

Cuando formateamos un disco entero o una partición del disco, se realizan


las siguientes tareas:

1.-Particionar (dividir el disco)

2.-Elegir el sistema de archivos (NTFS, EXT4…), aquí eligiremos


el “lenguaje” con el que nuestro sistema operativo se comunicará
con los archivos

3.-Elegir el tamaño del clúster (lo explicaremos en el siguiente


apartado)

4.-Formatear (significa que preparará la superficie del disco con


los anteriores peticiones)

32
Implantación de sistemas operativos

5.4.-Clúster

Un sistema operativo no localiza a los archivos mediante el acceso a la


“cara”, “cilindro” y “sector” de un disco. En vez de ello, lo hace a través del “clúster”.
Un clúster es un concepto lógico y no físico, y hace referencia a un
conjunto de sectores consecutivos del disco.
Las importancia del clúster estriba en que es la unidad mínima de
información que maneja el sistema operativo. Es decir que si nuestro sistema operativo
tiene definido un tamaño del clúster de 2 KB, significa que el archivo más pequeño que se
podrá almacenar en nuestro disco, tendrá ese tamaño.
Un archivo podría pesar 50KB y si el tamaño del clúster es de 2KB,
significa que necesitaremos (50 / 2 = 25 clústers) para almacenar a nuestro archivo en el
disco. Podríamos emplear clústers NO consecutivos, por ejemplo: Clúster 345, clúster 23,
clúster 124, .. así hasta emplear los 25 clústers necesarios para almacenar la información
de nuestro archivo.

5.5.-Tablas de localización de archivos (FAT, NTFS, …)

Características de los siguientes sistemas de archivos: FAT16, FAT32 y NTFS

Sistema de archivos FAT16:

-Inconvenientes:

- El tamaño del clúster dependerá del tamaño de la partición


- Clústers demasiado grandes
- No permite crear particiones > 2GB
- Tamaño máximo del archivo 2^16 = 2GB
- Se emplea en sistemas operativos como MSDOS, y Windows 95
- No existe seguridad en los archivos

Tamaño partición Tamaño del Clúster


<128 MB 2 KB
128-255 MB 4 KB
256-511 MB 8 KB
512 MB-1 GB 16 KB
1-2 GB 32 KB

33
Implantación de sistemas operativos

Sistema de archivos FAT32:

- Inconvenientes:

- El tamaño del clúster dependerá del tamaño de la partición


- No es compatible con FAT16
- No se puede usar en particiones < 512 MB
- Tamaño máximo del archivo 2^16 = 2GB
- Se emplea en sistemas operativos a partir del Win 95B
- No existe seguridad en los archivos

- Permite crear particiones > 2 GB


- Tamaño de los clústers más pequeños

Tamaño partición Tamaño del Clúster


513 MB - 8 GB 4 KB
8-16 GB 8 KB
16-32 GB 16 KB
>32 GB 32 KB

Sistema de archivos NTFS (New Technology file system):

- El tamaño del clúster NO depende del tamaño de la partición. Lo fija el


usuario
- Permite aplicar medidas de seguridad, cifrado, etc., a los archivos.

34
Implantación de sistemas operativos

Unidad 3: Documentación técnica y Resolución de


problemas

NOTA* : Acceder a los ficheros alojados en el servidor EVAGD.

1.-Documentación técnica

1.1.-Elaboración documentación técnica


1.1.1.-Fases de una implantación
[Link].-Requerimientos
[Link].-Análisis
[Link].-Instalación
[Link].-Pruebas
[Link].-Mantenimiento
[Link].-Documentación
[Link].1.-Elaboración guía de usuario
1.2.-Tareas a realizar por un administrador informático

2.-Resolución de problemas durante la asistencia técnica

2.1.-Elaboración de un parte de asistencia técnica

3.-Ley de Protección de Datos

35

También podría gustarte