Sebuah sistem operasi multiprogramming adalah salah satu yang memungkinkan pengguna akhir untuk menjalankan lebih dari satu program pada suatu waktu. Pengembangan sistem seperti itu, tipe pertama yang memungkinkan fungsi ini, merupakan langkah besar dalam pengembangan komputer canggih. Teknologi ini bekerja dengan memungkinkan unit pemrosesan pusat ( CPU ) komputer untuk beralih di antara dua atau lebih tugas yang sedang berjalan saat CPU dalam keadaan idle.

Sistem operasi multiprogramming memungkinkan CPU komputer untuk beralih di antara dua atau lebih tugas yang sedang berjalan saat CPU dalam keadaan idle.

Komputer awal sebagian besar didedikasikan untuk menjalankan satu program — atau, lebih tepatnya, satu tugas yang diprakarsai oleh suatu program — pada suatu waktu. Memahami konsep tugas adalah kunci untuk memahami bagaimana fungsi sistem operasi multiprogramming. Sebuah “tugas” adalah urutan kecil dari perintah yang, bila digabungkan, terdiri dari eksekusi program yang sedang berjalan. Misalnya, jika programnya adalah kalkulator, salah satu tugas program adalah merekam angka yang dimasukkan oleh pengguna akhir.

Sistem operasi multiprogramming bertindak dengan menganalisis aktivitas CPU saat ini di komputer. Saat CPU dalam keadaan diam — saat berada di antara tugas — ia memiliki kesempatan untuk menggunakan waktu henti itu untuk menjalankan tugas untuk program lain. Dengan cara ini, fungsi beberapa program dapat dijalankan secara berurutan. Misalnya, ketika CPU sedang menunggu pengguna akhir untuk memasukkan angka yang akan dihitung, alih-alih sepenuhnya menganggur, CPU mungkin menjalankan memuat komponen halaman web yang diakses pengguna.

Manfaat utama dari fungsi ini adalah dapat mengurangi waktu yang terbuang dalam operasi sistem. Seperti dalam bisnis, efisiensi adalah kunci untuk menghasilkan keuntungan paling banyak dari suatu perusahaan. Menggunakan sistem operasi jenis ini menghilangkan pemborosan dalam sistem dengan memastikan bahwa CPU komputer berjalan pada kapasitas maksimum lebih sering. Ini menghasilkan pengalaman komputasi yang lebih lancar dari sudut pandang pengguna akhir, karena perintah program terus-menerus dieksekusi di latar belakang setiap saat, membantu mempercepat eksekusi program.

Sistem operasi multiprogramming sebagian besar telah digantikan oleh generasi baru sistem operasi yang dikenal sebagai sistem operasi multitasking. Dalam sistem operasi multitasking , sistem tidak harus menunggu penyelesaian tugas sebelum pindah untuk bekerja pada program yang aktif. Sebaliknya, ia dapat menginterupsi program yang sedang berjalan kapan saja untuk mengalihkan sumber daya CPU-nya ke program aktif yang berbeda. Ini memberikan pendekatan yang lebih dinamis untuk menangani program bersamaan.