title: MultiProgramming , multi-threading, and parallel processing?
body: <p>I was wondering if there are any slight difference between the definitions of :</p>
  
  <ul>
  <li>multiprogramming  </li>
  <li>Multithreading </li>
  <li>Parallel processing</li>
  </ul>
  
  <p>As I understand that we are using multithreading to achieve multiprogramming . Should the parallel processing the same as multiprogramming ,or it's related to hardware ?</p>
  
  <p>Thanks</p>