Process (İşlem) Nedir?

Process yani İşlem, bilgisayar da çalışan bir programdır diyebiliriz. RAM de yaşıyor olması şarttır. CPU da çalışmaya da bilir.  Peki process’in yapısı nasıldır? Şimdi bunun üzerinde duralım.

Process Yapısı

  • Text : Program kodlarıdır.
  • Program Counter : O an ki yapılan işlemin tutulduğu indextir.
  • Stack : Geçici verinin tutulduğu yerdir.
  • Data Section : Global değişkenler bu kapsama girer.
  • Heap : Çalışma zamanında dinamik olarak hafızaya erişim yapılabilen alandır.  Dinamik bellek diyebiliriz.

Process State

  • new : Process’in oluşturulduğu durumdur.
  • running : Process’in çalıştığı durumdur.
  • waiting : Process’in bazı meydana gelen olaylardan ötürü beklediği durumdur.
  • ready : Processin işlemciye aktarılmak üzere beklediği durumdur.
  • terminated : Process’in başarıyla işlenip sona erdiği durumdur.
Process State

 

 

 

 

 

 

 

 

Üstteki resimden de inceleyebilirsiniz.

Process Control Block (PCB) Nedir?

Herhangi bir process ile ilişkilendirilen bilgilerin yer aldığı kısım olarak açıklayabiliriz.

  • Process State : Running, waiting, ready, terminated, new durumları
  • Process Number : Şu an ki hangi process de çalıştığını gösterir
  • Program Counter : Sonraki işlenecek olan satırı tutar
  • Registers : Process ile ilgili tutulan bilgilerdir. (CPU’da)
  • Memory Limits : Kullanılacak bellek miktarı, sınır diyebiliriz
  • List of open files : Kullanılan dosyaların listesi. Kimlerin eriştiği tutulur.

 

 

 

 

 

 

 

 

Process Scheduling

İşlemiciyi maksimum düzeyde kullanma işlemine diyebiliriz. İşlemlerin hızlı bir şekilde CPU’da yer değiştirmesi olayıdır.

Bu olayı anlayabilmek için aşağıdaki terimleri öğrenmemiz gerekiyor.

  • Job queue : Sistem içindeki tüm işlemler
  • Ready queque : Hazırda bekleyen işlemler
  • Device queque : Giriş çıkış cihazlarını bekleyen işlemler olarak açıklayabiliriz.
  • İşlemler(Process) kuyruklar arasındaki geçişleri kullanırlar.

İkiye ayrılır.

  • Short-term Scheduler : (CPU) : Anlık işlemler olarak açıklayabiliriz. Direk olarak CPU ile ilişkilidir. Kısa zamanlıdır. Aynı anda yüzlerce işlem çalıştırılabilir. Küçük küçük alanlar kaplamaktadır her işlem.
  • Long-term Scheduler : (Job) : Uzun süreli yapılan işlemlerdir. Görev olarak da düşünülebilir. CPU ile ilişkidir. Örneğin oldukça sistemi kullanan bir oyun oynadığımızı varsayın.
  • Medium-term Scheduler : Swapping işlemlerinin yapıldığı, diskin bir bölümünün RAM olarak kullanıldığı yapılardır.

Evet… Umarım bu yapıyı anlamışsınızdır. Çünkü işletim sisteminin en önemli kavramlarından biridir. Bu konuyu anlamanız önemli. Bir sonraki konuda threadleri de göreceğiz. Thread olması için process şarttır fakat her process de thread olmayabilir. Process kolsa, thread parmaklardır. Aklınızda bu şekilde tutabilirsiniz.

 

Hakkında Ali Demirci

Ben Ali Demirci... 1991 Ankara doğumluyum. Ankara da yaşıyorum. Fırsat buldukça öğrendiklerimi burada paylaşıyorum. Java ile haşır neşirim. Android'den asla vazgeçemem. Öğrenmeye bayılırım. Yeni şeyler öğrendiğimde, geçmişteki projelerimde keşke böyle yapsaydım diye çok üzülmüşümdür. O yüzden öğrenmekten korkmayın. Takıldığınız yerleri mutlaka sorun. Biliyorsam yanıt veririm. Bilmiyorsam yol gösteririm. Teşekkürler :)

Kontrol Et

Java’da Seçilen Klasörün İçindeki Dosyaları Recursive Olarak Listeleme

Merhaba arkadaşlar, Bugün ki dersimizde java programlama dili ile seçilen klasörün içindeki tüm dosyaları(klasör hariç) …

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.