Sistema operativo Linux Conocimiento de procesos

  

P1. ¿Cuáles son los conceptos de programas y procesos? ¿Por qué introducir el concepto de " proceso "?

A:

1) Un programa es un archivo simple, una colección de instrucciones de código de máquina y datos almacenados en una imagen ejecutable en el disco, una imagen ejecutable ( Imagen ejecutable) es el contenido de un archivo ejecutable;

2) El proceso representa la ejecución del programa, es una entidad dinámica, que cambia constantemente con la ejecución de las instrucciones en el programa, en algún momento del proceso. El contenido se denomina imagen de proceso;

3) Se puede decir que el proceso de ejecución del programa es la suma de un entorno de ejecución. Además de varias instrucciones y datos en el programa, el entorno de ejecución tiene algunos Los datos adicionales y los cambios dinámicos en el entorno de ejecución reflejan el funcionamiento del programa. Para describir el proceso dinámico, se introdujo el concepto de "proceso".


Q2. ¿Qué es un bloque de control de proceso? ¿Qué información básica contiene?

A:

1) En Linux, la estructura de descripción del proceso se llama task_struct, y dicha estructura de datos se denomina bloque de control de proceso (PCB);

2) PCB Es una estructura de datos bastante grande con más de 80 campos en su dominio. De acuerdo con su función, todos los dominios se dividen en: información de estado, información de enlace, varios identificadores, información de comunicación entre procesos, información de tiempo y temporizador, información de programación, Información del sistema de archivos, información de la memoria virtual e información del entorno del procesador.


Q3. ¿Cuáles son los estados del kernel de Linux?

A:

1) Hay tres estados de proceso básicos para Linux: estado de ejecución, estado preparado y estado de bloqueo (o estado de espera), existen cuatro estados posibles entre estos tres estados. Relación de conversión: estado de ejecución -> estado de bloqueo, estado de ejecución -> estado listo, estado de listo -> estado de ejecución y estado de bloqueo -> estado de listo;

2) Para mayor comodidad de administración, El estado preparado y el estado de ejecución se combinan en un estado: el estado ejecutable y, luego, algunos otros cambios, el estado del proceso se divide en: estado ejecutable, estado de espera (o espera) (dividido en estado de suspensión profunda y estado de suspensión superficial ), estado de pausa y estado de zombie.


P4. ¿Cuáles son las formas de organizar los PCB?

A: los PCB se organizan de las siguientes maneras: procesar listas vinculadas, tablas hash, colas ejecutables y colas de espera.


Q5. ¿Cuáles son los principales algoritmos de programación? ¿Qué aspectos debe considerar un buen algoritmo de programación?

A:

1) Los algoritmos de programación principales incluyen: algoritmo de programación de turnos rotativos, algoritmo de programación de prioridad (algoritmo de prioridad no preferente y algoritmo de prioridad preferente), retroalimentación de múltiples niveles Algoritmos de programación de colas y algoritmos de programación en tiempo real;

2) Un buen algoritmo de programación debe considerar cinco aspectos: imparcialidad, eficiencia, tiempo de respuesta, tiempo de respuesta y rendimiento.

Copyright © Conocimiento de Windows All Rights Reserved