1, el proceso de conocimiento teórico

 

proceso de conocimiento teórico

antecedentes culturales

Como su nombre indica, un proceso de software que es proceso continuo. Proceso es una abstracción de un programa en ejecución.

El concepto se originó en el proceso del sistema operativo, es el concepto básico del sistema operativo, una de la abstracción más antigua y más importante es el sistema operativo. Todos los demás sistemas operativos son todos en torno al concepto del proceso de despliegue. Así que usted quiere entender realmente el proceso, primero hay que entender el sistema operativo. Ver su blog Haga clic para entrar .

La notificación de la base teórica:

# La función de un sistema operativo: 
    1: ocultar interfaz de hardware complejo de fea, proporcionando una buena interfaz abstracta 
    2: gestión, proceso de programación y procesos múltiples que compiten hardware a la orden 

# más que la tecnología de dos canales: 
    1. Generar fondo: para un solo núcleo, concurrencia 
    PS: 
    ahora anfitriones son generalmente de varios núcleos, cada núcleo utilizará la tecnología multi-canal, pero sin el uso de la tecnología multi-canal para cambiar entre el núcleo y el núcleo es decir, 
    hay cuatro CPU, corriendo cpu1 el programa encuentra un io bloqueado, io va a esperar hasta el final de la re-programación, que será enviado a cualquiera de los cuatro CPU en el algoritmo específico determinado por el programador del sistema operativo. 
    
    2. multiplexados en el tiempo (rebanada multiplexación en el tiempo de una CPU) + espacial multiplexado (por ejemplo varios canales simultáneamente memoria de programa)

En primer lugar, ¿cuál es el proceso de

Proceso: un proceso en curso, o una tarea. La misión es responsable de la CPU.

Por ejemplo :( + monocitos multi-canal, múltiples procesos para lograr concurrente):

 Por ejemplo, usted es un CPU, tiene mucho trabajo que hacer en la tarde, cena, lavandería, cuarto de baño y así sucesivamente. Pero es imprescindible que todo terminó en la tarde (y la CPU sólo puede hacer una cosa a la vez), entonces ¿cómo podemos hacer que la ejecución simultánea de múltiples tareas para lograr el efecto de la misma? Por lo tanto, usted debe hacer esto, primero puede cocinar, a la espera de que el arroz cocido se puede ir a lavar la ropa, lavar el arroz esté casi cocido, entonces se puede ir a una cosa inodoro.

En segundo lugar, la diferencia entre el proceso y los procedimientos

Programa es sólo un montón de código, sino más bien el proceso se refiere al proceso de ejecución del programa

Se destaca que: El mismo programa se utiliza dos veces, que es un proceso, tales como QQ de inicio de sesión, aunque son el mismo software, pero un chat de vídeo, se puede visitar un espacio.

En tercer lugar, la concurrencia y paralelismo

Concurrencia: CPU única, proceso más complicado

     De forma paralela o simultánea, los usuarios parecen 'mientras que' correr, si se trata de un proceso o hilo, solamente una sola tarea, el verdadero trabajo es la CPU, la CPU para hacer estas tareas, mientras que el mismo tiempo, sólo una CPU realizar una tarea

      A concurrencia: una pseudo-paralelo, que parecen ser ejecutar de forma simultánea. tecnología de CPU + sola multi-canal se puede lograr al mismo tiempo, (también un paralelo concurrente)

 1 usted es un CPU, también se ha hablado de las tres amigas, cada una de las cuales puede ser una tarea en el amor, que desea jugar es compartida por 2 efecto de un amor concurrente estas tres tareas, usted debe ser un go 3 1 para hablar con su novia película, un momento para decir: bueno, yo quiero a la diarrea, a continuación, fue a cenar con una segunda novia, comer uno podría decir: obtener al, I 4 ir al baño, luego se fue con su novia abrió una sala de 3 

