A Virtual Private Server allows you to have a dedicated-like server all to your own (in the best case scenario). The hardware is shared but your entire filesystem is isolated from all other VPSs. So you have your own gcc, passwd file, etc.
A really nice advantage to VPSs is the ability to provide virtual hosting. This allows you to host/resell "unlimited" domains with your own Apache web server configuration.
You can not run a VPS within a VPS. When reselling VPSs each is seperate with its own capabilities. All from a web-based interface for management.