Proses pada Sistem Operasi Linux


Proses

Proses adalah sebuah program yang sedang dieksekusi oleh CPU, proses juga disebut dengan terminolofy Unix sebagai sebuah job. Setiap kali menggunakan sebuah utilitas system atau program aplikasi dari shell, satu atau lebih llchuld akan dimuat oleh shell, sesuai dengan perintah yang diberikan, setiap kali intruksi diberikan pada Linux Shell, karnel akan menciptakan sebuah proses-id, dan karnel juga bias memusnahkan sebuah proses-id. Proses yang pertama kali diciptakan di Linux adalah init. Setiap proses mempunyai PID  atau Proses ID yang merupakan sebuah nomor unik yang dapat digunakan untuk berinteraksi dengan proses pada system. Program adalah Source dan binary hasil kompilasi.



·      Stack adalah tempat menyimpan sebuah parameter yang ada di fungsi dalam program, ketika program membutuhkan sebuah parameter maka akan dicarikan ke stack. Contoh isisialisasi matriks pada array yang melebihi batas yang ada. Maksimal yang penyimpanan array, tergantung panjang alamat memori, atau jumlah bit. Uutuk linux memori dibagi menjadi dua , 2GB untuk menjalankan kernel dan 2GB menjalankan sebuah osnya, sedangkan untuk  Windows 1GB untuk menjalankan karnelnya dan 3GB untuk OS nya.



Heap adalah memori yang dialokasikan secara dinamis untuk diproses selama waktu berjalan, heap digunakan untuk menyimpan data . Contoh ketika fungsi rekursif berjalan terus sampai menghabiskan space memori yang ada. 


·         Data adalah berisi variable data secara global.

·         Text adalah sebuah proses dan juga dikenal sebagai text section 

Atribute pada Proses
      Process Id:    memberikan sebuah id kepada program yang tidak sama.
2     Process State: status dari proses, apakahproses tersebut sedang dieksekusi, suspend, block atau sudah release. 
            
1       CPU registers: disimpan pada cpu, ketika computer dihidupkan memori akan mengisi di counter

2    Accounts information: urusan dengan user
3   I/O status information: untuk mengetahui sebuah io yang sedang digunakan, statusnya block, atau unblock
4    CPU scheduling information: ada satu pengenal yang berisi dengan prositas, yang akan di eksekusi pada cpu, semakin kecil maka akan penting dan di proritaskan sedangkan semakin besar id maka eksekusi harus menunggu.
Operasi-operasi pada proses :
·         Create a process membuat sebuah  proses baru
·         Ready digunakan untuk mengeksekusi proses yang sudah ready.
·         Run digunakan untuk  menjalankan proses dalam CPU (hanya satu proses, dan di proses dalam satu prosesor)
·         Wait menunggu proses untuk permintaan I/O
·         Complate, proses yang sudah berhasil di jalankan 
·         Supsened ready saat antrian sudah penuh, beberapa proses akan di pindahkan dalam posisi ready
·         Supsened Block saat antrian penuh akan di block.

Contex Switching
Context switch adalah komputasi proses untuk menyimpan dan memulihkan keadaan ( konteks ) dari sebuah CPU sehingga eksekusi yang dapat dilanjutkan dari titik yang sama di lain waktu. Hal ini memungkinkan beberapa proses untuk berbagi satu CPU. Context switch adalah fitur penting sebagai multitasking sistem operasi . Ada tiga situasi di mana sebuah context switch perlu terjadi, yaitu :
1.      Mutitasking : Paling sering, dalam beberapa penjadwalan skema, satu proses perlu diaktifkan keluar dari CPU sehingga proses lain dapat berjalan. Dalam preemptive multitasking sistem operasi, scheduler memungkinkan setiap tugas untuk menjalankan untuk beberapa waktu tertentu, disebut sebagai irisan waktu. Jika suatu proses tidak sukarela hasil CPU (misalnya, dengan melakukan I / O operasi), timer kebakaran mengganggu, dan jadwal sistem operasi proses lain untuk eksekusi sebagai gantinya.Hal ini memastikan bahwa CPU tidak dapat dimonopoli oleh satu aplikasi prosesor-intensif.
2.      Penanganan Interrup : Ini berarti bahwa jika permintaan CPU data dari disk, misalnya, tidak perlu sibuk-menunggu sampai selesai membaca, ia dapat mengeluarkan permintaan tersebut dan melanjutkan dengan beberapa eksekusi lain, ketika membaca selesai, CPU dapat terganggu dan disajikan dengan membaca. Untuk menyela, sebuah program disebut interrupt handler terinstal, dan itu adalah interrupt handler yang menangani interrupt dari disk.
3.      User dan Kernel Mode Switching : Ketika transisi antara mode pengguna dan mode kernel diperlukan dalam suatu sistem operasi, sebuah context switch tidak diperlukan, sebuah transisi mode tidak dengan sendirinya sebuah context switch. Namun, tergantung pada sistem operasi, sebuah context switch juga dapat terjadi pada saat ini.
Context Switch vs Mode Switch
Sebuah Mode Switch terjadi ketika level yang tinggi pada CPU berubah, misalnya ketika pemangilan sebuah system terjadi kesalahan, karnel bekerja pada posisi level yang istimewa dari pada pengguna.
CPU Bound vs I/O Bound Processes:
Proses pada CPU Bound membutuhkan lebih banyak waktu dalam keadaan berjalan, I/O Bound Proses banyak membutuhkan waktu dan waktu CPU lebih sedikit, dan IO Bound lebih banyak memproses banyak waktu dalam status menunggu di eksekusi.

Sumber : Geeksforgeeks


Share on Google Plus

About Unknown

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.
    Blogger Comment
    Facebook Comment

0 komentar:

Post a Comment