Paralelas: multi-CPU (que se ejecuta al mismo tiempo, sólo se puede lograr con una pluralidad de cpu paralelo)

  La nucleación, la técnica de múltiples canales solo puede utilizarse, una pluralidad de núcleos, cada núcleo puede también utilizar la tecnología de multi-canal ( tecnología de multi-canal para términos mononucleares )

 Hay cuatro núcleos, seis tareas, por lo que al mismo tiempo hay cuatro tareas a realizar, suponiendo que cada uno está asignado a CPU1, CPU2, CPU3, CPU4,

   Una vez que la tarea 1 encuentro I / O se vio obligado a la ejecución de interrupción, entonces la tarea se obtenga un 5 cpu1 tiempo rebanada de ejecutar, que es la tecnología de varios canales de un solo Nucleación

   Una vez que la tarea 1 de E / S ha terminado, el sistema operativo recordará que ( programación Conocer el proceso, que se asigna para ejecutar la CPU, la última palabra por el sistema operativo ), se puede asignar a cualquiera de los cuatro CPU de una sola vez ejecución

  Todos los ordenadores modernos suelen hacer muchas cosas al mismo tiempo, la PC de un usuario (ya sea sola o CPU multi-CPU), puede ejecutar varias tareas (una tarea puede ser entendida como un proceso).

 

La tecnología multi-canal: multi-canal almacenado en la memoria al mismo tiempo (s) Programas, cpu cambiar rápidamente de un proceso a otro, de modo que cada proceso se ejecuta cada uno de decenas o cientos de milisegundos, por lo que, aunque en un instante, una CPU sólo se puede realizar una tarea, pero dentro de 1 segundo, la CPU, pero puede ejecutar varios procesos, lo que da la ilusión produjo un paralelo, que pseudo-concurrente, con el fin de distinguir el hardware verdadero multi-procesador de sistemas en paralelo operando (múltiple cpu comparten la misma memoria física)

En cuarto lugar, síncrona y asíncrona

ejecución síncrona: un proceso al realizar una tarea, otro proceso debe esperar a la finalización de su aplicación, con el fin de continuar con la implementación de
la ejecución asíncrona: un proceso al realizar una tarea, sin esperar a que otro proceso que está terminado, podemos seguir para llevar a cabo, cuando se devuelve un mensaje, el sistema notificará al último proceso, que puede mejorar la eficiencia

    Por ejemplo, la comunicación sincrónica es, cuando se envía un mensaje corto cuando la llamada comunicación asíncrona.

 El cinco, proceso

Pero todo el hardware, las necesidades del sistema operativo para tener que gestionar, siempre que el concepto de un sistema operativo, hay un proceso, es necesario tener una manera de crear un proceso, algunos sistemas operativos diseñados para una sola aplicación, como un horno de microondas controlador, una vez iniciado microondas, ya existen todos los procesos.

  En cuanto al sistema general (que se ejecuta muchas aplicaciones), es necesario tener la capacidad de crear o proceso de revocación durante el funcionamiento del sistema, sobre todo en el formulario se divide en 4 crear un nuevo proceso

  1. Sistema de inicialización (ver el proceso con ps comando linux, ventanas con el Administrador de tareas, procesos en primer plano responsable de la interacción con los usuarios, procesos que se ejecutan en segundo plano independientemente del usuario, ejecuta en segundo plano y sólo cuando sea necesario proceso de atención, llamada demonios, tales como el correo electrónico, páginas web, noticias, impresión)

  2. Un proceso abre un proceso hijo durante el funcionamiento (como nginx multi-proceso abierto, os.fork, subprocess.Popen, etc.)

  3. Las peticiones interactivas de usuario, y crear un nuevo proceso (tal como el usuario hace doble STORM)

  4. inicializar un trabajo por lotes (sólo las aplicaciones en un sistema de computadora central por lotes)

  De cualquier manera, crear un nuevo proceso es la implementación de un sistema para la creación de proceso es llamado por un proceso existente creado:

  1. En UNIX llamada al sistema es: tenedor, tenedor crea una copia exacta del proceso padre, ambos tienen el mismo mapa de memoria, el mismo entorno y la misma cadena para abrir el archivo (en el proceso intérprete shell, la ejecución un comando creará un proceso hijo)

  2. En las ventanas de la llamada al sistema es: CreateProcess, tanto en el proceso de creación del CreateProcess proceso, sino que también es responsable del programa correcto en el nuevo proceso.

  Acerca proceso hijo creado, UNIX y Windows

  1. Lo mismo es: se crea el proceso, los procesos padre e hijo tienen diferentes espacios de direcciones ( requisitos técnicos de múltiples canales para el nivel físico para lograr el aislamiento entre la memoria de proceso ), un proceso para modificar cualquiera de su espacio de direcciones no lo hará afectar a otro proceso.

  2. La diferencia es: en UNIX, el espacio de direcciones inicial del proceso hijo es una copia del proceso padre, lo que sugiere que: el niño y el proceso padre puede haber sólo lectura compartida área de memoria. Sin embargo, para el sistema de ventanas, desde el principio del espacio de direcciones de un proceso padre e hijo es diferente.

