title: Simulator or Emulator? What is the difference?
body: <p>While I understand what simulation and emulation mean in general, I almost always get confused about them. Assume that I create a piece of software that mimics existing hardware/software, what should I call it? A simulator or an emulator?</p>
  
  <p>Could anyone explain the difference in terms of programming?</p>
  
  <p>Bonus: What is the difference in English between these two terms? (Sorry, I am not a native speaker :))</p>