ARTIKEL TENTANG THREAD Definisi Thread

dokumen-dokumen yang mirip
Thread Proses merupakan sebuah program yang mengeksekusi THREAD tunggal. Kendali thread tunggal ini hanya memungkinkan proses untuk menjalankan satu t

TUGAS SISTEM OPERASI THREAD

Proses dan Threads Dalam SISTEM OPERAS

ARTIKEL PERBEDAAN PROSES DENGAN THREAD. Di susun Oleh: Nama : Sri Wahyuni Nim :

Definisi: unit dasar dari penggunaan CPU. Thread terdiri dari: thread ID, program counter, register, dan stack.

Operating System. Thread. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si

Thread. pada satu waktu. menjalankan banyak tugas/thread. yang sama

PROSES DAN THREADS DALAM SISTEM OPERASI

Rahmady Liyantanto liyantanto.wordpress.com

Definisi (1) ready, dll.) Sering disebut dengan lightweight process. register set, dan stack. sama.

Sistem Operasi Pertemuan 4 Thread, SMP & Microkernel. H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ.

TUGAS SISTEM OPERASI

Thread juga sering disebut Lightweight process. Proses tradisional ( Heavyweight process ) mempunyai thread tunggal

SISTEM OPERASI ISG2B3 THREAD. Agus Setiawan Program Studi Sistem Informasi Fakultas Rekayasa Industri Telkom University

SISTEM OPERASI THREAD DAN MULTITHREADING

Contoh (3) Solusinya adalah dengan membuat web server menjadi multi-threading. Dengan ini maka sebuah web server akan membuat thread yang akan mendeng

Dimana thread digunakan?

Artikel Perbedaan Proses Dan Thread. Disusun Oleh : Nama : Rozy Putra Pratama NIM : Prodi : Sistem Informasi

Bab selanjutnya membahas tentang penggunaan thread pada java, thread bisa memiliki status new, runnable, block, dead.

Secara tidak langsung, proses merupakan program yang sedang dieksekusi.

TUGAS Mata Kuliah : Sistem Terdistribusi

THREAD Ulir utas thread

PERBEDAAN PROSES DAN THREAD PADA SISTEM INFORMASI

KONSEP PROSES (CONT.)

Perbedaan Kernell Linux dan Windows

Sistem terdistribusi Processes, Threads and Virtualization pertemuan 3. Albertus Dwi Yoga Widiantoro, M.Kom.

TUGAS SISTEM OPERASI

PROSES. Sistem Terdistribusi

Perbedaan Anatara Thread dan Proses

MANAJEMEN PROSES. Pointer State proses Keadaan proses: Keadaan mungkin, new, ready, running, waiting, halted, dan juga banyak lagi.

Kongkurensi LPOHLVSFOTJ!

Bab 3. Proses Proses POKOK BAHASAN: TUJUAN BELAJAR: 3.1 KONSEP PROSES

Tahun Akademik 2014/2015 Semester II. DIG1I3 - Instalasi dan Penggunaan Sistem Operasi. System Calls dan Thread

MAKALAH SISTEM OPERASI Perbedaan Proses dan Thread. Disusun Oleh : NOVITA ANGGRAINI PUTRI

Bab 10. Konsep Proses

