İşletim sistemi, yalnızca bilgisayarın içindeki belleği ve işlemleri yönetmekle kalmayıp aynı zamanda kullanıcıların uygulama yazılımını çalıştırmasına izin veren en önemli yazılım ve bilgisayarın kalbidir. Sistemin donanımını soyutlayan ve kullanıcılara eksiksiz bir sanal makine sunan kolektif bir program setidir. İşletim sistemi, dosyaları veya dizinleri izleme, çevresel aygıtları kontrol etme, görüntü ekranına çıkış gönderme gibi temel görevlerin yanı sıra, aynı anda çalışan programların birbirleriyle etkileşime girmemesini sağlamak için çoklu programlama ve çoklu görev gibi daha yüksek amaçlara da hizmet eder. Modern işletim sistemleri sadece paralel işlemeyi kolaylaştırmakla kalmaz, aynı zamanda sadece çok programlı bir kavram olan zaman paylaşımını da kolaylaştırır. Çoklu görev, yalnızca farklı bir bağlamda kullanılan temel bir çoklu programlama şeklidir.
Çoklu programlama, tek bir CPU kullanarak aynı anda birden fazla kullanıcının bilgisayarı kullanabilmesidir. Buradaki fikir, her bir işlemin farklı kullanıcılara ait olduğu birden fazla çalıştırılmaya hazır işlem oluşturmak için işlemciyi etkin bir şekilde kullanmaktır. Geçerli işlem bir nedenden dolayı durursa, belirli bir olayı beklemesi gerektiğinden, işletim sistemi CPU'yu kuyruktaki başka bir işleme ayırır. Tüm işlem, CPU kullanımını en üst düzeye çıkarmak için CPU'nun boşta kalma süresini azaltmak için çoklu programlama işletim sistemleri ile kolaylaştırılır. Fikir CPU'yu olabildiğince uzun süre meşgul tutmak.
Çoklu görev, aynı bilgisayarda birden çok işlemciyi kullanan bir kullanıcı tarafından birden çok işlemin eşzamanlı yürütülmesi anlamına gelir. Örneğin, çok görevli bir işletim sisteminde, başka bir programla aynı anda müzik dinlerken bir programla birlikte bir kelime belgesi üzerinde çalışabilirsiniz. Çoklu görev, bir hesaplamadaki programlar yüksek derecede paralellik gerektirdiğinde etkilidir. Zaman paylaşımı kavramına dayanır, çünkü birden fazla işlem veya görev düzenli bir zaman aralığında buna göre değiştirilebilir, böylece kullanıcılar eşzamanlı olarak gerçekleştirildikleri fikrini alırlar..
Çoklu programlama terimi, paralel işlemenin temel bir biçimidir, yani birden çok işlem aynı anda tek bir işlemci üzerinde aynı anda çalışır. Bu terim, tek bir işlemci üzerinde birden fazla program veya işlem çalıştığında modern işletim sistemlerinde kullanılır ve tüm süreçleri etkili ve verimli bir şekilde yönetmek OS'nin görevidir. Çoklu görev, işletim sisteminin birden fazla CPU kullanarak aynı anda birden fazla görevi yürütme yeteneğini ifade eder. Temel olarak, CPU ve bellek dahil ortak kaynakları paylaşan görevlerin tahsisi için tek bir sistemde iki veya daha fazla CPU kullanır.
Çoklu programlama, CPU'nun tek bir CPU kullanarak bir iplik işleminden diğerine geçişini kolaylaştıran standart bir prosedür olan bağlam değiştirme kavramına dayanmaktadır. İşlemin aynı durumdan devam etmesi için CPU için etkin bir işlemin durumunu İşlem Kontrol Bloğunda (PCB) saklar. Diğer yandan, çoklu görev, her kullanıcıya zaman paylaşımlı sistemin bir kısmını sağlamak için kullanılan ve aynı kaynakları aynı anda paylaşmalarını sağlayan bir teknik olan zaman paylaşımı kavramına dayanır. Çok programlamanın mantıklı bir uzantısı.
Her iki terim de neredeyse aynı anlama sahiptir ve modern işletim sistemlerinde kullanılan, ancak farklı hedefleri olan ortak terimlerdir. Çoklu programlama kavramı, yalnızca bilgisayarın boşta kalma süresini azaltmak için programları veya talimatları daha uzun süre saklama yeteneğine dayanır. İşlem tahsisi programlama algoritması ile yapılır. İşletim sistemi bir seferde bir programın bir bölümünü yürütür, ardından başka bir programın bir bölümünü izler. Çok görevli bir işletim sisteminde, CPU zaman paylaşımı yoluyla birden çok işlemin aynı anda çalışmasına izin verir ve bunları buna göre yürütür.
Çok programlı işletim sisteminde, birden fazla kullanıcı aynı CPU'yu paylaştığı için kullanıcılar arasında tam şeffaflık sağlamaktır, bu da CPU kullanımını geliştirmek için bir kullanıcıdan diğerine hızla geçer. Kullanıcıların sistemle etkileşimi olmadan kaynakların verimli ve etkili bir şekilde tahsis edilmesini sağlar. İşletim sistemi, bir programın ve ardından başka bir programın bir kısmını yürütür, ancak tüm programlar aynı anda yürütülür. Çoklu görev işletim sisteminde, kullanıcılar program veya süreçlerle değiştirilir ve her işlem CPU zamanının adil bir dilimini alır. İşlem o kadar hızlı gerçekleşiyor ki, birden fazla görev aynı anda yürütülüyor.
Özetle, her iki terim de modern işletim sistemlerini temsil etmek için birbirleriyle birlikte kullanılır, ancak farklı hedefler ve işlevsellik ile kullanılır. Çok programlı bir işletim sistemi, tek bir CPU kullanarak birden fazla programın aynı anda çalışmasına izin verirken, çok görevli bir işletim sistemi, birden fazla CPU kullanılarak aynı anda birden çok işlem veya görevin yürütülmesine izin verir. Çoklu programlama, CPU'nun boşta kalmasına izin vermeyen ve böylece CPU kullanımını en üst düzeye çıkaran bağlam değiştirmeye dayanırken, çoklu görev, maksimum CPU performansı için düzenli aralıklarla önceliğe göre değiştirilebildiğinden, çoklu görev zaman paylaşımına dayanır..