Sincronización en el kernel de Linux Knowledge

  

Q1. ¿Qué es una sección crítica? ¿Cuál es el estado de la competencia? ¿Qué es la sincronización?

A:

1) Las regiones críticas son segmentos de código para acceder y manipular datos compartidos. Por lo general, no es seguro acceder a múltiples recursos simultáneamente con el mismo recurso;

2) Si dos tareas del kernel pueden estar en la misma sección crítica, es un fenómeno de error; si esto sucede, se denomina condición de carrera;

3) Evite la concurrencia y la prevención El estado de competencia se llama sincronización.


P2. Introduzca brevemente los puntos muertos y las formas de evitarlos.

A: los interbloqueos incluyen los interbloqueos y los interbloqueos de ABBA,

1) Hay cuatro razones para los interbloqueos: uso exclusivo, no preferente, solicitud y retención, y espera de bucle;

2) Las formas de evitar los interbloqueos son: destrucción <; indestructible <; condiciones, destrucción " solicitud y retención de condiciones, destrucción en bucle en espera " condiciones.


Q3. ¿Cuál es la causa de la ejecución simultánea en el kernel?

A:   Concurrency " se divide en " pseudoconcurrency " y " true concurrency ", y hay varias razones para la ejecución concurrente en el kernel:

1 Interrupción: puede interrumpir el código que se está ejecutando en cualquier momento;

2) Prevención del kernel: Las tareas en el kernel pueden ser anuladas por otra tarea;

3) Suspensión y sus usuarios Sincronización de espacio: los procesos que se ejecutan en el kernel pueden estar inactivos, lo que despierta al programador y programa un nuevo proceso de proceso de usuario;

4) Multiprocesamiento simétrico: dos o más procesadores pueden ejecutarse simultáneamente Codigo


Q4. Dé una definición del semáforo y explique el significado de down () y up ().

A:

1) El semáforo en Linux es un bloqueo de suspensión, propuesto por Dijkstra en 1968. Si una tarea intenta obtener un semáforo que se ha mantenido, El semáforo lo empuja a la cola de espera y luego lo deja en reposo; cuando el proceso del semáforo libera el semáforo, se activará una tarea en la cola de espera para que se pueda obtener este semáforo; p> 2) El semáforo admite dos operaciones atómicas P () y V (), la primera se llama operación de prueba, la última se denomina operación de aumento, los sistemas posteriores llaman a estas dos operaciones hacia abajo () y arriba (); >

3) La operación down () solicita un semáforo al disminuir el conteo de semáforos en uno, la operación up () se usa para liberar el semáforo, que también se conoce como semáforo ping "up" Porque aumentará el valor de cuenta del semáforo.

Copyright © Conocimiento de Windows All Rights Reserved