Thread, SMP, dan Microkernel (P ( e P rtemuan ua ke-6) 6 Agustus 2014

Recap. Proses. Proses. Multiprogramming. Multiprocessing 9/16/2016. Ricky Maulana Fajri

Sistem Operasi PENGATURAN PROSES

4. SISTEM OPERASI TERDISTRIBUSI

PROSES PENGANTAR DATA TERDISTRIBUSI. Materi: 1. Thread 2. Client/Server 3. Agent

1. Mampu mengimplementasikan thread dalam sebuah aplikasi 2. Memahami kegunaan thread dalam aplikasi

Prio Handoko, S.Kom., M.T.I.

Sistem Operasi. Konkurensi

Perbedaan Proses dan Program

Pertemuan #2: Proses dan Thread

PROSES DAN THREAD. : Anggo Luthfi Yunanto. Nim : : sistem informasi

TUGAS MATA KULIAH SISTEM OPERASI ARTIKEL TENTANG PERBEDAAN PROSES DAN THREAD

Proses. - yaitu program yang sedang dieksekusi Proses merupakan satuan kerja terkecil yang secara individual dijadwalkan oleh sistem operasi

Bab 3: Proses-Proses. Konsep Proses

Bab 3 - Manajemen Proses 3.1

THREADS PADA WINDOWS Julius Bata /

Processes. Processes. SISTIM OPERASI (Operating System) IKI-20230

Struktur Sistem Operasi

SISTEM OPERASI. Belajar SO?

4 Implementasi Proses

7. Pengaturan Proses

Kelas: Nilai (Diisi Dosen):... IF

Konkurensi merupakan landasan umum perancangan sistem operasi. Proses-proses disebut konkuren jika proses-proses berada pada saat yang sama.

Mata Kuliah : Sistem Operasi Kelas : Teknik Informatika 4

Proses. Sistem Terdistribusi Reza Aditya Firdaus, S.kom

Manajemen Proses. Ptputraastawa.wordpress.com. Sistem Operasi Putu Putra Astawa

PRINSIP-PRONSIP KONGKURENSI meliputi halhal berikut : 1. alokasi waktu pemrosesan untuk prosesproses

SISTEM OPERASI (MANAJEMEN PROSES)

Sistem Operasi. Proses dan Thread

Studi Kasus Kernel Linux

Bab 3: Proses-Proses. Konsep Proses

Sistem Operasi - PCB (process control block)

Sistem Operasi Proses- Dini Triasanti MANAJEMEN PROSES

Konsep Proses. Proses adalah suatu program yang sedang diesekusi (running) Pada saat proses berlangsung :

Soal-jawab Quiz 2. Oleh: Endro Ariyanto (END) Oktober 2008

PROSES & THREADS 2 AGUS PAMUJI. SISTEM OPERASI - Proses & Threads

1.PCB (process control block)

Struktur Sistem Komputer

Bab 3. Proses. Gambar 3.1. Thread

MODUL 4 KONSEP PROSES, KONKURENSI, MANAJEMEN PROSES (1) M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - M O D U L 4

Fairuz El Said Sekedar Berbagi Sistem Operasi (SO) Konkurensi KONGKURENSI

MODUL 2 KOMPONEN, LAYANAN SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 2

1.Proses control block dalam istilah lain Taks controlling block, Taks struct, atau Switchframe. Jelaskan dan berikan gambaran proses control block?

Sistem operasi. Contoh sistem operasi modern adalah Linux, Android, ios, Mac OS X, dan Microsoft Windows

I. PENDAHULUAN. jaringan dan aplikasi yang dibuat khusus untuk jaringan. Akibatnya, interaksi

MANAJEMEN PROSES SISTEM OPERASI. Teknik Informatika Definisi : Adalah program yang sedang dieksekusi

Sistem Operasi Komputer

MANAJEMEN MEMORI. Manajemen Memori 1

SISTEM OPERASI TERDISTRIBUSI

Sistem Operasi dalam bahasa Inggrisnya disebut Operating System, atau biasa di singkat dengan OS.

1. Hardware terdistribusi. 2. Program terdistribusi. Nama : Gede Doddi Raditya Diputra NIM : Kelas : 5.C

1. Setelah kita merakit PC, maka agar hardware dapat berfungsi dan fungsi komputer dapat dijalankan, maka kita harus menginstal... a. BIOS d.

Pemrograman Berorientasi Obyek (IT251) Ramos Somya, S.Kom., M.Cs.

SISTEM OPERASI. Deskripsi Proses. Multiprogramming. Istilah dalam Proses. (multitasking) MANAJEMEN PROSES. Multiprogramming.

Andi Gustanto M / Kelas 22 / TI

Struktur Sistem Komputer

ARSITEKTUR SISTEM. Alif Finandhita, S.Kom, M.T. Alif Finandhita, S.Kom, M.T 1

Proses dan Penjadwalan

PENGATURAN PROSES. Proses adalah program yang sedangdieksekusi atau sofware yang sedang dilaksanakan.

SISTEM KOMPUTER PEMROSES (CPU) Empat komponen Sistem Komputer : Pemroses Memori Utama Perangkat Masukan dan Keluaran Interkoneksi Antar Komponen

RENCANA PROGRAM DAN KEGIATAN PEMBELAJARAN SEMESTER

Struktur Sistem Operasi

Sistem Operasi Pertemuan 3 Deskripsi & Kendali Proses. H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ.

01/08/2017. Pengertian System Calls :

2.6. Struktur dasar sistem operasi

Transkripsi:

Nama : ADITO EFRI NIM : 14121004 PRODI : SISTEM INFORMASI KELAS : 21(Pagi) ARTIKEL TENTANG THREAD Definisi Thread Thread adalah sebuah pengontrol aliran program pelaksanaan program dengan menggunakan kendali tunggal. Operasi yang paling Modern saat ini adalah sistem yang banyak sekali menyediakan berbagai cara, dan memungkinkan suatu proses terkendali dengan baik. Pendekatan tradisional sebuah thread eksekusi per-proses, dimana konsep thread tidak dikenal. Multithreaded Process Benefits/manfaat Kemampuan reaksi Sumber daya berbagi Ekonomi Scalabilas Thread bermanfaat untuk Multithreading yang berguna untuk Multiprocessor dan Singleprocessor. Kegunaan untuk system Multiprocessor, adalah : a) Sebagai unit pararel atau tingkat granularitas pararelisme. b) Peningkatan kinerja disbanding berbasis proses. Kegunaan Multithreading pada singleprocessor, adalah : a) Kerja foreground dan background sekaligus di satu aplikasi. b) Penanganan asynchronous processing menjadi lebih baik. c) Mempercepat eksekusi program. d) Pengorganisasian program menjadi lebih baik. Multicore Programming Multicore systems mendesak/memaksa para programmer untuk melewati tantangan yang meliputi : a) pembagian aktivitas b) Saldo/Timbangan c) Data yang telah hancur

