Il sistema operativo deve:

  • permettere l’esecuzione alternata dei processi (interleaving)
  • assegnare le risorse ai processi e proteggere gli altri processi
  • permettere ai processi di scambiarsi informazioni
  • permettere la sincronizzazione tra i processi