TSSN - Arquitectura de software
En este capítulo, aprenderemos sobre la arquitectura de software de los sistemas y redes de conmutación de telecomunicaciones.
El software de los sistemas SPC se puede clasificar en dos para una mejor comprensión: System Software y Application Software. La arquitectura del software se ocupa del entorno de software del sistema de SPC, incluidos los procesadores de idioma. Muchas características, junto con el procesamiento de llamadas, son parte del sistema operativo bajo el cual se llevan a cabo las operaciones y las funciones de administración.
El procesamiento de llamadas es la función de procesamiento principal, que está orientada a eventos. El evento que ocurre en la línea o troncal del suscriptor activa el procesamiento de la llamada. El establecimiento de la llamada no se realiza en una secuencia de procesamiento continua en la central. Todo este proceso es consistente con muchos procesos elementales que duran unas pocas decenas o cientos de milisegundos y muchas llamadas se procesan como tales simultáneamente y cada llamada es manejada por unProcess. Un proceso es una entidad activa que es unprogram in execution, a veces incluso denominado como task.
Proceso en un entorno de multiprogramación
En esta sección, veremos qué es un proceso en un entorno de multiprogramación. Un proceso en un entorno de multiprogramación puede ser uno de los siguientes:
- Running
- Ready
- Blocked
El estado de un proceso se define por su actividad actual y el proceso que ejecuta y las transiciones que experimenta su estado.
Se dice que un proceso es running, si el procesador está ejecutando una instrucción.
Se dice que un proceso es ready si la siguiente instrucción de ejecución de un proceso está esperando o tiene una instrucción que se agotó el tiempo de espera.
Se dice que un proceso es blocked, si está esperando que ocurra algún evento antes de que pueda continuar.
La siguiente figura indica el proceso que muestra la transición entre en ejecución, listo y bloqueado.
Si bien algunos procesos están en estado de ejecución, algunos estarán en estado listo mientras que otros estarán bloqueados. Los procesos en la lista lista estarán de acuerdo con las prioridades. Los procesos bloqueados están desordenados y se desbloquean en el orden en que los eventos están esperando que ocurran. Si un proceso no se ejecuta y espera alguna otra instrucción o recurso, el tiempo del procesador se ahorra empujando dicho proceso a la lista de listos y se desbloqueará cuando su prioridad sea alta.
Bloque de control de proceso
El bloque de control de procesos representa cada proceso del sistema operativo. PCB es una estructura de datos que contiene la siguiente información sobre el proceso.
Estado actual de ejecución del proceso
Prioridad de proceso que está en estado listo
Parámetros de programación de la CPU
Guarda el contenido de la CPU, cuando se interrumpe un proceso
Asignación de memoria al proceso
Los detalles del proceso como su número, uso de CPU, etc.están presentes
Estado de eventos y recursos de E / S asociados con el proceso
PCB tiene toda la información sobre los procesos que se ejecutarán a continuación cuando reciba la CPU. Los registros de la CPU incluyen unProgram Status Word (PSW) que contiene la dirección de la siguiente instrucción a ejecutar, los tipos de interrupciones habilitadas o deshabilitadas actualmente, etc.
Mientras que la CPU ejecuta algún proceso, ese proceso debe cambiarse cuando el proceso que se está ejecutando actualmente se bloquea o se produce un evento o una interrupción que desencadena un proceso de alta prioridad. Tal situación se llamaProcess Switching, que también se conoce como Context Switching. Dicho mecanismo de prioridad de interrupción se describe en la siguiente figura.
Si un proceso Aescanea una línea de suscriptor particular y la encuentra libre, luego el proceso establece una llamada con ese suscriptor. Sin embargo, si otro proceso B reclama la prioridad y establece una llamada con el mismo abonado al mismo tiempo, ambos procesos deben realizar una llamada al mismo abonado al mismo tiempo, lo cual no es sugerible. También puede ocurrir un problema similar con otras tablas y archivos compartidos.
La información sobre los recursos del intercambio (troncales, registros, etc.) y su utilización actual se mantiene en forma de tablas. Estas tablas, cuando es necesario, son compartidas por diferentes procesos. El problema se produce cuando dos o más procesos optan por la misma mesa al mismo tiempo. Este problema se puede resolver dando acceso a cada proceso a una tabla compartida.
Compartir recursos
Siempre que un proceso utiliza una tabla compartida o cualquier recurso compartido, todos los demás procesos que necesitan lo mismo deben mantenerse en espera. Cuando el proceso en ejecución termina de usar el recurso, se asignará al primer proceso listo priorizado que se mantiene en espera. Este proceso de usar los recursos compartidos se llamaMutual Exclusion. Se dice que el proceso, que accede al recurso compartido, está en suCritical Section o Critical Region. La exclusión mutua implica que solo un proceso puede estar en la región crítica en cualquier instancia para un recurso compartido dado. La codificación para que el proceso esté en la sección crítica se realiza con mucho cuidado para que no haya bucles infinitos. Esto ayuda a que el proceso no se bloquee. El trabajo realizado es más preciso y eficiente. Esto ayuda a los otros procesos que están esperando.
Si dos procesos en un semáforo tienen que compartir un recurso común, lo comparten durante ciertos intervalos de tiempo. Mientras uno usa el recurso, el otro espera. Ahora, mientras espera, para estar en sincronía con el otro, lee la tarea que estaba escrita hasta entonces. Esto significa que el estado de ese proceso debe ser distinto de cero y debe seguir incrementándose, que de lo contrario se enviaría a la lista de bloqueados. Los procesos que están en la lista bloqueada se apilan uno sobre otro y se les permite usar el recurso de acuerdo con la prioridad.
La siguiente figura muestra cómo funciona el proceso:
Si dos o más procesos en un semáforo esperan indefinidamente por un recurso y no obtiene cero para regresar al estado de bloque, mientras que otros procesos esperan en el estado bloqueado por el uso del mismo recurso mientras que ninguno podría usar el recurso pero esperar, tal un estado se llama Deadlock State.
Las técnicas se han desarrollado para prevenir, evitar, detectar y recuperar puntos muertos. Por lo tanto, estos cubren las características más destacadas del sistema operativo para cambiar procesadores.
Producción de software
La producción de software SPC es importante debido a su complejidad y tamaño del software junto con su larga vida útil y confiabilidad, disponibilidad y portabilidad.
La producción de software es la rama de la ingeniería de software que se ocupa de los problemas encontrados en la producción y el mantenimiento de software a gran escala para sistemas complejos. La práctica de la ingeniería de software se clasifica en cuatro etapas. Estas etapas compensan la producción de sistemas de software.
- Especificaciones funcionales
- Descripción formal y especificaciones detalladas.
- Codificación y verificación
- Prueba y depuración
El software de aplicación de un sistema de conmutación se puede dividir en software de procesamiento de llamadas, software administrativo y software de mantenimiento; los paquetes de software de aplicación de un sistema de conmutación utilizan una organización modular.
Con la introducción del Control de programa almacenado, los abonados pueden disponer de una gran cantidad de servicios nuevos o mejorados. Muchos tipos de servicios mejorados, como marcación abreviada, llamadas de números grabados o llamadas sin marcar, devolución de llamada cuando es gratuito, desvío de llamadas, respuesta del operador, registro de número de llamada, llamada en espera, retención de consulta, llamadas de conferencia, alarma automática, restricción de STD, llamada maliciosa el rastreo, etc. se introducen con estos cambios en la telefonía.
Redes de múltiples etapas
Las redes de múltiples etapas son las redes construidas para proporcionar conexiones entre más abonados de manera más eficiente que los sistemas de conmutación Crossbar.
Las redes de conmutación Crossbar discutidas anteriormente tienen algunas limitaciones, como se describe a continuación:
El número de puntos de cruce será el cuadrado del número de estaciones conectadas y, por lo tanto, esto es costoso para un conmutador grande.
El fallo de Crosspoint impide la conexión con esos dos suscriptores entre los que está conectado el Crosspoint.
Incluso si todos los dispositivos conectados están activos, solo se utilizan algunos de los puntos de cruce
Con el fin de encontrar una solución para subsidiar estas desventajas, se construyeron los interruptores de división de espacio de múltiples etapas. Al dividir el interruptor de barra transversal en unidades más pequeñas e interconectarlas, es posible construir interruptores de varias etapas con menos puntos de cruce. La siguiente figura muestra un ejemplo de un conmutador de varias etapas.
El conmutador multietapa como el anterior necesita menos puntos de cruce que los necesarios en el cambio de barra transversal. De acuerdo con el ejemplo que se muestra arriba, para los diferentes suscriptores 8 (entrada) y 8 (salida) (tanto suscriptores llamados como suscriptores que llaman), los puntos de cruce necesarios en una red de barra transversal normal serán cuadrados de ellos, que es 64. Sin embargo, en el Red de barras cruzadas de varias etapas, solo 40 puntos de cruce son suficientes. Esto es como se muestra en el diagrama de arriba. En un interruptor de barra transversal grande de varias etapas, la reducción es más significativa.
Ventajas de una red multietapa
Las ventajas de una red de varias etapas son las siguientes:
- Se reduce el número de travesaños.
- El número de rutas de conexión puede ser mayor.
Desventajas de una red de varias etapas
La desventaja de una red de varias etapas es la siguiente:
Los interruptores de varias etapas pueden causar Blocking.
El número o tamaño de los conmutadores intermedios, si se aumenta, puede resolver este problema, pero el costo aumenta con esto.
Bloqueo
El bloqueo reduce el número de puntos de cruce. El siguiente diagrama le ayudará a comprender mejor el bloqueo.
En la figura anterior, donde hay 4 entradas y 2 salidas, el Suscriptor 1 se conectó a la Línea 3 y el Suscriptor 2 se conectó a la Línea 4. Las líneas de color rojo indican las conexiones. Sin embargo, llegarán más solicitudes; una solicitud de llamada del abonado 3 y el abonado 4, si se hace, no se puede procesar, ya que no se puede establecer la llamada.
Los suscriptores del bloque anterior también (como se muestra en el diagrama anterior) enfrentan el mismo problema. Solo se pueden conectar dos bloques a la vez; No se puede conectar más de dos o todas las entradas (ya que depende del número de salidas presentes). Por tanto, no se pueden establecer varias conexiones de forma simultánea, lo que se entiende como el bloqueo de las llamadas.