d) Ketergantungan Data e) Pengujian dan debugging Arsitektur Server Multithreaded ketika client mengajukan suatu permintaan, pada saat itu juga server akan menuliskan suatu thread yang baru untuk pelayanan atas permintaan yang diajukan oleh client. Selain itu server juga menyimpulkan atau mendengarkan atas permintaan client sehingga permintaan client dapat terpenuhi. Pelaksanaan Eksekusi Pada Saat Yang Bersaman Pada Suatu Sistem Berinti Tunggal Single CoreGambar dibawah ini merupakan suatu gambar yang menunjukkan sebuah program yang melakukan dua remote procedure calls (RPC) ke dua host yang berbeda untuk memperoleh hasil gabungannya. Pada sebuah program single-core, untuk memperoleh suatu hasil proses dilakukan secara berurutan. Penulisan ulang program dengan menggunakan thread-thread yang terpisah bagi setiap RPC-nya menghasilkan kecepatan yang cukup berarti. Apabila program ini beroperasi pada sebuah uniprosesor, maka request harus dibuat secara seri dan hasil beroperasi secara seri, namun program akan menunggu dua jawaban pada waktu yang bersamaan. Pelaksanaan Paralel Pada Suatu Multicore Sistem User Threads 1. Pelaksanaan manajemen thread yang dilakukan oleh user-level thread library. Terdapat dua kelompok besar implementasi thread, yaitu user-level thread dan kernel-level thread. Didalam fasilitas user-level thread yang murni, semua tugas manajemen thread dilakukan oleh aplikasi dan kernel tidak mengetahui keberadaan thread. 2. Tiga kunci thread libraries : POSIX Pthread Win32 thread Java thread Kernel Threads 1. Suatu proses thread Yyang didukung oleh kernel. Untuk memberitahu kejadian kernel, kernel menciptakan scheduler activatioan baru, memberikan ke pemroses dan melakukan upcall ke ruang pemakai. 2. Contoh : Windows XP/2000 Solaris Linux Tru64 UNIX Mac OS X

Multithreading Models 1. Many-to-One : banyaknya User-Level thread yang dipetakan ke kernel thread tunggal, akan tetapi dari beberapa user thread dapat menggunakan satu kernel thread saja. Contoh : Solaries Green Thread GNU Portable Thread 2. One-to-One : setiap user-level thread memetakan ke kernel thread, akan tetapi user thread hanya dapat menggunakan satu kernel thread. Contoh : Windows NT/XP/2000 Linux Solaris 9 and later 3. Many-to-Many Mengijinkan beberapa user-level thread memakai beberapa kernel thread. Mengijinkan system operasi untuk menciptakan beberapa kernel thread. Thread Libraries 1. Thread libraries menyediakan pemrogram dengan API untuk menciptakan dan memanage thread. 2. Dalam pengimplementasiannya ada dua cara, diantaranya : Keseluruhan library pada ruang pemakai. Kernel-support library yang didukung dengan OS. Pthreads 1. Dapat dianggap sebagai user-level atau kernel-level. 2. Suatu POSIX standar (IEEE 1003.1c) API untuk menciptakan thread dan sinkronisasi. 3. API menetapkan sifat thread library, implementasinya adalah pengembangan library. Java Threads 1. Java thread diatur oleh JVM. 2. Secara khusus diterapkan untuk menggunakan thread model yang disediakan dengan dasar OS. 3. Java thread diciptakan oleh : Memperpanjang thread class. Menerapkan runnable interface. Threading Issues 1. Semantics of fork() and exec() system call. 2. Thread cancellation of target thread 3. Asynchronous atau deffered (penundaan atau ketidak serempakan) 4. Signal handling (isyarat menangani) 5. Thread pools : menciptakan sejumlah thread dalam suatu kolom dimana mereka saling menunggu pekerjaan. Keuntungannya yaitu : Pada umumnya sedikit lebih cepat untuk melayani suatu permintaan dengan suatu thread yang sudah ada dibandingkan menciptakan suatu thread baru. Mengijinkan sejumlah thread dalam suatu aplikasi menjadi seukuran pool. 6. Thread-specific data

