Optimización de Rendimiento de Discos Magnéticos: Cálculos de Latencia y Transferencia

Enviado por Programa Chuletas y clasificado en Otras materias

Escrito el en español con un tamaño de 6,92 KB

1. Cálculo de Capacidad y Velocidad de Transferencia

1.1. Cálculo de Capacidad Total

a) Capacidad total = 2 superficies × 80 pistas/superficie × 18 sectores/pista × 512 bytes/sector

Capacidad total = 1,474,560 bytes = 1.4 MB

1.2. Cálculo de Velocidad de Transferencia (Vt)

b) Definiciones:

  • b = Número de bytes que se desea transferir.
  • tt = Tiempo empleado en la transferencia (recorrer todos los sectores).
  • p = Número de bytes en 1 pista.
  • f = Velocidad de rotación (revoluciones por segundo).

Fórmula de Velocidad de Transferencia (Vt):

Vt = b / tt = p × f

Vt = (512 bytes/sector × 18 sectores/pista) × (360 revoluciones/minuto / 60 segundos/minuto)

Vt = 9,216 bytes/pista × 6 rps = 55,296 bytes/s

2. Conversión de Almacenamiento en Disquetes

Si 1 disquete almacena 1.40 MB, para almacenar 300 MB se requieren:

X = 300 MB / 1.40 MB/disquete ≈ 214.28

Se necesitan 215 disquetes (redondeando al alza).

3. Cálculo de Latencia y Porcentaje de Ocupación de Tiempo (E/S)

Parámetros del Disco:

  • Velocidad de Rotación (Vr): 360 rpm = 6 vueltas/s (rps)
  • Tamaño del Sector: 1024 bytes/sector
  • Sectores por Pista: 48 sectores/pista
  • Tiempo de Búsqueda (Tb): 6 ms

3.1. Tiempo de Lectura de un Sector

Tiempo de rotación de una pista (48 sectores): 1/6 segundos ≈ 166.67 ms

Tiempo de lectura de 1 sector (Ts):

Ts = (1/6 s) / 48 sectores ≈ 0.00347 s = 3.47 ms/sector

3.2. Tiempo Total por Byte (Incluyendo Interrupción)

Tiempo de transferencia de 1 byte (Tbyte):

1024 bytes --------- 3.47 ms

1 byte --------- X ms

X = 3.47 ms / 1024 ≈ 3.39 × 10⁻³ ms = 3.39 µs/byte

Tiempo total por byte (Ttotal/b) = Tbyte + Tiempo de Interrupción (2 µs)

Ttotal/b = 3.39 µs + 2 µs = 5.39 µs

3.3. Porcentaje de Tiempo Ocupado por Transferencia

Porcentaje ocupado = (Tiempo de transferencia real / Tiempo total de operación) × 100

Porcentaje ocupado = (3.39 µs / 5.39 µs) × 100 ≈ 62.89% del tiempo ocupado.

4. Operación DMA y Ocupación de CPU en E/S

4.1. Descripción del Acceso Directo a Memoria (DMA)

El controlador de DMA transfiere el bloque completo de datos (1 sector) entre el periférico y la memoria sin que intervenga la CPU.

Cuando la transferencia finaliza, el controlador de DMA envía una señal de interrupción a la CPU.

Parámetros:

  • Tamaño del Sector: 1024 B/sector
  • Sectores/Pista: 48
  • Pistas/Superficie: 120
  • Superficies: 8
  • Tiempo de Búsqueda (Tb): 6 ms
  • Velocidad de Rotación (Vr): 360 rpm
  • Tiempo de Interrupción: 2 ms/sector

4.2. Cálculo del Porcentaje de Tiempo de CPU Ocupada

Vr = 360 rpm = 360/60 rps = 6 rps.

Tiempo de lectura de 1 sector (Ts):

Ts = (1/6 s) / 48 sectores ≈ 0.00347 s = 3.47 ms/sector

Tiempo total de operación para 1 sector (Ttotal):

Ttotal = Tiempo de lectura (Ts) + Tiempo de Interrupción

Ttotal = 3.47 ms + 2 ms = 5.47 ms

Porcentaje de tiempo dedicado a la transferencia de datos (respecto al tiempo total de E/S):

