Multiprogramming (Multitasking)
Multiprogramming adalah manajemen banyak proses pada satu pemroses. Multiprocessingtelah digunakan untuk suatu konsep, yaitu komputer dengan banyak pemroses di satu sistem komputer dengan masing-masing pemroses melakukan pemrosesan secara independen.
Saat ini, kebanyakan komputer pribadi, workstationadalah sistem pemroses tunggal yang menjalankan sistem operasi multiprogramming (multitasking) seperti MS-Windows3.0, MS-Windows NT, OS/2 dan Macintosh System 7. Banyak proses dijalankan bersamaan, masing-masing proses mendapat bagian memori dan kendali tersendiri. Sistem operasi mengalih-alihkan pemroses di antara proses-proses tersebut.
Program-program yang dijalankan sebenarnya bersifat:
1. Saling tak bergantung (independen).
Proses terpisah satu dari lainnya dan tidak saling berpengaruh.
2. Satu program pada satu saat (one program at any instant).
Pada satu waktu sesungguhnya hanya satu proses yang dilayani pemroses menggunakan interleave bukan overlap di antara program-program. Dilakukan interleave (saling melanjutkan/bersambung). Dalam pandangan pemakai, proses-proses seolah beroperasi secara bersamaan karena pengalihan proses-proses dilakukan secara cepat. Pemroses (level pemrosesan) mengeksekusi satu proses tiap saat dan secara cepat beralih ke proses-proses lain secara bergiliran. Karena pengalihan dilakukan dengan cepat, maka tidak disadari pemakai sehingga menimbulkan efek paralel semu (pseudoparallelism). (Hariyanto.B,1999).