Principles of supernova-driven winds