Si nuestra computadora tiene múltiples programas ejecutándose al mismo tiempo, habrá competencia por ciertos recursos de datos, y si los recursos no son suficientes, entrarán en el estado de espera. Si el recurso solicitado está ocupado por otros procesos de espera, entonces el proceso de espera puede estar en estado de espera para siempre y no puede cambiar el estado. Esto se denomina un interbloqueo del proceso del sistema. Entonces, ¿hay alguna manera de hacer que el proceso del sistema no se convierta en un punto muerto?
De hecho, la forma fundamental de que el sistema no salga de un punto muerto es eliminar las cuatro condiciones necesarias para el punto muerto, analicemos juntos. Cómo destruir estas condiciones.
Destrucción de las condiciones de mutex
La destrucción de una condición de mutex permite que múltiples procesos accedan a los recursos al mismo tiempo. Dado que las características inherentes del acceso exclusivo de la mayoría de los recursos no se pueden cambiar, la prevención de puntos muertos no funciona en muchas situaciones al destruir esta condición necesaria. Por ejemplo, los recursos de la impresora deben usarse indistintamente. De lo contrario, se utilizan varios procesos al mismo tiempo y cada proceso imprime una línea. Esta forma de generar información obviamente no es aceptable para el usuario.
Destrucción de las condiciones de posesión y espera
Esta condición se puede romper con el método estático de asignación de recursos, lo que significa que todos los recursos necesarios para su operación se asignan en un momento antes de que se ejecute el proceso. . Si el sistema tiene suficientes recursos para asignar a un proceso, asigna sus recursos requeridos al proceso a la vez, de modo que no se realicen solicitudes de recursos durante la ejecución del proceso, de modo que no se establezca la condición de espera. Si hay un requisito de recursos que no se puede satisfacer cuando se realiza la asignación, otros recursos requeridos por el proceso no se asignan primero al proceso, evitando así que el proceso ocupe recursos durante el período de espera y destruya la condición de ocupación, evitando así la ocurrencia de un punto muerto.
Este método es simple y fácil de implementar. Sin embargo, debido a la plena ocupación de los recursos requeridos durante la ejecución del proceso, algunos recursos con poco tiempo de uso se ocupan durante mucho tiempo, lo que afectará seriamente la utilización total de los recursos del sistema. Como resultado, se reduce la utilización de recursos, y los pares también afectan el retraso en la operación de los procesos que no tienen acceso a todos los recursos.
Condiciones de destrucción y privación
El control destructivo puede destruir esta condición al realizar un proceso que ya ha mantenido ciertos recursos, que actualmente no se cumplen debido a los nuevos requisitos de recursos. Debe liberar temporalmente todos los recursos (una privación) que mantiene, y luego esperar, y luego juntar la toalla al sistema, lo que también evitará el bloqueo. Este método es relativamente difícil de implementar. Para evitar que el proceso abandone automáticamente el sitio del recurso y luego lo recupere, cuesta un precio alto, y este método solo es aplicable al procesador ya los recursos de memoria. Para otros recursos, este método no debe utilizarse. .
Rompiendo la condición de espera del bucle
El uso del método de asignación de orden de recursos puede romper la condición. La idea básica de este método de asignación es dividir todos los recursos del sistema en múltiples niveles. Después de que un proceso obtiene un recurso de una capa determinada, solo puede _ pedir una capa más alta de recursos; cuando un proceso desea liberar una capa Cuando se utiliza un recurso, primero debe liberar los recursos de nivel superior que ocupa, cuando un proceso adquiere un recurso de una capa determinada, quiere aplicar otro recurso en la capa de nuevo y primero debe liberarlo en la capa. Posesión de recursos. En otras palabras, el orden en el que el proceso libera recursos está en el orden inverso de los recursos solicitados. Esto evita que se produzcan esperas de bucle, por lo que no se producen puntos muertos. Una preocupación particular con este enfoque es la disposición de los recursos a nivel. En circunstancias normales, los recursos más comunes que se utilizan a menudo en cada proceso se organizan en un nivel inferior, y los recursos importantes y relativamente escasos se organizan en un nivel superior para maximizar el uso de los recursos. . En comparación con el método descrito anteriormente, este método tiene mejoras significativas en la utilización de recursos y el rendimiento del sistema. Pero también hay algunas fallas.
(1) Los recursos de bajo nivel deben aplicarse por adelantado antes de que el proceso solicite la asignación de recursos en el nivel. Esto es un desperdicio de inactividad en espera de recursos de bajo nivel que no son necesarios por el momento.
(2) Una vez que se establecen los niveles de recursos de varios tipos de equipos, no se pueden cambiar a voluntad, lo que limita el aumento de nuevos tipos de equipos.
(3) El nivel de cada recurso se establece en el orden en que la mayoría de los procesos utilizan los recursos. Para el proceso de uso de recursos y flasheo en este nivel, los recursos se pueden utilizar de manera efectiva. De lo contrario, la pérdida de recursos seguirá existiendo.
Si se produce un interbloqueo, el proceso nunca puede completarse, evita el uso de los recursos del sistema y evita que otros trabajos inicien la ejecución. Por lo tanto, es tan importante que el proceso del sistema ya no tenga un punto muerto, y debe atraer nuestra atención.
Recientemente, algunos usuarios han estado recordando que al abrir algunas aplicaciones integradas,
Recientemente, muchos usuarios informan que durante el proceso de uso de la computadora, Windows no
Para el archivo Windows.old en la computadora, creo que muchos usuarios se sentirán extraños, solo s
Estamos en la vida, WIFI es más comúnmente utilizado, e incluso no se puede separar de él. Si utiliz
Gestión de novatos del sistema Linux top ten inventario de errores comunes
Introducción a las habilidades alternativas del navegador IE
Eliminar privilegios de administrador pueden bloquear el 92% de Windows
Cambie el nombre del administrador del sistema en la ventana
Cómo eliminar la carpeta Windows.old bajo Win7
System home system tutorial Windows 7 cómo abrir el cuadro de diálogo de ejecución
Tutorial del sistema copia de seguridad y recuperación del sistema
La conexión de red inalámbrica para computadoras portátiles no es posible.
La pantalla azul de la muerte de GHOST y la solución de muerte suspendida del disco duro SATA
¿El sistema de recarga de disco muestra cómo resolver el error 15?
Sistema windows7 de 64 bits para ver la versión DirectX del método
Última versión de Alipay: soporte de recarga en línea de la tarjeta de autobús de la ciudad
Desactivar selectivamente la vista previa de video de Win7 Guardar los recursos del sistema
Analice el método de instalación del protocolo IPX /SPX en Win7 (1)
Solucionar error USB no reconocido en Win7 SP1
Instale el número de serie de Win7 ingrese el código de error 0XC004F061 solución
El navegador del sistema Win7 muestra el error de 2001, ¿cómo resolverlo?
Consejos para configurar las carpetas compartidas de XP en lotes
Aparece la instalación de Win7 "El instalador de Windows no puede configurar ventanas como
Win10 parche KB3119142 y luego recuerde a la solución de instalación