Está en la página 1de 11

TEMA 4

Sistemas operativos. Características


y elementos constitutivos.
Sistemas Windows. Sistemas Unix
y Linux. Sistemas operativos para
dispositivos móviles.
BLOQUE II TEMA 4

1.Sistemas operativos

Es el software básico de un ordenador, conjunto de programas y funciones


que gestionan el funcionamiento del hardware y del software, es el primer
programa que se carga en memoria al encender y el principal administrador
de recursos. Pueden ser según el modo en el que este se comunica con el
usuario:

• Línea de comandos: las operaciones del sistema se introducen


tecleándolas directamente o bien ejecutando una colección de estas
almacenadas en forma de guion “script”.
• Interfaz gráfica: manipulación de elementos grafios en la pantalla.

Se organizan por capas en torno a un núcleo principal:


• Nivel kernel: controla todo lo que sucede en el ordenador, gestiona
los procesos que llegan para ser ejecutados.
• Nivel ejecutivo: administración de la memoria.
• Nivel supervisor: realiza la comunicación de cada proceso entre el
sistema y el usuario, controla y coordina la gestión de entrada/salida
de los diferentes procesos con destino a los periféricos.
• Nivel usuario: controla los procesos que está utilizando el usuario,
simplemente muestra al usuario el proceso que este quiere ejecutar.

2.Componentes de un sistema operativo

Núcleo o “kernel”: componente principal del sistema, responsable de tareas


como trasladar el control de un programa a otro, control y programación
de entrada y salida, manejo de interrupciones, gestión de memoria,
comunicación entre procesos… **modprobe: programa de Linux para gestionar
módulos del KERNEL de Unix. (Pregunta examen)

Programas de control: parte del sistema dedicado a controlar el


funcionamiento de todos los recursos y elementos de un ordenador:
procesador, memoria, periféricos…

Programas de proceso: diseñados para ayudar al programador en la puesta a


punto de las aplicaciones, dos tipos:
• Traductores: toman como entrada un programa fuente y proporcionan con
salida un programa objeto, este necesita cierta preparación que
realiza el enlazador, tres tipos de traductores:

o Ensambladores: transforma programas fuente escritos en leguajes


simbólicos de bajo nivel denominados ensambladores en programas
objetos escritos en código maquina y directamente ejecutables.
o Compiladores: transforman programas fuente escritos en lenguajes
de alto nivel en programas objetos escritos en leguaje máquina,
realiza la traducción completa y crea el programa objeto cuando no
existan errores en la traducción.
o Intérpretes: transforman programas fuente escritos en lenguajes de
alto nivel en programas objetos escritos en leguaje máquina,
ejecuta las instrucciones según se va realizando la traducción sin
esperar a traducir el programa fuente completo.
• Programas de servicio: programas que realizan funciones apara el
sistema usuario denominadas utilidades:

249
BLOQUE II TEMA 4

o Programas de manipulación de datos: liberan al programador de


trabajos rutinarios como la trasferencia de archivos entre
soportes, reorganización de archivos, ordenación de datos.
o Programas de servicio del sistema: generación del sistema operativo
completo sobre el ordenador, preparación de los programa y creación
y mantenimiento de las bibliotecas de programas.

3.Procesos

En un sistema multiprogramado la CPU alterna entre programas, ejecutando


cada uno de ellos unos cuantos milisegundos, todo software ejecutable en
el ordenador se organiza en procesos, inclusive el sistema operativo, cada
proceso dispone de una CPU virtual, aunque la CPU física lo que hace es
una alternancia muy rápida.

Se puede definir un proceso como un programa en ejecución, puede estar


constituido por el programa y los valores de las variables que intervienen
en la ejecución, por lo tanto, es una entidad dinámica, contiene una parte
fija (el programa) y una parte variable (estado del proceso), cuatro
conceptos asociados a la gestión de procesos:

• Necesidad de que cada proceso tenga asignada una prioridad, se encarga


el planificador.
• El distribuidor se encarga de activar procesos en función de sus
prioridades.
• Estado de proceso, situación con respecto al procesador (activo,
esperando el bloqueado…).
• Si no hay espacio suficiente en la memoria principal los programas
en espera se llevan a la memoria secundaria.

Los estados de un proceso pueden ser:

o Activo/ejecución: proceso que se está ejecutando.


