Merhaba. Bugün process nedir ? sorusuna elimden geldiğince cevap vermeye çalışacağım.

Process’i en kaba tabirle ifade etmek istersek CPU’da çalışan en küçük iş parçacığı diyebiliriz aslında. Ama bu tanım biraz güçsüz kalıyor. Asıl tanımını şöyle yapabiliriz.

Process ;

Execution’daki bir programdır,

Bilgisayarda çalışan bir programın kopyasıdır,

İşlemciye atanabilen ve işlemcide çalıştırılabilen bir varlıktır,

gibi tanımlalamalar yapılabilir. [1]

Bu arada execution ifadesi bir süreç olarak işleme tabi tutma anlamına gelmektedir. Run ifadesi ile sıkça karıştırılır. Run ifadesi çalıştırılma anını ifade eder.

Şimdi process’in aşağı yukarı ne olduğunu öğrendiğimize göre biraz yapısında bahsedelim.

 

                                            Process Concept                 operating system-process concept[1]

 

Yukarıdaki şekilde gördüğünüz üzere process Stack, Heap, Data ve Text alanlarından oluşmaktadır.

Oklardan da anlayabileceğiniz üzere stack daha küçük adreslere doğru büyürken heap daha büyük adreslere doğru büyümektedir.

 

Tamam güzel bu alanlardan oluşuyor ama bu alanlarda process’in neleri, hangi parçaları bulunuyor diye sorarsanız hemen alt satıra geçin şimdi onlardan bahsedicez.

Text : Derlenen programın (process)’in makine kodu bu alanda bulunmakta.

Data : Bu alan ise Static verilerin tutulduğu yer. Static verilere ise global değişkenler vs.. örnek verilebilir.

Heap : Bu alanda dinamik olarak tahsis edilmiş bellek alanları bulunur. Örneğin C programlama dilinde malloc fonksiyonu ile ayırdığınız bellek alanları.

Stack : Fonlsiyon parametreleri ve lokal değişkenlerde bu alanda bulunmakta.

 

Ayrıca şimdilik şunu da söylemeliyim ki ;  process içinde bulunduğu durumu içeren durum bilgisini de barındırmaktadır. Bu konuyu ileride yazacağım yazılarda daha iyi anlayacağınızı umuyorum.

 

Şimdilik yazım burada sonlanıyor. Umarım process hakkında kafanızda yüzeysel de  olsa bir yargı oluşturabilmişimdir. Bir sonraki yazıda görüşmek üzere, iyi çalışmalar..

 

 

Kaynaklar

[1] Operating System Slides Instructor: Ok. Mustafa Gökmen