Difference between multiprogramming and multitasking

Definition of multiprogramming The process of sharing CPU time with multiple programs or jobs is called multiprogramming. Multiprogramming is based on content switching. In context switching, one job run until I/O interrupt occurs. When I/O interrupt occurs then CPU switch to another job. There may also occur other types of interrupts like event interrupt, memory interrupt, hardware interrupt etc. Interrupts are just like alert actions that notify CPU [...]