The service is just NT's mechanism for allocating the memory space in the OS for the Oracle.exe to run in. NT runs all threads in the same service (UNIX runs each process in a separate OS process)

You can shut down the instance with a 'shutdown' in svrmgrl, which leaves the service running. I personally prefer to do this if I want to get a clean shutdown, UNLESS you have the services set up right. There is a way to create another service that runs a script and starts/stops the instance and the service. (so you'd have two services per instance, one to start/stop and another to run Oracle) If it's 8.1.5 or better, it should handle this for you, and I *believe* 2000 only needs the one service. (not sure on this)

If you're getting crash recovery messages in your alert log, then your service is NOT handling the clean shutdown of the instance--the OS is pulling the rug out from under the Oracle process. So it's doing an instance recovery every time it comes back up. It only matters if it is not for personal use and you're taking cold backups or care about those log messages.