Anda di halaman 1dari 6

Matakuliah : Praktikum Sistem Operasi Acc:

NIM : A710200061
Nama : Nabila Kusumawardani
Tgl.Praktikum : 17 Desember 2021 Tgl:

BAB VII

Thread

A. Dasar Teori
Proses merupakan Program yang sedang dieksekusi, Proses tidak hanya
sekedar suatu kode program (text section), melainkan meliputi beberapa aktivitas
yang bersangkutan seperti program counter dan stack. Sebuah proses juga
melibatkan stack yang berisi data sementara (parameter fungsi/metode, return
address, dan variabel lokal) dan data section yang menyimpan variabel-variabel
global.
Sistem Operasi mengeksekusi proses dengan dua cara yaitu Batch System
yang mengeksekusi jobs dan Timeshared System yang mengatur pengeksekusian
program pengguna (user) atau tasks. Sistem operasi UNIX mempunyai system call
fork yang berfungsi untuk membuat proses baru. Proses yang memanggil system
call fork ini akan dibagi jadi dua, proses induk dan proses turunan yang identik
TERMINASI PROSES Suatu proses diterminasi ketika proses tersebut telah
selesai mengeksekusi perintah terakhir serta meminta sistem operasi untuk
menghapus perintah tersebut dengan menggunakan system call exit. Proses dapat
mengembalikan data keluaran kepada proses induknya melalui system call wait.
Thread adalah unit dasar dari penggunaan CPU, thread mengandung Thread
ID, program counter, register set, dan stack. Sebuah Thread berbagi code section,
data section, dan sumber daya sistem operasi dengan Thread lain yang dimiliki oleh
proses yang sama. Thread juga sering disebut lightweight process. Sebuah proses
tradisional atau heavyweight process mempunyai thread tunggal yang berfungsi
sebagai pengendali. Perbedaan antara proses dengan thread tunggal dengan proses
dengan thread yang banyak adalah proses dengan thread yang banyak dapat
mengerjakan lebih dari satu tugas pada satu satuan waktu. Banyak software yang
berjalan pada PC modern didesain secara multithreading. Sebuah aplikasi biasanya
diimplementasi sebagai proses yang terpisah dengan beberapa thread yang
berfungsi sebagai pengendali. Contohnya sebuah web browser mempunyai thread
untuk menampilkan gambar atau tulisan sedangkan thread yang lain berfungsi
sebagai penerima data dari network.

Gambar 1.1 proses thread


Keuntungan dari program yang multithrading dapat dipisah menjadi empat
kategori :
Model Multithreading Satu kumpulan instruksi yang akan dieksekusi secara
independen dinamakan thread. thread adalah alur kontrol dari suatu proses.atau
sekumpulan perintah yang dapat dilaksanakan secara teratur dengan proses lainnya.

Extends class Thread Untuk menjalankan thread, dapat dilakukan dengan


memanggil method start. Jadi untuk membuat thread, harus mendefinisikan method
run pada definisi class.

Implements interface Runnable Cara ini merupakan cara yang paling sederhana
dalam membuat thread. Dalam mengimplementasi fungsi run, kita akan
mendefinisikan instruksi yang membangun sebuah thread.

Managemen Thread Manajemen thread merupakan konsep pokok dalam sistem


operasi, sehingga masalah manajemen thread adalah masalah utama dalam
perancangan sistem operasi.
B. Tujuan Praktikum
• Menulis kode sumber yang membuat thread
• Menampilkan daftar proses/ thread dan pohon proses yang
menggambarkan hubungan antar proses induk/anak.
• Memodifikasi kode sumber untuk membuat versi tanpa thread dan
membandingkannya dengan versi yang menggunakan thread
• Memahami alasan penggunaan thread.
C. Data Hasil Praktikum
a. Percobaan 1 : Jalankan Simulator.

Gambar 3.1-Jalankan simulator


Gambar 3.2 -Jalankan simulator 2

Gambar 3.3-Jalankan simulator 3


Analisis pada percobaan pertama ini pertama kita menuliskan kode di
compiler kemudian kita compile terlebih dahulu lalu klik run, kemudian klik
load in memory kita memilih round deng 10 stik kemudian kita create new
properti Sebelum kita klik load in memory kita klik input output terlebih
dahulu kemudian kita klik star lalu nanti akan muncul seperti gambar diatas

b. Percobaan 2 : Jalankan Simulator


Gambar 3.4-Jalankan Simulator 4

Gambar 3.5-Jalankan Simulator 5


Analisis
Pada percobaan kedua ini sama halnya dengan perocaan pertama pembedanya
disini tidak memakai as thread , langkah langkahnya pun sama dengan
percobaan pertama tapi hasilnya yaitu di bagian output yang mana kode yang
menggunakan as thread outputnya ada 3 yaitu in main, in thread2, in thread1
sedangkan kode yang tidak menggunakan as thread outputnya terdiri dari 4
yaitu in main, in thread2 , in thread1, in thread1 dan proses tree nya tersebut
juga perbeda dari kode yang menggunakan as thread maupun tidak
menggunakan as thread
D. Kesimpulan
a. Thread adalah unit dasar dari penggunaan CPU, thread mengandung Thread
ID, program counter, register set, dan stack. Sebuah Thread berbagi code
section, data section, dan sumber daya sistem operasi dengan Thread lain
yang dimiliki oleh proses yang sama
b. Terdapat perbedaan antara kode yang menggunakan as thread dan kode yang
tidak menggunakan as thread
c. Perbedaan antara proses dengan thread tunggal dengan proses dengan thread
yang banyak adalah proses dengan thread yang banyak dapat mengerjakan
lebih dari satu tugas pada satu satuan waktu. Banyak software yang berjalan
pada PC modern didesain secara multithreading.
E. Daftar Pustaka
• https://repository.dinus.ac.id/docs/ajar/Sister_3_Proses_dan_Thread.pdf
• https://safriansah.blogspot.com/2018/07/thread-dalam-sistem-operasi.html

Anda mungkin juga menyukai