Sistema operativo examen escrito y entrevista destacados

A. Esquema

1. ¿Cuál es el sistema operativo de
2 hilos y procesos
3. Gestión de memoria
4. Programación
5. áreas críticas y la resolución de conflictos críticos
6.7 tipos de formas de IPC
7. Causas de punto muerto y el enfoque
de sincronización 8. entre procesos y exclusión mutua de diferencia, el modo de sincronización de subprocesos
9. Procedimiento común algoritmo de planificación
características básicas 10. Los sistemas de real-Time

Referencia Bowen:
https://blog.csdn.net/xiongluo0628/article/details/81461053
https://blog.csdn.net/FanceFu/article/details/79357048
https://blog.csdn.net/qq_38998213/article / Detalles / 87899231
https://blog.csdn.net/youngchang06hpu/article/details/8009947

1. ¿Qué es el sistema operativo:

El sistema operativo es el hardware del ordenador puente y la interacción del usuario, y la gestión de los recursos de hardware y software de ordenador del programa

2. Los procesos y subprocesos:

Proceso:
el proceso es un programa con una cierta separación de funciones se ejecutan en un conjunto de datos sobre las actividades, el proceso es una asignación de recursos del sistema operativo unidad independiente y programación , es el producto de la tecnología de programación multi-canal, que se utiliza para mejorar el sistema operativo. eficiencia, implementar paralelamente en el sentido macro.

Tema:
Un hilo es una entidad ** proceso es la programación de la CPU y el envío de unidades básicas **, que es menor que el proceso de la unidad básica puede operar independientemente de los hilos sí mismos tienen esencialmente no hay recursos del sistema, tiene sólo un poco en ejecución. recursos esenciales (como un contador de programa, un conjunto de registros y pila), sino que puede ser compartida con otros subprocesos pertenecen a un proceso que es propiedad de todos los recursos.

Procesar y el hilo de las diferencias y conexiones:

Contacto:
hilo es un proceso específico de, o la revocación de un proceso puede crear varios subprocesos.
ejecución concurrente de múltiples hilos puede compartir los datos en el proceso, pero cada uno tiene su propio contexto espacio de pila independiente, el contador y el almacenamiento de programas.

diferencia:
Aquí Insertar imagen Descripción

Resumen:
1. hilo overhead pequeños y grandes proceso overhead
2. Programa A tiene al menos un proceso, un proceso tiene al menos una rosca
3. El proceso siempre puede crear y destruir con las necesidades del programa, pero siempre y cuando existe se bloquea un hilo, a continuación, el proceso también choque

3. Gestión de memoria

1. memoria virtual (el más adecuado para gestionar un objeto grande, o una matriz de estructuras):
cada programa tiene su propio espacio de direcciones, el espacio de direcciones está dividido en una pluralidad de bloques, cada bloque se llama a. Estas páginas se asignan a la memoria física, pero no tiene que ser asignada a la memoria física contigua, que no necesita todas las páginas deben estar en la memoria física.
Cuando un programa se refiere a una porción del espacio de dirección física en la memoria, se realiza el hardware mapeo necesario inmediatamente. Cuando un programa de referencias de una parte del espacio de direcciones no está en la memoria física, el sistema operativo es responsable de cargar la parte que falta de la memoria física y volver a ejecutar una instrucción fallado.

archivo asignado en memoria 2. A (el más adecuado para manejar flujo de datos de gran tamaño (típicamente de un archivo) y unos datos compartidos entre una pluralidad de correr en un solo proceso de ordenador):
archivos mapeados en memoria, un archivo se asigna a una memoria. Win32 proporciona permite que las aplicaciones para asignar el archivo a una función de proceso (CreateFileMapping). archivos mapeados en memoria y la memoria virtual es algo similar a un área reservada puede abordar el espacio de archivos mapeados en memoria, y serán sometidos a esta zona de memoria física, memoria física de un archivo asignado en memoria ya existe en el archivo en el disco, y en el primero debe ser mapeada archivo antes de la operación de archivo. Cuando se procesan utilizando los archivos mapeados en memoria almacenados en un archivo en el disco no tendrá que realizar operaciones de E / S en el archivo, por lo que los archivos mapeados en memoria pueden jugar un papel muy importante en el procesamiento de grandes cantidades de archivos de datos.

3. Pila de memoria (el más adecuado para la gestión de un gran número de pequeños objetos)

4. programación

