¿En qué se diferencian el “shell del kernel” y el “shell del host” de vxWorks?
Pregunta
En vxWorks RTOS, hay un shell que le permite emitir comandos a su sistema integrado.
La documentación se refiere al shell del kernel, el shell del host y el shell de destino.¿Cuál es la diferencia entre los tres?
Solución
El shell de destino y el shell del kernel son los mismos.Se refieren a un caparazón que se ejecuta sobre el objetivo.Puede conectarse al shell mediante un puerto serie o una sesión de telnet.Una tarea se ejecuta en el objetivo y analiza todos los comandos recibidos y actúa sobre ellos, enviando datos al puerto.
El shell del host es un proceso que se ejecuta en la estación de desarrollo.Se comunica con el agente de depuración en el objetivo.En realidad, todos los comandos se analizan en el host y solo se envían solicitudes simplificadas al agente de destino:
- Memoria de lectura/escritura
- Establecer/eliminar puntos de interrupción
- Crear/Eliminar/Suspender/Reanudar Tareas
- Invocar una función
Esto da como resultado un menor impacto en tiempo real en el objetivo.
Ambos shells permiten al usuario realizar depuración de bajo nivel (desmontaje, puntos de interrupción, etc.) e invocar funciones en el objetivo.
Otros consejos
Existen algunas diferencias entre el shell del host y el shell de destino; puede usar el comando h para obtener los comandos reales que admiten los dos shell.
El shell del host admite más funciones de edición de línea de comando, como complemento automático y búsqueda de símbolos, etc.