Terminar proceso de seis

  1. salida normal (voluntario, si el usuario hace clic cruces página interactiva, o llamar al procedimiento ha terminado para iniciar llamada normal sistema de salida, con la salida de Linux, en las ventanas utilizando ExitProcess)

    2. Error de salida (voluntaria, a.py pitón en a.py no existe)

  3. grave error (involuntario, para ejecutar una instrucción ilegal, tales como referencias a la memoria inexistente, 1/0, etc., se puede detectar la excepción, tratar ... excepto ...)

  4. mataron por otro proceso (involuntario, como kill -9)

proceso Jerarquía VII

Ya sea UNIX o ventanas, sólo un proceso padre, excepto que:

  1. En UNIX todos los procesos se basan en el proceso init es la raíz, la composición de la estructura de árbol. Padre y niño juntos forman un grupo de proceso, de modo que cuando se envía una señal desde el teclado, la señal se envía a todos los miembros del grupo asociado con el proceso actual del teclado.

  2. En las ventanas, no existe el concepto de jerarquía de procesos, todos los procesos son el mismo rango que la jerarquía proceso sólo implica similares, es cuando se crea, el proceso padre para obtener un token (especial llamado un mango ), el mango se puede utilizar para controlar al niño, pero el padre tiene el derecho a transmitir el identificador de la otra sub-proceso, por lo que ningún nivel de.

Estados de los ocho, proceso

 tail-f access.log | grep '404'

  La ejecución de la cola programa, abrir un proceso hijo, la implementación del programa grep, abrir otro proceso hijo, basado en la tubería entre dos procesos '|' comunicaciones, como resultado de la entrada de la cola grep.

  proceso Grep mientras espera para la entrada (es decir, I / O) que se conoce como bloqueo, entonces comando grep no se puede ejecutar

  De hecho, en ambos casos, que dará lugar a un proceso que no se ejecuta en la lógica,

  1. Suspender el proceso es su propias razones, el encuentro de E / S bloqueado, que quieren dejar la CPU para realizar otros procesos, por lo que asegúrese de que la CPU ha estado trabajando

  2. nada que ver con el proceso, el nivel del sistema operativo, ya que un proceso podría tomar demasiado tiempo, o por razones de prioridad, y llamar a otros procesos para utilizar la CPU.

  Por lo tanto un proceso de tres estados

 

Nueve, un proceso complicado por el fenómeno

Implementar procesos concurrentes que el hardware de interrupción de un proceso en ejecución, la preservación del estado de todos los procesos que se ejecutan en este momento, con este fin, el sistema operativo mantiene una tabla, que proceso de la tabla (tabla de procesos), cada proceso ocupa una tabla de procesos artículos (también referidos como el bloque de control de proceso de entrada)

 

antecedentes culturales