o Bloqueado/en espera: se espera la conclusión de un suceso.
o Preparado: proceso que se puede ejecutar pero que está esperando
por otro de mayor prioridad.
o Muerto/terminado: se termina la ejecución del proceso.

**PCB (Process Control Block): registro especial donde el sistema


operativo agrupa toda la información que necesita conocer respecto a un
proceso particular. Cada vez que se crea un proceso el sistema operativo
crea el BCP correspondiente para que sirva como descripción en tiempo de
ejecución durante toda la vida del proceso. (Pregunta examen)

Las operaciones de E/S son mucho más lentas que los procesos de cómputo,
por lo tanto, el procesador estaría libre la mayor parte del tiempo, porque
los procesos en memoria estarían en espera de esas operaciones. Para
solucionar esto, la memoria principal puede expandirse para almacenar más
procesos, a coste de mover parte o todo el proceso de memoria principal
al disco secundario o una partición (swapping). Al hacer uso del swapping,
se crea un nuevo estado llamado “suspendido”: el proceso está en disco
secundario listo para ser cargado a memoria principal cuando se le llame.

250
BLOQUE II TEMA 4

3.1.Planificacion de procesos

Tiene como objetivo obtener la mayor cantidad de trabajos realizados en


una unidad de tiempo, la planificación es el conjunto de políticas y
mecanismo incorporados al sistema operativo por el que se rige el orden
en el que se completa el trabajo, se pretende: justicia en el reparto de
la CPU, evitar la demora indefinida de los procesos, lograr la máxima
capacidad de ejecución y el equilibrio en el uso de los recursos. Se puede
planificar en función de los siguientes conceptos:

• Alto nivel: a que trabajos se les va a permitir competir activamente


por los recursos del sistema.
• Nivel intermedio: que procesos se les puede permitir por la CPU,
intentando siempre conseguir el mejor rendimiento.
• Bajo nivel: determinar qué proceso de los que están listos se les va
a asignar la CPU.

3.1.1.Algoritmos de planificación

• Apropiativa (preemtive): interrupciones periódicas en las que el


planificador toma el control y decide si el proceso sigue
ejecutándose. (Pregunta examen)
• No apropiativa: un proceso acapara la CPU y no la libera hasta que
no finaliza. (Pregunta examen)

Su función consiste en repartir el tiempo disponible de un microprocesador


entre todos los procesos que están disponibles para su ejecución. en
principio, cualquier proceso monopoliza el microprocesador impidiendo que
otros procesos se ejecuten, por ello, la primera misión de un algoritmo
de planificación es expulsar el programa en ejecución cuando decida que
es pertinente. El control del microprocesador pasa a manos del planificador
gracias a que el hardware genera una interrupción. En este proceso de
expulsión, se guarda el estado de ejecución del programa (programa y su
estado se denomina contexto).

• FIFO (First In First Out): algoritmo NO apropiativo, cuando un proceso


llega a la cola de preparado se agrega su PCB al final de la lista,
la CPU se otorga al primero de la lista y una vez que un proceso
empieza a ejecutar no deja de hacerlo hasta que termina, el tiempo
de espera será bastante alto.
• SJF (Shortest Job First): algoritmo NO apropiativo, asocia a cada
proceso el tiempo de CPU que necesitara en el siguiente ciclo y se
decide por el más pequeño, el mayor problema radica en el cálculo del
tiempo de CPU, el tiempo de espera para procesos largos puede ser
excesivo.
• Priority Scheduling: asocia a cada proceso una prioridad para a
continuación seleccionar el proceso con mayor valor de esta, hay dos
tipos de prioridades, externa (definida a través del SO) e interna
(definida por el tiempo de uso de la CPU). Se implementa un proceso
de aumento de la prioridad con el envejecimiento de cola debido a que
existe la posibilidad de la “muerte por inanición”.
• Round Robin: se basa en el uso del “quantum temporal” (pequeña unidad
de tiempo o franja temporal que mide el tiempo máximo que un proceso
puede hacer uso del procesador, al ocurrir una interrupción del reloj

251
BLOQUE II TEMA 4

se llama al quantum y este le cede el control de la CPU al


planificador).

3.3.2.Problemas de concurrencia

Ocurren cuando dos o más procesos acceden a un recurso compartido sin