1. Prioridad Prioridad:

  • Manual de prioridad
  • La relación de respuesta como una prioridad (más alto que el algoritmo de respuesta de prioridad de programación)

2. horario de operación por turnos:
todo proceso listo según el principio FIFO dispuesto en una cola, cada programación de tiempo, la CPU asignada a la primera proceso de equipo, que puede realizar un segmento de tiempo. Cuando el segmento de tiempo expira, emitida por la interrupción de temporizador de reloj, el planificador detiene la ejecución del proceso, y la envió a la final de la cola de preparados mientras continúa la CPU asignada a la cabeza del proceso de cola.
Round-robin eficiencia de los algoritmos de intervalo de tiempo y tienen una gran relación. Debido a que cada proceso de conmutación debe salvar el proceso de información y el proceso de carga de nueva información, si el intervalo de tiempo es demasiado corto, el proceso de cambiar con demasiada frecuencia, en el proceso de conmutación se toma demasiado tiempo.

Multilevel Comentarios Queue 3:
① una pluralidad de la cola de preparados, y dado prioridad diferente para cada cola. El primero tiene la prioridad más alta, seguida de una segunda cola de las colas, cada prioridad de la cola restante disminuido por uno. Este algoritmo da el proceso de cola de ejecución segmento de tiempo respectiva es lo mismo que lo hace el tamaño, mayor es la prioridad en la cola, menor es el tiempo de ejecución del segmento especificado para cada proceso.
② Cuando un nuevo proceso en la memoria después de que se coloca primero en el primer extremo de la cola, de acuerdo con el principio de la cola de espera de orden de llegada para ser programado. Cuando llegó el momento de realizar el proceso, ya que puede ser completado dentro del intervalo de tiempo, se puede preparar el sistema de evacuación, y si no se completa al final de un intervalo de tiempo, el planificador de procesos irá a la próxima final de la cola.

4. resolver las áreas críticas y conflictos críticos

Permitir sólo el uso de un proceso llamado de recursos recurso crítico . Muchos dispositivos físicos pertenecen a los recursos críticos, tales como entrada, impresoras, unidades de cinta
que el código para acceder al recurso crítico se llama una sección crítica.
Solución:
Para el acceso exclusivo a los recursos críticos, cada proceso antes de entrar en la zona crítica, es necesario comprobar para asegurarse de que sólo un proceso en las áreas críticas, tales como el proceso existente entró en su sección crítica, el otro tratando de entrar en la sección crítica el proceso debe esperar. Entrar en la sección crítica del proceso es dejar de fumar dentro de un tiempo limitado, de modo que otros procesos pueden entrar de inmediato a su sección crítica. Si no puede acceder a su región crítica, debemos dejar que la CPU, el proceso parece evitar el ocupado y por lo que el fenómeno.

5. La comunicación entre procesos

1. Línea : permite la comunicación entre padres e hijos
2 canalizaciones con nombre : permite la comunicación entre procesos no relacionados
3. señal : Se ha producido un proceso de recibir la notificación práctica, similar a una emisión
4. semáforo : Una utilizado identificador generalmente como, por ejemplo, bloqueo de
la cola de mensajes : lista enlazada cola de mensajes se compone por el mensaje, almacenado en el núcleo por el identificador de cola de mensajes de identificación
6. memoria compartida : creado por un proceso, otros procesos pueden acceder a la sección de memoria
7. el socket : mecanismo de comunicación entre el enchufe es la diferente proceso de otro mecanismo de comunicación es que puede ser utilizado para la comunicación entre procesos entre sus diferentes.

ventajas y desventajas comparativas:
la tubería: la capacidad lenta y limitada de
las colas de mensajes: Recibe los límites de capacidad del sistema, y la atención se deben leer por primera vez cuando la lectura es no tener en cuenta los últimos datos tema.
Semáforo: transmitir información compleja no sólo se utiliza para sincronizar.
Memoria compartida: la capacidad de fácilmente la capacidad de control, velocidad rápida, pero para mantener el ritmo, un proceso de este tipo en el momento de la escritura, otro proceso debe prestar atención a la cuestión de la alfabetización, que es el hilo de rosca de seguridad equivalente.

6. La comunicación entre hilos

la comunicación entre hilos se divide en dos modelos: la memoria compartida y paso de mensajes

