SO - TP 4
Published: 2023-03-20 01:41:54

## Process and Thread

Manajemen Proses (Process Management) adalah salah satu bagian penting dari sistem operasi. Dalam sistem komputer, program yang ditulis dalam bahasa tingkat tinggi seperti C, C++, dan JAVA tidak dapat langsung dijalankan oleh mesin. Oleh karena itu, program tersebut harus dikompilasi terlebih dahulu menjadi kode mesin yang dapat dipahami oleh mesin. Setelah program dikompilasi, maka program tersebut dapat dieksekusi oleh sistem operasi.

Proses dapat dianggap sebagai program yang sedang dieksekusi oleh sistem operasi. Setiap kali sebuah program mulai dijalankan, program tersebut dianggap sebagai proses. Dalam sistem komputer modern, banyak proses atau program yang dapat berjalan secara bersamaan. Dalam sebuah proses, terdapat unit-unit eksekusi yang disebut dengan thread.

Thread adalah unit eksekusi terkecil dalam sebuah proses. Proses dapat memiliki satu atau beberapa thread. Thread ini dapat digunakan untuk mempercepat kinerja program karena dapat menjalankan beberapa tugas secara bersamaan. Selain itu, thread juga dapat digunakan untuk mempercepat kinerja sistem operasi karena beberapa thread dapat dijalankan secara bersamaan.

Manajemen proses melibatkan beberapa konsep seperti scheduling, synchronizing, dan interprocess communication. Scheduling digunakan untuk menentukan urutan dan waktu pelaksanaan sebuah proses atau thread. Synchronizing digunakan untuk memastikan bahwa dua atau lebih proses atau thread tidak saling mengganggu saat berjalan bersamaan. Sedangkan interprocess communication digunakan untuk memungkinkan proses atau thread saling berkomunikasi dan bertukar data.

Sistem operasi memiliki tugas untuk memastikan bahwa proses dan thread berjalan dengan aman dan efisien. Oleh karena itu, sistem operasi menyediakan beberapa layanan seperti allocation dan deallocation of resources, memory management, dan error handling. Dalam proses manajemen proses, tugas dari sistem operasi adalah untuk memastikan bahwa semua proses dan thread berjalan dengan efisien dan tidak saling mengganggu.

Dalam komputasi modern, manajemen proses sangat penting karena dapat mempercepat kinerja program dan sistem operasi secara keseluruhan. Sebagai contoh, beberapa aplikasi modern menggunakan teknologi multithreading untuk mempercepat kinerja dan meningkatkan responsivitas aplikasi. Dengan demikian, pengguna dapat merasakan pengalaman yang lebih baik dalam menggunakan aplikasi tersebut.

Secara keseluruhan, manajemen proses adalah salah satu bagian penting dari sistem operasi. Konsep-konsep seperti proses, thread, scheduling, synchronizing, dan interprocess communication sangat penting dalam manajemen proses. Sistem operasi memiliki tugas untuk memastikan bahwa proses dan thread berjalan dengan aman dan efisien, sehingga kinerja program dan sistem operasi dapat ditingkatkan.


## Praktikum

1). Managing service

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uug17z7w7aasfa0hkkl4.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bcvrvlcg31zs4tbelhxc.png)


2). Init service

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zr30xammxohkyyeum5hr.png)

3). Using top for managing process

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lgnv50jxvjo22znkicl1.png)


### Additional: using htop (modern version of top)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ejbtcpfutrosaxptvlv2.png)