Como su nombre indica, un proceso de software que es proceso continuo. Proceso es una abstracción de un programa en ejecución.

El concepto se originó en el proceso del sistema operativo, es el concepto básico del sistema operativo, una de la abstracción más antigua y más importante es el sistema operativo. Todos los demás sistemas operativos son todos en torno al concepto del proceso de despliegue. Así que usted quiere entender realmente el proceso, primero hay que entender el sistema operativo. Ver su blog Haga clic para entrar .

La notificación de la base teórica:

# La función de un sistema operativo: 
    1: ocultar interfaz de hardware complejo de fea, proporcionando una buena interfaz abstracta 
    2: gestión, proceso de programación y procesos múltiples que compiten hardware a la orden 

# más que la tecnología de dos canales: 
    1. Generar fondo: para un solo núcleo, concurrencia 
    PS: 
    ahora anfitriones son generalmente de varios núcleos, cada núcleo utilizará la tecnología multi-canal, pero sin el uso de la tecnología multi-canal para cambiar entre el núcleo y el núcleo es decir, 
    hay cuatro CPU, corriendo cpu1 el programa encuentra un io bloqueado, io va a esperar hasta el final de la re-programación, que será enviado a cualquiera de los cuatro CPU en el algoritmo específico determinado por el programador del sistema operativo. 
    
    2. multiplexados en el tiempo (rebanada multiplexación en el tiempo de una CPU) + espacial multiplexado (por ejemplo varios canales simultáneamente memoria de programa)

En primer lugar, ¿cuál es el proceso de

Proceso: un proceso en curso, o una tarea. La misión es responsable de la CPU.

Por ejemplo :( + monocitos multi-canal, múltiples procesos para lograr concurrente):

 Por ejemplo, usted es un CPU, tiene mucho trabajo que hacer en la tarde, cena, lavandería, cuarto de baño y así sucesivamente. Pero es imprescindible que todo terminó en la tarde (y la CPU sólo puede hacer una cosa a la vez), entonces ¿cómo podemos hacer que la ejecución simultánea de múltiples tareas para lograr el efecto de la misma? Por lo tanto, usted debe hacer esto, primero puede cocinar, a la espera de que el arroz cocido se puede ir a lavar la ropa, lavar el arroz esté casi cocido, entonces se puede ir a una cosa inodoro.

En segundo lugar, la diferencia entre el proceso y los procedimientos

Programa es sólo un montón de código, sino más bien el proceso se refiere al proceso de ejecución del programa

Se destaca que: El mismo programa se utiliza dos veces, que es un proceso, tales como QQ de inicio de sesión, aunque son el mismo software, pero un chat de vídeo, se puede visitar un espacio.

En tercer lugar, la concurrencia y paralelismo

Concurrencia: CPU única, proceso más complicado

     De forma paralela o simultánea, los usuarios parecen 'mientras que' correr, si se trata de un proceso o hilo, solamente una sola tarea, el verdadero trabajo es la CPU, la CPU para hacer estas tareas, mientras que el mismo tiempo, sólo una CPU realizar una tarea

      A concurrencia: una pseudo-paralelo, que parecen ser ejecutar de forma simultánea. tecnología de CPU + sola multi-canal se puede lograr al mismo tiempo, (también un paralelo concurrente)

 1 usted es un CPU, también se ha hablado de las tres amigas, cada una de las cuales puede ser una tarea en el amor, que desea jugar es compartida por 2 efecto de un amor concurrente estas tres tareas, usted debe ser un go 3 1 para hablar con su novia película, un momento para decir: bueno, yo quiero a la diarrea, a continuación, fue a cenar con una segunda novia, comer uno podría decir: obtener al, I 4 ir al baño, luego se fue con su novia abrió una sala de 3 

