İlk olarak preemptive scheduling denilen kavram java ile alakalı değilmiş. Ben başlarda java sanıyordum.
Bir bir uygulama içinde veya işletim sisteminde process/thread çalışırken daha yüksek öncelikli bir işlem gelmesi durumunda çalışan şeyin durdurulup kenara park edilip öncelikli olan işin bitirilme işlemine deniyormuş. Ama o işin çok uzun sürmesi durumunda diğerleri kenarda açlıktan ölebilir (starvation)
Timeslicing ise her işlemcinin her bir iş için bir birim zaman çalışacağı varsayımına dayanarak yapılacak işlemler listesinden sıradaki işi alıp, belirlenen süre boyunca o işi yapması ve süre bitince onu tekrar kuyruğa atıp sonraki işleme geçmesine deniyormuş.
Kafamda deli sorular :) Bilen cevaplayabilirse sevinirim. Hep aynı uzunlukta bir zaman dilimi kullanıp sonra onu kuyruğa attığımızda bu işlemin önceliğini düşürmezsek yine preemptive yapmış oluyor muyuz? Bence oluruz. O zaman herhalde her işlemde önceliklendirmeyi de değiştirmek gerekebilir.