1. Usar la palabra clave volátil (memoria compartida): múltiples hilos monitorear simultáneamente una variable cuando esta variable cambia, el hilo se pueden percibir y poner en práctica de negocio apropiado
2. Uso wait () y notify () Método: Clase de objeto proporciona un método de comunicación entre los hilos: wait (), notificar () , notifyaAl (), que es la base, espera, y debe notificar a la comunicación con multihilo utilizando sincronizado, método espera libera el bloqueo, notificar método no liberar el bloqueo
del conducto 3.

7. causas de estancamiento y métodos de tratamiento

Callejón sin salida callejón sin salida se refiere a dos o más procesos en el proceso de implementación, debido a la competencia por los recursos o un fenómeno de bloqueo causados debido comunicarse entre sí, sin fuerza externa, no van a ser capaces de promoverlo. En este momento, dicen que el sistema se encuentra en estado de interbloqueo o sistema para producir un callejón sin salida, que siempre está en el proceso de espera de otro proceso que se llama el punto muerto.

Cuatro condiciones necesarias para Punto muerto:
1. Condiciones mutuamente excluyentes: un recurso sólo puede ser un proceso que utiliza
2. condición irrenunciable: el proceso tiene acceso a los recursos, no se usó antes, otros procesos no pueden ser arbitrariamente privados únicamente puede tomar la iniciativa para liberar
3. solicitud y mantener las condiciones: el proceso se ha mantenido durante al menos un recurso, pero propuso una nueva solicitud de recursos, el recurso ha sido ocupada por otro proceso, este proceso solicitante vez que se bloquea, pero los recursos que han adquirido para mantener el asimiento.
condiciones de ciclado 4. Esperar: es decir, el conjunto proceso {p0, p1, p2, p3 ...... pn}; p0 p1 está esperando ocupado un recurso, p1 está esperando un recurso ocupado p2, p0 pn está esperando por un recurso ocupado.
Mientras la condición anterior no se cumple, no se producirá el estancamiento.

Solución: algoritmo del banquero, puede hacer referencia a este artículo la palabra + una imagen clara - Algoritmo del banquero

8. La sincronización entre procesos y la diferencia de sincronización de exclusión mutua y la forma de rosca

Mutuamente excluyentes (exclusivo): un recurso sólo se permite una vez solamente un proceso para su acceso, pero no restringe el acceso a la orden / de un determinado momento dos procesos no pueden ejecutar
la sincronización (en colaboración): En la mayoría de los casos , sobre la base del acceso mutuamente exclusivo de algún mecanismo para lograr un proceso ordenado, en algunos casos, permite que múltiples procesos accedan simultáneamente
el principio de los mecanismos de sincronización a seguir :
 1. dejado vacante en;
 2. espera ocupada;
 3. limitado a esperar;
 4. deje que el derecho a esperar;

método de sincronización 9. hilo:

sección crítica , mutex , semáforos , evento de
  
  área crítica : la serie acceso multi-hilo a los recursos públicos o por medio de una pieza de código, control de velocidad de acceso a datos.
  Mutex : Un mecanismo de exclusión mutua, sólo aquellos con hilo mutex permiso tiene acceso a los recursos públicos, ya que sólo un objeto de exclusión mutua, es posible asegurar que los recursos públicos no se puede acceder simultáneamente por varios subprocesos.
  Semáforo número máximo de subprocesos al mismo tiempo que permite que varios subprocesos tienen acceso a los mismos recursos, al mismo tiempo, es necesario limitar el acceso a este recurso: objetos semáforo delante de varios otros métodos, las señales permite a varios subprocesos para utilizar un recurso compartido.
  Evento (señal): para mantener el funcionamiento multihilo simultáneo por medio de una notificación, también se puede implementar fácilmente la comparación prioridad operativa multihilo.
  contraste:
Aquí Insertar imagen Descripción

10. Un método de proceso de sincronización:

** bloqueo de bucle: ** en cualquier momento, a lo sumo un soporte, se dijo, sólo puede tener como máximo una unidad de ejecución en cualquier momento para adquirir un bloqueo. Pero los dos mecanismos de planificación ligeramente diferentes. Para el mutex, si el recurso ya está ocupado, la solicitud de recursos sólo puede ir a dormir. Pero el bloqueo de bucle sin causar la persona que llama a dormir, si el bloqueo de bucle se ha celebrado otra unidad de ejecución, la persona que llama ha sido ver si el titular de bloqueo ciclo de centrifugado ha lanzado la cerradura donde la palabra "giro" se llama así.