Paralelas: multi-CPU (que se ejecuta al mismo tiempo, sólo se puede lograr con una pluralidad de cpu paralelo)

  La nucleación, la técnica de múltiples canales solo puede utilizarse, una pluralidad de núcleos, cada núcleo puede también utilizar la tecnología de multi-canal ( tecnología de multi-canal para términos mononucleares )

 Hay cuatro núcleos, seis tareas, por lo que al mismo tiempo hay cuatro tareas a realizar, suponiendo que cada uno está asignado a CPU1, CPU2, CPU3, CPU4,

   Una vez que la tarea 1 encuentro I / O se vio obligado a la ejecución de interrupción, entonces la tarea se obtenga un 5 cpu1 tiempo rebanada de ejecutar, que es la tecnología de varios canales de un solo Nucleación

   Una vez que la tarea 1 de E / S ha terminado, el sistema operativo recordará que ( programación Conocer el proceso, que se asigna para ejecutar la CPU, la última palabra por el sistema operativo ), se puede asignar a cualquiera de los cuatro CPU de una sola vez ejecución

  Todos los ordenadores modernos suelen hacer muchas cosas al mismo tiempo, la PC de un usuario (ya sea sola o CPU multi-CPU), puede ejecutar varias tareas (una tarea puede ser entendida como un proceso).

 

La tecnología multi-canal: multi-canal almacenado en la memoria al mismo tiempo (s) Programas, cpu cambiar rápidamente de un proceso a otro, de modo que cada proceso se ejecuta cada uno de decenas o cientos de milisegundos, por lo que, aunque en un instante, una CPU sólo se puede realizar una tarea, pero dentro de 1 segundo, la CPU, pero puede ejecutar varios procesos, lo que da la ilusión produjo un paralelo, que pseudo-concurrente, con el fin de distinguir el hardware verdadero multi-procesador de sistemas en paralelo operando (múltiple cpu comparten la misma memoria física)

En cuarto lugar, síncrona y asíncrona

ejecución síncrona: un proceso al realizar una tarea, otro proceso debe esperar a la finalización de su aplicación, con el fin de continuar con la implementación de
la ejecución asíncrona: un proceso al realizar una tarea, sin esperar a que otro proceso que está terminado, podemos seguir para llevar a cabo, cuando se devuelve un mensaje, el sistema notificará al último proceso, que puede mejorar la eficiencia

    Por ejemplo, la comunicación sincrónica es, cuando se envía un mensaje corto cuando la llamada comunicación asíncrona.

 El cinco, proceso

Pero todo el hardware, las necesidades del sistema operativo para tener que gestionar, siempre que el concepto de un sistema operativo, hay un proceso, es necesario tener una manera de crear un proceso, algunos sistemas operativos diseñados para una sola aplicación, como un horno de microondas controlador, una vez iniciado microondas, ya existen todos los procesos.

  En cuanto al sistema general (que se ejecuta muchas aplicaciones), es necesario tener la capacidad de crear o proceso de revocación durante el funcionamiento del sistema, sobre todo en el formulario se divide en 4 crear un nuevo proceso

  1. Sistema de inicialización (ver el proceso con ps comando linux, ventanas con el Administrador de tareas, procesos en primer plano responsable de la interacción con los usuarios, procesos que se ejecutan en segundo plano independientemente del usuario, ejecuta en segundo plano y sólo cuando sea necesario proceso de atención, llamada demonios, tales como el correo electrónico, páginas web, noticias, impresión)

  2. Un proceso abre un proceso hijo durante el funcionamiento (como nginx multi-proceso abierto, os.fork, subprocess.Popen, etc.)

  3. Las peticiones interactivas de usuario, y crear un nuevo proceso (tal como el usuario hace doble STORM)

  4. inicializar un trabajo por lotes (sólo las aplicaciones en un sistema de computadora central por lotes)

  De cualquier manera, crear un nuevo proceso es la implementación de un sistema para la creación de proceso es llamado por un proceso existente creado:

  1. En UNIX llamada al sistema es: tenedor, tenedor crea una copia exacta del proceso padre, ambos tienen el mismo mapa de memoria, el mismo entorno y la misma cadena para abrir el archivo (en el proceso intérprete shell, la ejecución un comando creará un proceso hijo)

  2. En las ventanas de la llamada al sistema es: CreateProcess, tanto en el proceso de creación del CreateProcess proceso, sino que también es responsable del programa correcto en el nuevo proceso.

  Acerca proceso hijo creado, UNIX y Windows

  1. Lo mismo es: se crea el proceso, los procesos padre e hijo tienen diferentes espacios de direcciones ( requisitos técnicos de múltiples canales para el nivel físico para lograr el aislamiento entre la memoria de proceso ), un proceso para modificar cualquiera de su espacio de direcciones no lo hará afectar a otro proceso.

  2. La diferencia es: en UNIX, el espacio de direcciones inicial del proceso hijo es una copia del proceso padre, lo que sugiere que: el niño y el proceso padre puede haber sólo lectura compartida área de memoria. Sin embargo, para el sistema de ventanas, desde el principio del espacio de direcciones de un proceso padre e hijo es diferente.

