4 things to check in a Vista system (for starters)
1) Check the Reliability Monitor - to do this, go to Start and type in "perfmon.msc" (without the quotes) and press Enter. Then, in the left hand pane, click on Reliability Monitor. Look for errors that have been occurring on a frequent basis.
2) Check the Performance Monitor report - to do this, go to Start and type in "perfmon /report" (without the quotes) and press Enter. Then, let us know any errors that it finds.
3) Check the Event Viewer - to do this, go to Start and type in "eventvwr.msc" (without the quotes) and press Enter. Click on the + sign by Windows Logs in the left hand pane to expand that entry. Then click on the System category and view the errors there - look for errors that occur regularly when the computer is booting up. Then do the same thing for the Application category.
4) Check the Task Manager...Processes tab - to do this, right click on the Task Bar at the bottom of your screen and select "Task Manager" (or, press Ctrl-Alt-Del and select Task Manager when the screen pops up). Then click on the Processes tab. Once in the Processes tab, select the View menu, and select "View columns". In the View columns dialog, scroll down to IO Reads (not IO Read Bytes) and put a check mark next to it. Then click OK to exit the dialog. Expand the Task Manager window to see what's taking the most CPU, Memory, and IO Reads. (this won't be the same as your startup - but we'll get to that after seeing what we can see here).