6.1, la idea general del programa Linux
El proceso init es el primer proceso iniciado por el kernel de Linux, es el iniciador de todos los procesos posteriores. El proceso inicial de este sistema es un enlace al proceso rc, por lo que el proceso rc es el proceso principal, que es el programa que se ejecuta primero en el kernel. Inicialmente, otros procesos secundarios se inician en el programa principal del proceso. Suspender la señal de espera del proceso.
El proceso secundario hace algo para procesar o iniciar o cerrar otros procesos secundarios al señalar el proceso principal, el proceso principal recibe la señal. Además, algunos procesos se comunican a través de zócalos.
Para algunos procesos, el programa se ejecuta una vez y se cierra. Algunos procesos son programas que se ejecutan de forma continua.
6.1, programa rc
La secuencia principal se llama rc, init, ip-up, ip-down, dtu-dns, start_watchdog, start-lan, stop-lan, start_timer, etc. Los procesos son conexiones a rc. Cuando se ejecutan estos procesos, el proceso de rc determina qué controladores se ejecutarán según los parámetros del proceso.
Si ejecuta el indicador de inicio, ingresará al ciclo principal de RC.
6.3, entorno de ejecución de inicialización
El bucle principal incluye las siguientes partes de la inicialización:
1, inicialización del sistema
monta el directorio relacionado con el sistema
Generación de todos los nodos de dispositivos
Montaje de directorios relacionados con la partición flash
Creación de enlaces a archivos de parámetros
Creación de directorios relacionados
Inicialización de parámetros del dispositivo
Inicialización de la consola
Kernel Module Load
Configuración de zona horaria, hora del sistema y sincronización de hardware
Inicio de vigilancia de hardware incorporado
Inicio de vigilancia de hardware externo
2, inicialización de GPIO
Apague el indicador correspondiente, encienda la alimentación del módulo, desactive la alimentación de la placa secundaria
apague el GPIO no utilizado
Encender la alimentación de la placa secundaria
Inicializar cada módulo
3. Encender la LAN
4. Inicializar la señal
Inicializar la señal
Señal de registro
5, Inicialización del archivo de configuración
Archivo de configuración relacionado con la marcación PPP
Parámetros de la DTU Archivo de configuración
Archivo de configuración de parámetros del controlador de red
Teléfono o archivo de configuración de activación de SMS
Archivo de configuración de detección de ICMP
Archivo de configuración de detección de DNS
Archivo de configuración de parámetros DDNS
Archivo de configuración de parámetros del canal de mantenimiento
6.4, ejecutando varios procesos
1. Abra el servidor local TCP
Figura:
Figura 6.2 Diagrama de flujo del proceso del servidor local
2, abra varios servicios
Servidor Httpd abierto
Conexión de cliente DTU abierta < Br>
El servicio Dhcpd está activado
El servicio Telnet está activado
La supervisión del número de procesos duplicados está activada
Las estadísticas de tráfico están activadas
6.5, asegurándose de que el proceso PPPD es correcto Ejecutar
1. Antes de ejecutar pppd, primero determine si la interfaz del módulo se puede abrir normalmente. Si la excepción está activada, reinicie el sistema.
2. Después de ejecutar pppd, determine si generar /tmp /ppp /link. file cada 1 segundo y vuelva a marcar si no se genera dentro del período de tiempo de espera.
3, antes de volver a ejecutar pppd para restablecer el módulo, desconecte la conexión pppd para evitar que la última ejecución pppd no se cerrara.
4, pppd dial-up abre con éxito la función de prueba de red, para evitar que el propio pppd no pueda detectar la caída.
6.6, ejecutar para procesar el bucle
Después de que se inicializa el programa principal, el servicio relacionado comienza a ingresar al procesamiento del bucle principal, el bucle principal comienza a marcar la línea y luego del procesamiento en línea, y finalmente está inactivo Espera una señal de evento. El bucle principal controla principalmente si hay una anomalía en el PPPD y en la WAN. Si se encuentra una anomalía, se realiza el procesamiento correspondiente. El flujo de procesamiento es el que se muestra en la siguiente figura: Como puede ver en el diagrama de flujo, el bucle principal es una máquina de estados. Cuando un proceso envía una señal, la función de procesamiento de la señal cambia el valor del estado, el bucle principal salta del estado IDLE, al estado REINICIAR o PARAR, vuelve a hacer un bucle y finalmente se estabiliza al estado inactivo. Es común ejecutar el proceso de ip-down cuando el PPPD se desconecta. El proceso envía una señal al proceso principal y el proceso principal pasa al estado REINICIAR. El programa principal vuelve a ejecutar el proceso de marcación.
6.7. Uso de señales
Las señales son eventos generados por los sistemas UNIX y Linux en respuesta a ciertas condiciones. El proceso que recibe la señal toma alguna medida en consecuencia. Normalmente la señal es generada por un error. Pero también pueden enviarse explícitamente de un proceso a otro como una forma de comunicar o modificar el comportamiento entre procesos. La generación de una señal se llama generación, y una señal se recibe llamada captura.
Debe incluir el archivo de encabezado: #include < signal.h >
El uso de la señal incluye los siguientes pasos:
1. Registre una señal.
Por ejemplo: señal (SIGHUP, rc_signal);
2. Función de procesamiento de señal.
static void rc_signal (int sig)
{
… …
if (sig == SIGHUP) {
Syslog (6, señalización RESTART \\ n ");
signaled = RESTART;
}
… …
}
3. Enviar señal
Señale el proceso principal: kill (1, SIGHUP);
Keepalived es una solución de alta disponibilidad para servicios WEB basada en el protocolo
Algunos usuarios que utilizan sistemas Linux a menudo se encuentran con una situación en la
Primero, la arquitectura de hardware del sistema de interrupción: arm cortex-A9, el controlador de
Cómo Linux extiende el sistema de archivos XFS. Hay espacio extra en el disco, por lo que qu
Rol del directorio principal del sistema Linux
Linux resuelve la eliminación de archivos pero la disponibilidad del disco no ha cambiado
copiar y pegar teclas de acceso directo Linux
Oleoducto y redirección de Linux
Las habilidades del administrador del sistema Linux
Comandos de compresión y descompresión en Linux small note
Instrucciones básicas para su uso en Linux y configuración de makefile
Centro multimedia Win7 que no conoces
Cómo borrar la ubicación común en el Explorador de archivos en el sistema Win8
Plataforma de aplicaciones de Windows Phone 190,000 Aplicaciones
El sistema Win10 solicita el método de prohibición de mensaje de actualización de Windows
Optimizar el sistema NTFS de Windows XP (1)
Win7 sistema de solicitud de solicitud de tiempo de espera de cómo hacerlo?
Resuelva rápidamente el problema de que no se pueden arrastrar los íconos de escritorio de Windows 8