control, de manera que el resultado combinado de este acceso depende del
orden de llegada, hay varios tipos:
• Inanición o aplazamiento indefinido: ocurre cuando un proceso tiene
una prioridad tan baja que nunca llega a ser trasladado a memoria
principal
• Condición de no apropiación: si un proceso tiene asignado un recurso,
dicho recurso no puede arrebatársele por ningún motivo, y no estará
disponible hasta que le proceso lo suelte por su voluntad.
• Condición de espera ocupada: un proceso pide un recurso que ya este
asignado a otro proceso y la condición de no apropiación se debe
cumplir, entonces el proceso estará gastando el resto de su “time
slice” comprobando si el recurso fue liberado
• Condición de exclusión mutua: un proceso realiza operaciones sobre
el recurso, después lo deja de usar. La sección de código que usa ese
recurso se le llama región critica, la condición de exclusión mutua
establece que solamente se permite a un único proceso estar dentro
de la misma “región critica”. (se puede lograr entrar en la región
critica con el algoritmo de Dekker y Peterson: algoritmo de
programación concurrente para exclusión mutua que permite a 2 o más
procesos compartir un recurso sin conflictos, utilizando tan solo
memoria compartida para la comunicación.)
• Condición de espera circular (deadlock): se produce cuando en un
conjunto de procesos, cada uno de ellos espera a un evento que solo
puede generar otro del conjunto. Existen técnicas para prevenir el
deadlock, como mecanismos para evitar que se presente alguna de las
cuatro condiciones necesarias para el deadlock:

o Asignar recursos en orden lineal: si un proceso tiene el recurso


con etiqueta menor que otro, este no puede pedir recursos a uno
con etiqueta mayor. Con esto se evita la condición de espera
ocupada.
o Asignar todo o nada: el proceso debe pedir todos los recursos que
va a necesitar de golpe, y se le asignaran solamente si se le
pueden dar todos.
o Algoritmo del banquero: se elabora una tabla de recursos existente
e información del máximo de recurso de cada tipo que usa cada
proceso y cuando un proceso pide un recurso se verifica si,
asignándoselo, todavía quedan otros del mismo tipo de reserva.

4.Gestión de memoria

Los programas residen en el disco como ejecutables binarios, el conjunto


de programas residentes en el disco esperando a ser cargados en memoria
forman la cola de entrada, los programas pueden direccionar memoria:

• Direccionamiento en el momento de compilación: generan código


absoluto (siempre se ejecuta en una dirección de memoria de inicio
fija).

252
BLOQUE II TEMA 4

• Direccionamiento en el momento de la carga: maneja direcciones


relativas, genera código localizable.
• Enlace dinámico: se retarda la edición del enlace hasta el momento
de ejecución.
• Overlays: permite ejecutar un programa en un espacio de memoria menor
que su tamaño.

4.1.Administracion de memoria real

• Asignación contigua de almacenamiento: cada archivo ocupa un conjunto


de bloques contiguos en el disco a los que se les asigna ese espacio
fijo en el momento de su creación (por lo que los archivos no pueden
crecer).
• Multiprogramación de partición fija: la memoria se divide en
particiones de tamaño fijo, los compiladores y editores de enlaces
generaban código localizable para que un programa pudiera ejecutarse
en cualquier partición de memoria (suficientemente grande).
• Multiprogramación de partición variable: cada programa el usuario
emplea tanta memoria como sea necesaria siempre que quepa en el
almacenamiento real, se van generando huecos en la memoria, estos
huecos se pueden solucionar de varias formas:

o Combinación: cuando un programa termina su ejecución, el sistema


operativo verifica si hay algún bloque de memoria contigua libre
y los combina para genera un único bloque de memoria libre.
o Compactación: agrupa toda la memoria disponible en un único bloque
al final. Como desventajas genera un alto consumo de CPU y obliga
a detener la actividad del sistema.
• Colocación para el almacenamiento: cuando a una petición se le asigna
una nueva partición y sobra memoria el sistema operativo se da cuenta
y deja este espacio sobrante como una nueva partición:

o Best Fit: los bloques de memoria son asignado según las necesidades
del programa que se está ejecutando.
o First Fit: se asigna en la primera partición disponible en la que
pueda entrar el programa, más rápida, pero se desperdicia mucho
espacio de memoria.
o Worst Fit: se asigna en la partición en la que sobra más espacio.

