Berdasarkan modul sistem operasi pada pertemuan ke-4 yang bersumber dari hendiku.xyz dan materi video tetang proses dan thread. Maka saya ak...
Berdasarkan modul sistem operasi pada pertemuan ke-4 yang bersumber dari hendiku.xyz dan materi video tetang proses dan thread. Maka saya akan membuat beberapa kesimpulan.
Semua program yang berjalan pada komputer menggunakan setidaknya satu proses atau thread untuk memaksimalkan kinerja processor.
- Proses adalah serangkaian terus menerus dari tindakan untuk mencapai hasil yang spesifik.
- Thread merupakan unit dari proses yang dieksekusi diantara sebuah proses.
Thread terdiri atas ID thread, program counter, himpunan register, dan stack. Dengan banyak kontrol thread proses dapat melakukan lebih dari satu pekerjaan pada waktu yang sama.
image: perbedaan process dan thread |
Model Multithread
1. User (pengguna) thread
User thread didukung di atas kernel dan diimplementasi oleh thread library pada user level.
2. Kernel tread
Kernel thread didukung langsung oleh sistem operasi. Pembuatan, penjadwalan, dan manajemen thread dilakukan oleh kernel pada kernel space.
Keuntungannya adalah jika sebuah thread menjalankan blocking system call maka kernel dapat menjadualkan thread lain di aplikasi untuk melakukan eksekusi.
Model multithreading berdasarkan pemetaan dibedakan menjadi tiga bagian, yaitu: Many to one, one to one, dan many to many.
Jenis-Jenis Proses Thread
1. Single Thread Process: Sebuah proses tradisional mempunyai single thread yang berfungsi sebagai pengendali. Atau bisa kita artikan sebagai proses yang bekerja secara berurutan sesuai dengan urutan masing-masing thread (terstruktur) dan hanya mengerjakan satu tugas dalam satu waktu.
2. Multithread Process: Merupakan satu atau beberapa thread yang dijalankan secara bersamaan (multiproses), dimana masing-masing thread tersebut dijalankan pada jalur masing-masing.
Keuntungan Thread
1. Responsiveness
Membuat aplikasi yang interaktif menjadi multithreading dapat membuat sebuah program terus berjalan meski pun sebagian dari program tersebut diblok. Contohnya web browser yang multithreading, sebuah thread dapat melayani permintaan user sementara thread lain berusaha menampilkan image.
2. Resource sharing
Keuntungan dari berbagi kode adalah mengizinkan sebuah aplikasi untuk mempunyai beberapa thread yang berbeda dalam lokasi memori yang sama.
3. Economy
Dalam pembuatan sebuah proses banyak dibutuhkan pengalokasian memori dan sumber daya.
4. Utilization of multiprocessor architectures
Keuntungan dari multithreading dapat sangat meningkat pada arsitektur multiprocessor, dimana setiap thread dapat berjalan secara pararel di atas processor yang berbeda.
Multiprocesing
Multiprocesing adalah kemampuan eksekusi terhadap beberapa proses perangkat lunak dalam sebuah sistem secara serentak.
Keuntungan Multiprocessing
- Peningkatan jumlah pekerjaan yang dapat dilakukan dalam waktu tertentu.
- Lebih ekonomis dari pada sistem dengan banyak prosesor tunggal, karena bisa berbagi memori, storage, dan power supply.
Jenis-jenis Multiprocessing
1. Asymmetric Multiprocessing
Kelemahan dari model Asymmetric Multiprocessing:
- Kegagalan prosesor utama bisa menyebabkan kegagalan keseluruhan sistem.
- Sisa terjadi penurunan performa, yaitu terjadi bottleneck di prosesor utama karena dialah yang bertanggung jawab atas penjadwalan dan manajenem proses.
2. Symmetric Multiprocessing
Keuntungan model Symmetric Multiprocessing:
- Performance
- Availability
- Incremental growth
Microkernel
Pendekatan mikrokernel berisi sebuah abstraksi yang sederhana terhadap hardware, dengan sekumpulan primitif atau system call yang dapat digunakan untuk membuat sebuah sistem operasi agar dapat berjalan, dengan layanan-layanan seperti manajemen thread, komunikasi antar address space, dan komunikasi antar proses.
Layanan-layanan lainnya, yang biasanya disediakan oleh kernel, seperti halnya dukungan jaringan, pada pendekatan microkernel justru diimplementasikan di dalam ruangan pengguna (user-space), dan disebut dengan server.
Secara teori, sistem operasi yang menggunakan microkernel disebut jauh lebih stabil dibandingkan dengan monolithic kernel, karena sebuah server yang gagal bekerja, tidak akan menyebabkan kernel menjadi tidak dapat berjalan, dan server tersebut akan dihentikan oleh kernel utama.
Beberapa sistem operasi yang menggunakan microkernel adalah Amoeba, Kernel Mach, Symbian OS, Minix, dan IBM AIX.
Pertanyaan:
- Mengapa jenis proses single Thread mulai ditinggalkan pada perangkat lunak yang berjalan pada PC modern ?
- Kenapa jenis multiprocessing Symmetric memiliki banyak keunggulan dibandingkan jenis Asymmetric Multiprocessing ?
Mata Kuliah: Sistem Operasi
Nama: Ifan Haidar/41519010216
Dosen: Suhendi, S.Kom, M.Kom
COMMENTS