I don't think VxWorks (or any of the other listed OS in the link) is a good choise. It's designed for more complex CPU applications and is probably an overkill for uC...
you need to start with a requirements specification - you then select a suitable combination of microcontroller/software to satisfy the requirements
it is probably a good idea is to double the requiements as the end user has usually forgotten or not thought about many of the details that require extra IO, memoty, power, etc that appear as you implement a prototype
Hard RTOS depends on your controller. because controller is only have to work after all. if controller is 16-bit and higher can work better.
i think FreeRTOS is good option.