** lado del tubo: ** proceso sólo puede tener uso exclusivo del tubo, es decir, cuando un proceso mediante el tubo, otro proceso debe esperar. Después de un proceso terminado de utilizar el tubo, se debe liberar el tubo y un proceso que esperar a que un proceso tubo de despertador.
En la entrada de la cola de la cola de tubo llamado una entrada, ya que el proceso va a realizar operaciones de despertador, puede tener una pluralidad de cola esperando para usar el tubo, tal como un caliente cola de cola, su prioridad es más alta que la cola.

algoritmo de planificación 11. proceso común

Votación y las interrupciones:
la baja eficiencia de votación, mucho tiempo de espera, la utilización de CPU no es muy alta; interrumpiendo fácil pasar por alto algunos de los problemas, la utilización de la CPU.

1. En primer llegado, primer servido (FCFS): el principio de este algoritmo es de acuerdo con el trabajo llega cola de trabajos de copia de seguridad (o proceso en la cola de listo) seleccionar el orden de las operaciones (o procesos)
  
2. trabajo corto primero (SJF: Proceso más corta primero): esto se utiliza principalmente para el algoritmo de planificación de tareas, que se selecciona de la secuencia de trabajo en la tarea de respaldo más corto tiempo de ejecución necesario para ejecutar en la memoria principal.

3. El algoritmo de planificación round-robin: todo proceso listo según el principio FIFO dispuesto en una cola, cada programación de tiempo, la CPU asignada a la primera proceso de equipo, que puede realizar un segmento de tiempo. Cuando el segmento de tiempo expira, emitida por la interrupción de temporizador de reloj, el planificador detiene la ejecución del proceso, y la envió a la final de la cola de preparados mientras continúa la CPU asignada a la cabeza del proceso de cola.
Round-robin eficiencia de los algoritmos de intervalo de tiempo y tienen una gran relación. Debido a que cada proceso de conmutación debe salvar el proceso de información y el proceso de carga de nueva información, si el intervalo de tiempo es demasiado corto, el proceso de cambiar con demasiada frecuencia, en el proceso de conmutación se toma demasiado tiempo.

4. prioridad más alta que la respuesta: el principio de la relación de respuesta más alta (+ requisito de latencia ha sido tiempo de ejecución) prioridad de tiempo / de funcionamiento requeridas en cada trabajo seleccionado en operación cuando el primer caso se calcula en respuesta a la tarea de respaldo para cada trabajo en la cola de RP. Seleccionar los puestos de trabajo máximas en funcionamiento.

5. prioridad de programación Algoritmo: de acuerdo con el tamaño de la prioridad del proceso de planificación. Los procesos de alta prioridad conseguir condiciones de programación de prioridad se llama algoritmo de programación de prioridad. Nota: La mayor prioridad número, menor será la prioridad.

6. El multi-etapa algoritmo de cola de programación:
  ① una pluralidad de la cola de preparados, y diferente prioridad dada para cada cola. El primero tiene la prioridad más alta, seguida de una segunda cola de las colas, cada prioridad de la cola restante disminuido por uno. Este algoritmo da el proceso de cola de ejecución segmento de tiempo respectiva es lo mismo que lo hace el tamaño, mayor es la prioridad en la cola, menor es el tiempo de ejecución del segmento especificado para cada proceso.
② Cuando un nuevo proceso en la memoria después de que se coloca primero en el primer extremo de la cola, de acuerdo con el principio de la cola de espera de orden de llegada para ser programado. Cuando llegó el momento de realizar el proceso, ya que puede ser completado dentro del intervalo de tiempo, se puede preparar el sistema de evacuación, y si no se completa al final de un intervalo de tiempo, el planificador de procesos irá a la próxima final de la cola.

12. El sistema en tiempo real las características básicas de

Realizar una tarea específica dentro de un cierto tiempo, en tiempo real y la fiabilidad.
El llamado "sistema operativo en tiempo real" en realidad se refiere a la labor del sistema operativo, los recursos pueden ser asignados dinámicamente según sea necesario en cualquier momento. Dado que los recursos pueden ser asignados dinámicamente, y por lo tanto, su capacidad para manejar la transacción más fuerte, más rápido.

Publicado 47 artículos originales · elogios ganado 15 · Vistas a 10000 +

Supongo que te gusta

Origin blog.csdn.net/qq_41525021/article/details/100109553
Recomendado
Clasificación