2. Nama Anggota
1. Arya Islami Surya Y 11211020
2. Dhaffa Agusrian Putra 1121020
3.Sahda Aryanti 11211080
4. Hengki Agung Prayoga 11211044
5.Dimas Pramudya 11211032
6.Muhammad Insan Kamil 11211058
7. Ariq Huwaidi 11211018
4. Apa itu Thread
Thread merupakansebuahstatus
eksekusi (running, ready, dll.), sering
disebut denganlightweight process.
Thread merupakan cara dari komputer
untukmenjalankansatu,duaatau lebih
taskdalamsatu waktu,sedangkan
multithreading adalah cara komputer
untukmembagi-bagi pekerjaan yang
dikerjakansebagian-sebagian dengan
cepat
5. Thread Libraries
Thread Library atau Pustaka
Thread bertugas untuk
menyediakanAPIuntuk
programmerdalammenciptakan
danmemanage thread.
7. One ToMany
Satukernel diakses banyak
thread.
One ToOne
Satukernel diakses satu
thread.
ManyToMany
Banyakkernel diakses banyak
thread.
Model Multithreading
terbagi menjadi 3, yaitu :
8. Memetakan beberap user-level (tingkatan
penguna) ke single kernel thread.
Contoh :
1.Solaris Green Threads
2. GNU Portable Threads
Model Many-to-One
Kelebihan :
Tidak ada batasan
jumlah user-thread yang
bisa dibuat
Kekurangan :
Satu thread melakukan
blocking (misal I/O),
seluruh proses ter-block
Multithread tidak dapat
dijalankan secara parallel
pada sistem multicore.
9. Setiap user level thread dipetakan ke kernel
thread
user thread memiliki jumlah yang sama
dengan jumlah kernel thread
Model One-to-One
Kelebihan :
Satu thread blocking
tidak akan berpengaruh
ke thread lain
Multithread dapat
dijalankan secara
parallel pada sistem
multicore
Jumlah user-thread yang
bisa dibuat terbatas.
> Pembuatan kernel
thread dapat
membebani performa
Kekurangan :
Contoh :
Sistem operasi M icrosoft
Windows, Linux/GNU,
dan Apple MacOS.
10. Memultipleks banyak thread user level ke thread
kernel yang jumlahnya sedikit atau sama
dengan user level.
Jumlah kernel-thread yang dibuat bergantung
aplikasi dan spesifikasi mesin
Model Many-to-Many
Kelebihan :
Satu thread blocking
tidak akan berpengaruh
ke thread lain
Dapat membuat user
thread sebanyak
mungkin.
Dapat membuat user
thread sebanyak
mungkin, namun
konkurensi tidak
dapat diperoleh.
Kekurangan :
Contoh :
Digital UNIX,dan IRIX.
12. Multi-Core
Prosesor Multi-Core adalah
mikroprosesor pada sirkuit
terpadu dengan satu atau
lebih unit pemrosesan
terpisah,yang disebut Core.
Yang dimana masing-masing
Core membaca dan
mengeksekusi instruksi
program.
15. Tipe-Tipe Parallel
Data Parallelism
Tipen ini melibatkan pemrosesan beberapa bagian data secara
independen dan bersamaan. Prosesor akan melakukan operasi
yang sama pada proses.
19. The fork() and exec() System Calls
Fungsi fork() digunakan untuk membuat proses baru
dari proses yang ada.
Fungsi exec() digunakan untuk mengganti program
yang ada dengan membuat yang baru. Jika sebuah
thread memanggil system call exec(), program yang
ditentukan dalam parameter exec() akan
menggantikanseluruhproses.
20. Signal Handling
Isyarat yang digunakan Sistem UNIX untuk memberitahu
suatuproses bahwaperistiwatertentutelahterjadi.Sinyal
dapat diterimabaiksecarasinkronatauasinkron.
Semuasinyal,baiksinkron atauasinkron,memiliki pola
yang sama:
1.Sinyaldihasilkan oleh terjadinyaperistiwa tertentu.
2.Sinyal dikirimkanke suatuproses.
3.Setelah dikirimkan,sinyalharusditangani.
21. THREAD CANCELLATION
Thread cancellation adalah tugas untuk memberhentikan
thread sebelumthread tersebut menyelesaikantugasnya.
Thread yang akan diberhentikan biasa disebut target
thread.
Pemberhentian target thread bisa terjadimelalui2 cara
yang berbeda:
Asynchronous cancellation
Defered cancellation
23. Thread Pools digunakan dengan membuat sejumlah thread pada saat
proses dimulai dan menempatkannyake dalam pool.
Konsep dari Thread Pools sendiri adalah untuk membuat sejumlah
thread pada saat proses dimulai dan menempatkannyake dalam pool,
yang merupakantempat dikumpulkannyathread-thread yang ada.
Ketikaserver menerimarequest, makathread yang ada di pool akan
dipanggil danrequest akanditeruskan kepadathread yang dapat
melayaninya,setelah selesai, thread tersebut akankembali ke dalam
pool.
Thread Pools
24. Kelebihan dari thread pools :
-Lebih cepat daripada membuat thread baru setiap kali
adatugas/request
- Thread pool dapat membatasi jumlahthread yang dibuat
-Adapemisahanbagianantararequest yang akan
dikerjakandenganpembuatanthread
- Sebuah request dapat dilakukan secara berulang
25. Set dari arahancompiler sertaAPI untukprogramyangdibuat dalam
Bahasa C, C++atau Fortran yang menyediakan dukungan untuk
pemrograman parallel dalam lingkup shared-memory. OpenMP
mengidentifikasi Paralell Regions ataublokkode yang dapat berjalan
secara parallel.
Akanmembuatcompiler membuatthread sebanyak core yangdimiliki
mesin,dan menjalankanblok kode parallel di setiap thread.
OpenMP
26. Merupakan kombinasi ekstensi dengan BahasaC,sebuah API,dan run-
time library yangmemungkinkanuntukmengidentifikasi blok kode yang
dijalankan secara parallel. GCD juga mengelola Sebagian besar detail
pada thread.
Biasanya digunakan untukSistem Operasi Mac OS Xdan IOS
DispatchQueue :
Serial
Concurrent
Grand Central Dispatch
27. OPERATING SYSTEM
EXAMPLE
1
2
3
4
Operating System adalah
sebuah software yang bertugas
untuk mengelola memori dan
memproses semua komunikasi
antara hardware, software dan
user
M ICROSOFT WINDOWS
Apple M acOS
5
Android
Apple iOS
Linux
28. KELEBIHAN KEKURANGAN
Kompatibel dengan banyak program
office
Interface dan penggunaan sistem yang
sangat mudah
Mendukung beragam hardware komputer
Fitur troubleshooting untuk mengatasi
berbagai masalah
Dukungan software yang optimal dari
pengembang dan developer
Banyak pilihan software yang tersedia
Fitur dukungan untuk jenis partisi
harddisk yang lebih banyak
M enggunakan sumber daya RAM yang
cukup besar
Sangat rawan terhadap infeksi dan
serangan virus berbahaya
Harga lisensi original yang lumayan mahal
Sering melakukan beberapa patch
Sistem operasi yang memiliki update
terlalu cepat
Keamanan pada sistem operasi yang
sangat mudah diretas, dan diperlukan
adanya antivirus tambahan
Microsoft Windows
29. KELEBIHAN
Menawarkan performa yang maksimal
M inim dari serangan virus karena
keamanan merupakan poin nomor satu
untuk Apple
Memiliki GUI yang elegan dan cantik
Cocok untuk pengguna yang menekuni
bidang kreatif
Kompatibel dengan operating system
lainnya, artinya kamu dapat membuka file
dalam format tertentu seperti PDF, Doc,
txt,dan lainnya di macOS
KEKURANGAN
M emiliki harga yang relatif mahal
Hanya mendukung ekosistem yang sama
(sesama Apple)
macOS cenderung hanya digunakan pada
keperluan desain grafis dan penggunaan
ringan saja.
Perangkat Apple tidak dapat dirakit sendiri
Komponen perangkat keras kurang
fleksibel untuk ditingkatkan karena sudah
terikat secara built-in dan diintegrasikan
dengan komponen lainnya
Apple MacOS
30. KELEBIHAN KEKURANGAN
Merupakan sistem operasi open source,
oleh
sehingga mudah dikembangkan
developer.
OS android dapat dijalankan pada banyak
pilihan spesifikasi hardware.
Dukungan aplikasi yang sangat banyak dan
beragam.
Mudah dipahami oleh pengguna.
Dikembangkan oleh salah satu raksasa
telekomunikasi dunia, yaitu Google.
Merupakan salah satu sistem operasi yang
cepat dan responsive.
Memiliki proses kerja sistem yang cukup
berat, sehingga memakan RAM cukup banyak.
Jika dipasangkan dengan spesifikasi hardware
yang buruk,performa akan menurun.
Sistem operasi yang di custom sering tidak
stabil dan kurang optimal.
Sistem operasi Android tampaknya menuntut
pengguna untuk harus memiliki koneksi
internet dalam keadaan aktif.
Baterai pada smartphone dengan sistem
Android akan sangat boros dibandingkan OS
lainnya.
Android
31. KELEBIHAN
Hanya tersedia di produk Apple sehingga
memberikan kesan ekslusif kepada para
pengguna
Memiliki tingkat keamanan yang lebih
baik dan kontrol yang lebih ketat
Jumlah aplikasi yang lebih banyak
Perangkat lama dapat melakukan
pembaruan sistem informasi
Performa yang lebih baik untuk membuka
aplikasi
Media penyimpanan mumpuni
KEKURANGAN
Harga perangkat yang menggunakan iOS
cenderung mahal
Tidak bisa bebas menggunakan aplikasi
sehingga pengguna hanya bisa
mendownload aplikasi dariApp Store
M edia konektivitas hanya digunakan
sesama pengguna iOS saja
Tidak memiliki pengaturan jaringan
Tidak tersedia slot memori eksternal
Kapasitas baterai terbatas
Apple iOS
32. KELEBIHAN
karena
Bersifat Open Source yang berarti
dapat digunakan dan dikembangkan
secara gratis
Cocok untuk developer
terkenal ringan dan cepat
Memiliki komunitas yang besar
Ancaman virus yang rendah
Pembaruan secara rutin
KEKURANGAN
Memiliki pilihan perangkat lunak yang
terbatas
Grafis kurang bagus untuk program
yang butuh pemrosesan grafis yang
berat
Kurangnya dukungan untuk perangkat
keras
Kurang cocok untuk bermain game
karena developer belum banyak yang
membuat game untuk Linux
Linux
34. Daftar Pustaka
Silberschatz, A., Gagne, G., & Galvin, P
. B. (2018). Operating
system concepts (9th ed.).Wiley.
https://studfile.net/preview/6129020/
Coding dengan fork Dan exec dengan contoh Di C. (n.d.).
Sridianti.com. https://www.sridianti.com/linux/coding
dengan-fork-dan-exec-dengan-contoh-di-c.html
4.6 threading issues. (n.d.). StudFiles.
https://studfile.net/preview/6129020/page:26/
Signal handling - karaOS.(n.d.)
https://sites.google.com/a/student.unsika.ac.id/karaos/signal-
handling
35. Daftar Pustaka
M uhammad FadhilAkbar & M och.Ivan Wahyu P.Thread.
Retrieved from http://novitaekapa.it.student.pens.ac.id/OS/
Materi/PRESENTASI/4%20THREADS.ppt
unknown.(2015,April 22).Jenis Thread dan M odel M ultithreading.
Retrieved from https://sites.google.com/a/student.unsika.ac.
id/karaos/jenis-thread-dan-model-multithreading
Gustibagusbayu. (2020, October 19). Sistem Operasi: Thread.
M edium.https://gustibgsbayu.medium.com/sistem-operasi
thread-c7fb4a35d89a
Kelebihan dan Kekurangan Sistem Operasi Terkenal.Rony
Setiawan (2021,July 21).
https://www.dicoding.com/blog/sistem-operasi-terkenal/
36. Sesi Tanya jawab
1.Jelaskanulang tentang thread libeary
2.Jelaskanulang tentang apaituthread
3.Kenapacumamac atauios yang menggunakanGCD?
4.SebutkancontohuntukketigapolaSignal Handling!
5.Apa sajakelebihan dan kekuranganmulticore, dan bagaimanacara
berjalanmulticore?
6.Kenapathread libraries dibedakanmenjadi2 kenapadakdibikin1?
7.ApaituAPI?
8.Apa sajaperbedaan multithread dengan multiprocess?
9.Apakahthread pools bisa penuhkalo penuhgimana?
10.Sebutkancontohchallenge multicore program!
11.Apa yang terjadijikaSignal Handling ditolak?
12.Apakahadaos yang hanyapunyasatuthread library?
13.Sebutkankekurangantread pools!
37. Sesi Tanya jawab
14.Apa perbedaanmultithread dengan asyncronus?
15.Jelaskan ulang tentang tipe tipe parallel
16.Apa sajakeunggulandari ketiga model threading dan yang mana
paling sering digunakan?