4.2.Almacenamiento en memoria virtual

Las direcciones de memoria no están necesariamente contenidas en el


almacenamiento real, el SO se apoya en el almacenamiento secundario para
extender la capacidad de la memoria con direcciones virtuales, estas deben
poder transformarse en direcciones reales mientras el proceso está en
ejecución.

La memoria virtual es la separación de la memoria lógica y de la memoria


física, esta separación permite proporcionar a los programadores una gran
memoria virtual cuando solo se dispone de una memoria física más pequeña.
La memoria virtual facilita las tareas de programación ya que el
programador no se tiene que preocupar por la cantidad de memoria física
disponible.

253
BLOQUE II TEMA 4

4.2.1.Estrategias de reemplazo de memoria virtual (paginación)

Se denominan paginas a los bloques de memoria de igual tamaño y paginación


a la administración del almacenamiento virtual asociado, si los bloques
son de distinto tamaño hablamos de segmentos. Las páginas se transfieren
del almacenamiento primario al secundario en bloques llamados “page
frames”.

La tabla de páginas de cada proceso puede llegar a ser demasiado grande,


se buscan mecanismos que permitan acelerar el tiempo de repuesta como la
utilización de un conjunto de registro dedicados, el “CPU Dispatcher”
encargado de cargar y actualizar la información de estos registros en cada
contexto. La solución más común es apoyarse en una cache de acceso muy
rápida llamada TLB (Translation Location Buffer), puede contener algunas
entradas de la tabla de páginas.

Si en el momento de generarse un fallo no hubiera ningún frame disponible


se procede a sustituir una página en memoria, algoritmos de sustitución
de página:

• Política óptima: selecciona para reemplazar la página que tiene que


esperar una mayor cantidad de tiempo hasta que se produzca la
referencia siguiente. Este algoritmo es imposible de implementar, ya
que requiere que el sistema operativo tenga un conocimiento exacto
de los sucesos futuros. Sin embargo sirve como un estándar para
comparar otros algoritmos.
• FIFO (First In First Out): asocia a cada página el momento en que fue
cargada en memoria, se selección ala que hace más tiempo que está en
memoria.
• LRU (Least Recently Used): se selecciona la página que hace más tiempo
que no se emplea. Se necesita almacenar el momento temporal de la
última actualización de cada página:

o Contadores: se asocia a cada entrada en la tabla de páginas el


momento de la última vez que se usó, cada vez que se accede a una
página se actualiza el contador.
o Stack: lleva una pila con los numero de cada página, cada vez que
se accede a una página se coloca en el tope, en la cima de la pila
estará la página que fue utilizada por última vez y en el fondo la
que hace más tiempo que no se accede.

• Paginación por demanda: “Swapping”, cuando un proceso va a ser


ejecutado, el mismo es paginado a la memoria, empleando la técnica
lazy swapping, se necesita determinar si una página está en memoria
o en disco, se emplea el bit “valido/invalido”.
• Segunda oportunidad: variante de FIFO, cada vez que se selecciona una
página se inspecciona un bit de referencia, si el valor es cero se
procede a sustituir la página, si el valor es uno, se da una segunda
oportunidad a la página y se selecciona el siguiente candidato por
criterio FIFO, cada vez que una página recibe una segunda oportunidad
se cargar un cero en el bit de referencia.
• LFU (Least Frequently Used): la página con menos cantidad de
referencias debe ser sustituida.
• MFU (Most Frequently Used): la página con mayor cantidad de
referencias es la sustituida.

254
BLOQUE II TEMA 4

• Page Buffering: se mantiene una cola de “frames”, cuando ocurre un


fallo de página se elige una víctima empleando alguno de los
mecanismos ya vistos, en lugar de hacer el cambio de frame en una
sola operación se carga la página en memoria y el SO descarga la
página y la agrega a la cola de “frames”.

**Hiperpaginacion (thrashing): situación en la que se utiliza una


creciente cantidad de recursos para hacer una cantidad de trabajo cada vez
menor cuando se cargan y descargan sucesiva y constantemente partes de la
imagen de un proceso desde y hacia la memoria principal y la memoria
virtual. Cuando se produce hiperpaginación, los ciclos del procesador se
utilizan en llevar y traer páginas (o segmentos, según sea el caso) y el
rendimiento general del sistema se degrada notablemente. “Tener una tasa
excesiva de fallos de página, tardando el sistema más tiempo en paginar
que en ejecutar procesos”. (Pregunta examen)