Terminar proceso de seis

  1. salida normal (voluntario, si el usuario hace clic cruces página interactiva, o llamar al procedimiento ha terminado para iniciar llamada normal sistema de salida, con la salida de Linux, en las ventanas utilizando ExitProcess)

    2. Error de salida (voluntaria, a.py pitón en a.py no existe)

  3. grave error (involuntario, para ejecutar una instrucción ilegal, tales como referencias a la memoria inexistente, 1/0, etc., se puede detectar la excepción, tratar ... excepto ...)

  4. mataron por otro proceso (involuntario, como kill -9)

proceso Jerarquía VII

Ya sea UNIX o ventanas, sólo un proceso padre, excepto que:

  1. En UNIX todos los procesos se basan en el proceso init es la raíz, la composición de la estructura de árbol. Padre y niño juntos forman un grupo de proceso, de modo que cuando se envía una señal desde el teclado, la señal se envía a todos los miembros del grupo asociado con el proceso actual del teclado.

  2. En las ventanas, no existe el concepto de jerarquía de procesos, todos los procesos son el mismo rango que la jerarquía proceso sólo implica similares, es cuando se crea, el proceso padre para obtener un token (especial llamado un mango ), el mango se puede utilizar para controlar al niño, pero el padre tiene el derecho a transmitir el identificador de la otra sub-proceso, por lo que ningún nivel de.

Estados de los ocho, proceso

 tail-f access.log | grep '404'

  La ejecución de la cola programa, abrir un proceso hijo, la implementación del programa grep, abrir otro proceso hijo, basado en la tubería entre dos procesos '|' comunicaciones, como resultado de la entrada de la cola grep.

  proceso Grep mientras espera para la entrada (es decir, I / O) que se conoce como bloqueo, entonces comando grep no se puede ejecutar

  De hecho, en ambos casos, que dará lugar a un proceso que no se ejecuta en la lógica,

  1. Suspender el proceso es su propias razones, el encuentro de E / S bloqueado, que quieren dejar la CPU para realizar otros procesos, por lo que asegúrese de que la CPU ha estado trabajando

  2. nada que ver con el proceso, el nivel del sistema operativo, ya que un proceso podría tomar demasiado tiempo, o por razones de prioridad, y llamar a otros procesos para utilizar la CPU.

  Por lo tanto un proceso de tres estados

 

Nueve, un proceso complicado por el fenómeno

Implementar procesos concurrentes que el hardware de interrupción de un proceso en ejecución, la preservación del estado de todos los procesos que se ejecutan en este momento, con este fin, el sistema operativo mantiene una tabla, que proceso de la tabla (tabla de procesos), cada proceso ocupa una tabla de procesos artículos (también referidos como el bloque de control de proceso de entrada)

 

Supongo que te gusta

Origin www.cnblogs.com/shangping/p/12534416.html
Recomendado
Clasificación