7. Scheduler activation Thread Cancellation 1. pengakhiran suatu thread sebelum selesai. 2. Dua pendekatan umum : Cancellationterminate yang tidak serempak dengan penyusupan target. Penundaan Cancellationterminate dengan penyusupan target pada waktu tertentu. Signal Handling 1. Isyarat digunakan Sistem UNIX untuk memberitahu suatu proses bahwa peristiwa tertentu telah terjadi. 2. Suatu signal handler digunakan untuk proses signal : Signal yang dihasilkan oleh peristiwa tertentu. Signal yang dikirim untuk suatu proses. Signal adalah handler. Linux mengacu pada thread sebagai tasksrather disbanding thread. Thread muncul ketika dilaksanakannya melalui clone() system call. Clone()allows merupakan sebuah child untuk membagi dalam pengalokasian ruang alamat yang menjadi tugas parent pada proses. Windows XP Threads Pengimplementasian one-to-one menentukan, kernel-level. Setiap threads meliputi : Id thread : suatu nilai unik yang mengindentifikasikan sebuah thread apabila thread itu memanggil server. Register set : nilai-nilai register tingkat pengguna yang disimpan. Separate user dan kernel stack. Private data storage area. Dari hasil pemahaman diatas, secara garis besar dapat diketahui bahwa Thread sering disebut Light Weight Process (LWP), yaitu unit dasar utilisasi pemroses dan berisi program counter, register set dan stack space. Thread-thread di satu proses berbagi (memekai bersama) bagian code, data dan sumber daya system operasi seperti file dan signal. Pemakaian ektensif menyebabkan alih pemroses antara thread-thread di satu proses tidak mahal disbanding alih konteks antar proses. Meski alih thread masih memerlukan alih himpunan register, namun tidak ada keterlibatan manajemen memori. Multithreading merupakan upaya untuk menigkatkan kinerja system computer, disebabkan : 1. Penciptaan thread baru lebih cepat dibandingkan penciptaan proses baru. 2. Terminasi thread lebih cepat dibandingkan pengakhiran proses. 3. Alih ke thread lain di suatu proses lebih cepat disbanding dari satu proses ke proses lain. 4. Thread-thred di satu proses dapat berbagi kode, data dan sumber daya lain secara nyaman dan efisiensi disbanding proses-proses terpisah. Kegunaan Thread Multithreading berguna untuk multiprocessor dan singleprocessor. Kegunaan untuk system multiprocessor adalah : Sebagai unit pararel atau tingkat granularitas pararelisme.

Peningkatan kinerja disbanding berbasis proses. Kegunaan multithreading pada singleprocessor, adalah : Kerja foreground dan background sekaligus di satu aplikasi. Penanganan asynchronous proseccing menjadi baik. Mempercepat eksekusi program. Pengorganisasian program menjadi lebih baik. Manfaat utama banyak thread di satu proses adalah memaksimumkan derajat kongkurensi antara operasi-operasi yang terkait erat. Aplikasi jauh lebih efisien dikerjakan sebagai sekumpulan thread disbanding sekumpulan proses. Karakteristik Thread Proses merupakan lingkungan eksekusi bagi thread-thread yang dimilikinya. Thread-thread di satu proses memakai bersama sumber daya yang dimiliki proses, yaitu : Ruang alamat. Himpunan berkas yang dibuka. Proses-proses anak. Timer-timer. Snyal-sinyal. Sumber daya-sumber daya lain milik proses. Tiap thread mempunyai property independen berikut seperti : Keadaan (state) eksekusi thread (running, ready dan sebagainya). Konteks pemroses. Thread dapat dipandang sebagai satu PC (program counter) tersendiri independen di satu proses. Beberapa penyimpan static per-thread untuk variable-variabel local. Paket Bahasan Perancangan Paket Thread Paket thread adalah sekumpulan primitive (misalnya library calls) untuk pemrogram berhubungan dengan thread di program aplikasi. Pertimbangan penting pembuatab paket thread adalah : Waktu penciptaan thread. Penanganan critical region di tingkat thread. Penanganan private global variables. Implementasi paket thread. Jenis-jenis Thread Berdasarkan Waktu Penciptaannya Kategori thread berdasarkan waktu penciptaan : 1. Static threads Jumlah thread yang akan dibuat ditentukan saat penulisan dan kompilasi program. Tiap thread langsung dialokasikan stack tetap. Keunggulan à sederhana. Kelemahan à tidak fleksibel. 2. Dynamic threads Penciptaan dan penghancuran thread on-the-fly saat eksekusi. Penciptaan thread biasanya menspesifikasikan fungsi utama thread (seperti pointer ke procedure) dan ukuran stack, dapat juga ditambah parameter-parameter lan seperti prioritas panjadwalan. Keunggulan à fleksibel. Kelemahan à lebih rumit.