Planificador

El planificador (en inglés, scheduler) es un componente funcional muy


importante de los sistemas operativos multitarea y multiproceso, y es
esencial en los sistemas operativos de tiempo real. Su función consiste
en repartir el tiempo disponible de un microprocesador entre todos los
procesos que están disponibles para su ejecución.

Todo sistema operativo gestiona los programas mediante el concepto de


proceso. En un instante dado, en el ordenador pueden existir diversos
procesos listos para ser ejecutados. Sin embargo, solamente uno de ellos
puede ser ejecutado (en cada microprocesador). De ahí la necesidad de que
una parte del sistema operativo gestione, de una manera equitativa, qué
proceso debe ejecutarse en cada momento para hacer un uso eficiente del
procesador.

Los niveles de planificación están basados en la frecuencia con la que se


realiza cada uno.

En los sistemas operativos de propósito general, existen tres tipos de


planificadores. (Pregunta examen)
• El planificador a corto plazo, siendo también el más importante. En
inglés, se denomina dispatcher o short term Schedule decide cuál será
el siguiente proceso en ejecutarse.
• Planificador a medio plazo (en inglés, mid term scheduler)
relacionado con aquellos procesos que no se encuentran en memoria
principal (véase memoria virtual). Su misión es mover procesos entre
memoria principal y disco (lo que se conoce como swapping).
• Planificador a largo plazo (en inglés long term scheduler) es el
encargado de ingresar nuevos procesos al sistema y de finalizarlos.

SISTEMAS OPERATIVOS EN RED

1.Tipos de redes de área local

Las redes se dividen en dos categorías dependiendo del tamaño de la


organización, nivel de seguridad requerido, nivel de soporte
administrativo, tráfico de la red…

255
BLOQUE II TEMA 4

• Redes Workgroup: no hay servidores dedicados ya que implica un pequeño


grupo de personas, máximo diez equipos y no existe una jerarquía
entre ellos. Todos los equipos son iguales (peers), cada equipo actúa
como cliente y servidor no hay necesidad de un potente servidor
central ni de software adicional, el usuario de cada equipo determina
los datos de dicho equipo que van a ser compartidos en la red. Los
equipos están en las mesas de los usuarios, estos actúan como sus
propios administradores y planifican su propia seguridad, están
conectados por un sistema de cableado simple. La seguridad no es
fundamental.
• Redes basadas en Servidor: la mayoría de las redes tienen servidores
dedicados, es aquel que funciona solo como servidor y no se utiliza
como cliente o estación, están optimizados para dar servicio con
rapidez a peticiones de los clientes, garantizar la seguridad de los
archivos y directorios, la división de tareas de la red entre varios
servidores asegura que cada tarea será realizada de la forma más
eficiente posible. Servidores especializados:
o Servidores de archivos e impresión: gestionan el acceso de los
usuarios y el uso de recursos de archivos e impresión, al ejecutar
una aplicación de tratamientos de textos, dicha aplicación se
ejecuta en su equipo. El documento de tratamiento de textos
almacenado en el servidor de archivos e impresión se cargar en la
memoria de su equipo de forma local, los servidores de archivos e
impresión se utilizan para el almacenamiento de archivos y datos.
o Servidores de aplicaciones: en un servidor de aplicaciones la base
de datos permanece en el servidor y solo se envían los resultados
de la petición al equipo que realiza la misma, una aplicación
cliente que se ejecuta de forma local accede a los datos del
servidor de aplicaciones, solo se pasara el resultado de la
consulta desde el servidor a su equipo local.
o Servidores de correo: funcionan como servidores de aplicaciones,
datos encargados de forma selectiva del servidor al cliente.
o Servidores de fax: gestionan el tráfico de fax hacia el exterior
y el interior de la red, compartiendo una o más tarjetas modem
fax.
o Servidor de comunicaciones: gestionan el flujo de datos y mensajes
de corro entre las propias redes de los servidores o usuarios
remotos que se conectan a los servidores utilizando módems y líneas
telefónicas.
o Servidores de servicios de directorio: permiten a los usuarios
localizar, almacenar y proteger información en la red.
1.1.Partes de una red basada en servidor
Al igual que un equipo no puede trabajar sin un SO, una red de equipos no
puede funcionar sin un SO de red. Este es el ejemplo más familiar y famoso
donde el software de red del equipo cliente se incorpora en el SO del
equipo. El equipo personal necesita ambos SO para gestionar conjuntamente
las funciones de red y las funciones individuales. El SO de un equipo
coordina la interacción entre el equipo y los programas que está
ejecutando. Controla la asignación y utilización de los recursos hardware
(memoria, CPU, espacio de disco, periféricos…). En un entorno de red, los
servidores proporcionan recursos a los clientes de la red y el software
de red del cliente permite que estos recursos estén disponibles para los
equipos clientes. Elementos principales:

256
BLOQUE II TEMA 4

• Software de cliente: en un sistema autónomo, en un entorno de red,


cuando un usuario inicia una petición para utilizar un recurso que
está en un servidor, la petición se tiene que enviar o redirigir
desde el bus local a la red y desde allí al servidor que tiene el
recurso solicitado, este envío es realizado por el “redirector” (se
inicia en un equipo cliente cuando el usuario genera la petición de
un recurso o servicio de red). El equipo del usuario se identifica
como cliente, puesto que está realizando una apetición a un servidor,
este procesa la conexión solicitada por los redirectores del cliente
y les proporciona acceso a los recursos solicitados.
• Software de servidor: permite a los usuarios en otras máquinas y a
los equipos clientes, poder compartir los datos y periféricos del
servidor incluyendo impresoras, trazadores y directorios. Si un
usuario solicita un listado de directorios de un disco duro remoto
compartido. El redirector envía la petición al servidor de archivos
que contiene el directorio compartido. Se concede la petición y se
proporciona el listado de directorios.
• Periféricos: los redirectores pueden enviar peticiones a los
periféricos, con el redirector podemos referenciar como LPT1, COM1 o
USB1 impresoras de red en lugar de impresoras locales. El redirector
intercepta cualquier trabajo de impresión y lo envía a la impresión
de red especifica. La utilización del redirector permite a los
usuarios no preocuparse ni de la ubicación actual de los datos o
periféricos. Para acceder a los datos de un ordenador de red el
usuario solo necesita escribir el designador de la unidad asignado a
la localización del recurso y el redirector determina el
encaminamiento actual.
• Gestión de usuarios: los SO permiten al administrador de la red
determinar las personas o grupos de personas que tendrán la
posibilidad de acceder a os recursos de la red, así como crear
permisos de usuario controlados por el SO de red, asignar o denegar
permisos de usuario de red, eliminar usuarios de la lista de usuario
que controla el SO de red… Para simplificar la tarea de gestión de
usuarios el SO permite la creación de grupos de usuarios. Clasificando
los individuos en grupos todos los miembros de un grupo tendrán los
mismos permisos asignados al grupo como una unidad.

**Script de inicio de sesión: especifica el nombre de la secuencia


de comandos de inicio de sesión que va a utilizar esta cuenta de
usuario. Están almacenadas en el recurso compartido NETLOGON.
Variables de secuencias de comando de inicio de sesión: (Pregunta
examen)

• %homedrive%: unidad de disco que contiene el directorio principal


del usuario en la estación de trabajo local.
• %homepath%: directorio principal del usuario.
• %os%: SO del usuario.
• %processor_architecture%: tipo de procesador de la estación de
trabajo.
• %processor_level%: nivel de procesador de la estación de trabajo.
• %userdomain%: domino donde está definida la cuenta.
• %username%: nombre del usuario de la cuenta.

• Compartir recursos: termino para describir los recursos que


públicamente están disponibles para cualquier usuario de la red, la

257
BLOQUE II TEMA 4

mayoría de los SO también pueden determinar el grado de compartición


permitiendo diferentes usuarios con diferentes niveles de acceso a
los recursos y coordinación en el acceso a los recursos asegurando
que dos usuarios no utilizan el mismo recurso en el mismo instante.
• Gestión de la red: algunos SO de red avanzados incluyen herramientas
de gestión ayudan a controlar el comportamiento de la red, estas
herramientas de gestión permiten detectar síntomas del problema y
presentar estos síntomas en un gráfico, el administrador de la red
puede tomar la decisión correcta antes de que el problema suponga la
caída de la red.

258

También podría gustarte