views:

1205

answers:

2

In the vxWorks RTOS, there is a shell that allows you to issue command to your embedded system.
The documentation refers to kernel shell, host shell and target shell. What is the difference between the three?

+2  A: 

The target shell and kernel shell are the same. They refer to a shell that runs on the target. You can connect to the shell using either a serial port, or a telnet session. A task runs on the target and parses all the commands received and acts on them, outputting data back to the port.

The host shell is a process that runs on the development station. It communicates with the debug agent on the target. All the commands are actually parsed on the host and only simplified requests are sent to the target agent:

  • Read/Write Memory
  • Set/Remove Breakpoints
  • Create/Delete/Suspend/Resume Tasks
  • Invoke a function

This results in less real-time impact to the target.

Both shells allow the user to perform low level debugging (dissassembly, breakpoints, etc..) and invoke functions on the target.

Benoit
A: 

There are some differences between host shell and target shell, you can use h command to get the actual commands the two shell support.

The host shell support more command line edit functions like auto complement and symbol lookup etc.

zhongshu