Implementasi Paket Thread Implementasi paket thread : 1. Thread level kernel. Memudahkan koordinasi multithread seperti proses server. Tidak seboros kumpulan proses tradisional. Operasi manajemen thread sangat lebih boros. Kernel harus menyediakan semua feature. 2. Thread level pemakai. Kinerja luar biasa bagus disbanding thread level kernel. Tidak diperlukan modifikasi kernel. Fleksibelitas tinggi. Tidak manfaatkan multiprocessor. Untuk aplikasi dengan keterlibatan kernel yang kecil. Mengharuskan nonblocking system call. Struktur Sistem Operasi Multiprocessor System operasi serupa multiprogrammed uniprocessor. System operasi multiprocessor lebih kompleks karena terdapat banyak pemroses yang mengeksekusi task-task secara kongkuren. System operasi multiprocessor harus dapat mendukung eksekusi banyak task dan mengeksploitasi banyak pemroses untuk meningkatkan kinerja. Struktur system operasi multiprocessing, antara lain : 1. Separate supervisor Semua pemroses mempunyai kopian kernel, supervisor dan struktur data sendiri, menanggapi interupsi-interupsi pemakai yang berjalan di pemroses itu. Terdapat struktur data bersama untuk interaksi di antara pemroses-pemroses. Pengaksesan diproteksi menggunakan mekanisme sinkronisasi : Tiap pemroses mempunyai perangkat I/O dan system file sendiri. Terdapat sedikit coupling diantara pemroses-pemroses. Tiap pemroses bertindak sebagai system otonom dan independen. Dapat degradasi secara perlahan dalam menghadapi kegagalan pemroses karena hanya terdapat sedikit coupling diantara pemroses-pemroses. System sulit melakukan eksekusi pararel satu task tunggal (yang dipecah menjadi subtasksubtask dan menjadwalkan subtask-subtask di banyak pemroses secra kongkuren). Tidak efisien karena supervisor, kernel dan struktur data direplikasi di tiap pemroses. 2. Master-slave Satu pemroses disebut master, bertugas memonitor status dan memberikan kerja ke pemrosespemroses lain, slave. Slave-slave dipandang sebagai pool sumber daya yang dijadwalkan master. Pemroses-pemrose slave mengeksekusi program-program aplikasi. > Keungulan :

Efisien. Implementasi (sinkronisasi pengaksesan variable, dan sebagainya) mudah karena system operasi dieksekusi di satu pemroses tunggal. Sangat bergantung pada pemroses master. Master dapat mengalami botlencek dan berkonsekuensi tidak menggunakan pemroses-pemroses slave secara penuh. 3. Symmetric Semua proses otonom dan dipandang identik. Terdapt satu kopian supervisor atau kernel yang dapat dieksekusi semua pemroses secara kongkuren. > Masalah : Pengaksesan kongkuren struktur data bersama perlu dikendalikan agar terjaga intergritasnya. > Solusi : Cara paling sederhana adalah memandang seluruh system operasi sebagai satu critical section dan hanya memungkinkan satu pemroses mengeksekusi system operasi di satu waktu. Metode ini disebut floating master karena dapat dipandang sebagai konfigurasi master-slave dimana master di-apungkan/diangkat dari satu pemroses ke pemroses lain. Paling fleksibel dan berdaya tahan tinggi. Memungkinkan eksekusi satu task tunggal secara pararel. Dapat mendegradasi secara perlahan dalam menghadapi kegagalan. Penggunaan sumberdaya sangat efisien. Perancangan dan implementasi paling sulit.