Porcentaje ocupado = (3.47 ms / 5.47 ms) × 100 ≈ 63.44% del tiempo total de E/S.

5. Cálculo de Tiempo de Acceso con Intercalado Doble

(Nota: El enunciado original sugiere un error en la formulación, indicando media vuelta para ir al sector 0).

Parámetros:

  • Velocidad de Rotación: 360 rpm = 6 rps
  • Sectores a leer: 16
  • Intercalado: Doble (salto de 2 sectores entre lecturas)
  • Asunción: La cabeza está en la pista correcta (Tb = 0).

5.1. Cálculo basado en Vueltas Físicas

Vueltas necesarias (asumiendo 46 sectores recorridos) = 46 / 16 sectores ≈ 2.875 vueltas.

Añadiendo media vuelta para llegar al sector 0 (Tr): 2.875 + 0.5 = 3.375 vueltas.

Tiempo total (T) = Vueltas / Velocidad de rotación (rps) = 3.375 / 6 rps = 0.5625 s

5.2. Cálculo Utilizando Fórmulas Estándar

Definiciones:

  • Tb = Tiempo medio de búsqueda (seek time).
  • Tr = Tiempo medio de retardo rotacional (rotational latency).
  • Tt = Tiempo de transferencia de datos.

Tb = 0 ms

Tr (Latencia media) = 1 / (2 × f) = 1 / (2 × 6 rps) ≈ 83.3 ms

Tt (Tiempo de transferencia, basado en 2.875 vueltas) ≈ 479.2 ms

Tiempo Total (T) = Tb + Tr + Tt

T = 0 ms + 83.3 ms + 479.2 ms = 562.5 ms

6. Tiempo de Acceso para 16 Sectores (1.5 Vueltas)

Velocidad de Rotación: 6 RPS.

Operación: Lectura de 16 sectores, requiriendo 1 vuelta completa de lectura más 0.5 vueltas para alcanzar el sector inicial (o sector 0).

Vueltas totales = 1.5 vueltas

Tiempo (t) = Vueltas totales / Velocidad de rotación = 1.5 / 6 rps = 0.25 s

7. Tiempo Total de Lectura para 25 Sectores (3600 RPM)

Parámetros:

  • Velocidad de Rotación (f): 3600 rpm = 60 rps
  • Sectores por Pista: 16 sectores (asumido)
  • Sectores a leer: 25 sectores
  • Tiempo de Búsqueda (Tb): 25 ms (asumido del cálculo final)

7.1. Tiempo de Transferencia (Ttransferencia)

1 segundo --------- 60 vueltas = 960 sectores

X segundos --------- 25 sectores

Ttransferencia = (1 s × 25) / 960 ≈ 0.02604 s = 26.04 ms

7.2. Tiempo de Retardo Rotacional (Tr)

Tr (Latencia media) = 1 / (2 × f) = 1 / (2 × 60 rps) = 1 / 120 s ≈ 8.33 ms

7.3. Tiempo Total (Ttotal)

Ttotal = Tb (Tiempo de búsqueda) + Tr (Latencia) + Ttransferencia

Ttotal = 25 ms + 8.33 ms + 26.04 ms ≈ 59.37 ms

8. Tiempo de Lectura de 25 Sectores (Acceso Aleatorio)

Este cálculo asume que se leen 25 sectores de forma individual, donde cada acceso requiere un ciclo completo (búsqueda + latencia + transferencia de 1 sector).

Parámetros:

  • Tb = 25 ms
  • f = 3600 rpm = 60 rps
  • Sectores/Pista: 16
  • Tamaño del Sector: 1024 B

8.1. Cálculo de Tt (Tiempo de Transferencia de 1 Sector)

Tt = 1 / (16 sectores/pista × 60 rps) = 1 / 960 s ≈ 0.001042 s = 1.042 ms

8.2. Cálculo de Tr (Latencia Media)

Tr = 1 / (2 × f) = 1 / 120 s ≈ 8.3 ms

8.3. Tiempo Total de Lectura (Tl)

Tl (25 sectores) = (Tb + Tr + Tt) × 25

Tl = (25 ms + 8.3 ms + 1.042 ms) × 25

Tl = (34.342 ms) × 25 ≈ 858.55 ms

Entradas relacionadas: