Xiaohao habla sobre programa/proceso/hilo, paralelo/concurrencia

1. Programas, con el desarrollo de los tiempos y la sociedad, hemos comenzado a aprender varios lenguajes de programación, y no podemos prescindir de la programación, pero lo que debemos entender es, ¿qué es un programa? ¿Qué representa el programa? ¿Y qué hace el programa? Y programamos, ¿cuál es el propósito de escribir programas?

Aquí creo que el procedimiento se refiere al orden en que completamos una cosa, los pasos de trabajo, por ejemplo, vamos a resolver (1*5+1)-2=? Para este problema, el primer paso es calcular la multiplicación dentro de los paréntesis, luego la suma y finalmente la resta fuera de los paréntesis.Este conjunto de procedimientos constituye nuestro programa para resolver este problema. Entonces, en la computadora, ¿cómo nos reflejamos? El uso de una computadora electrónica para resolver automáticamente un problema requiere determinar el proceso de resolución de problemas de antemano y describirlo con instrucciones de máquina o un lenguaje que la máquina pueda aceptar. El resultado de la descripción se denomina "programa".

2. Proceso, ¿qué es un proceso? Baidu Youyun: "Proceso (Proceso) es un programa en la computadora sobre una actividad en ejecución en un determinado conjunto de datos. Es la unidad básica para la asignación y programación de recursos del sistema, y ​​la base de la estructura del sistema operativo. En el proceso inicial- diseño de estructura informática orientada Entre ellos, el proceso es la entidad básica de ejecución del programa, en la estructura informática contemporánea de diseño orientado a hilos, el proceso es el contenedor del hilo, el programa es la descripción de instrucciones, datos y su forma organizativa , y el proceso es la entidad del programa.

Aquí creo que el proceso es porque el programa en sí es un conjunto de instrucciones, que es un concepto estático y no puede describir la ejecución del programa en la memoria, es decir, no podemos ver cuando se ejecuta literalmente desde el programa, cuando pausas, es imposible ver su relación con otros programas de ejecución, por lo que el concepto estático de programa no puede reflejar fielmente las características del proceso de ejecución concurrente del programa. Para describir en profundidad la naturaleza del proceso de ejecución dinámica del programa, necesitamos introducir el concepto de "proceso (Proceso)" para que el programa se materialice. Puede entenderse en sentido estricto que el proceso es el proceso de ejecución del programa.

3. Hilo, ¿qué es un hilo? Thread (inglés: thread) es la unidad más pequeña que puede realizar la programación de operaciones en el sistema operativo. Está incluido en el proceso y es la unidad operativa real en el proceso. Un subproceso se refiere a un único flujo de control secuencial en un proceso. Múltiples subprocesos pueden ejecutarse simultáneamente en un proceso, y cada subproceso realiza diferentes tareas en paralelo. Un subproceso se refiere a un único flujo de control secuencial en un proceso. Múltiples subprocesos pueden ejecutarse simultáneamente en un proceso, y cada subproceso realiza diferentes tareas en paralelo.

4. Concurrencia y paralelismo, paralelismo: paralelismo al mismo tiempo, concurrencia: dos o más programas se ejecutan dentro de un período de tiempo, por ejemplo, los procesos y procesos que existen antes son concurrentes, pero el paralelismo no puede existir, mientras que los procesadores y dispositivos, Canales intermedios es la existencia de paralelismo. Cabe señalar que la ejecución concurrente no mejora fundamentalmente la eficiencia de la ejecución cuando varios procesos tienen conflictos de recursos

Supongo que te gusta

Origin blog.csdn.net/weixin_64625868/article/details/122819363
Recomendado
Clasificación