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

dokumen-dokumen yang mirip
PERBEDAAN PROSES DAN THREAD PADA SISTEM INFORMASI

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

PROSES. Sistem Terdistribusi

THREAD Ulir utas thread

SISTEM OPERASI THREAD DAN MULTITHREADING

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

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

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

TUGAS SISTEM OPERASI

TUGAS SISTEM OPERASI

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

PROSES DAN THREADS DALAM SISTEM OPERASI

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

TUGAS Mata Kuliah : Sistem Terdistribusi

Sistem Terdistribusi Penanganan Proses

Proses dan Threads Dalam SISTEM OPERAS

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

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

Secara tidak langsung, proses merupakan program yang sedang dieksekusi.

Perbedaan Anatara Thread dan Proses

TUGAS SISTEM OPERASI THREAD

4. SISTEM OPERASI TERDISTRIBUSI

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

KONSEP PROSES (CONT.)

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

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

Sistem Operasi. Proses dan Thread

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

1. New 2. Running 3. Waiting 4. Ready 5. Terminated

Rahmady Liyantanto liyantanto.wordpress.com

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

Sistem Terdistribusi 2. Model arsitektur Terdistribusi

Bab 3: Proses-Proses. Konsep Proses

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

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

Pertemuan #2: Proses dan Thread

Proses. Sistem Terdistribusi Reza Aditya Firdaus, S.kom

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

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

Dimana thread digunakan?

Struktur Sistem Komputer

Danang Puspito Jati A

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

Bab 3: Proses-Proses. Konsep Proses

BAB 2 LANDASAN TEORI

Sistem Terdistribusi Proses. S1 Sistem Komputer Musayyanah, S.ST, MT

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

Struktur Sistem Komputer

Bab 10. Konsep Proses

PROSES SISTEM INFORMASI TERDISTRIBUSI

Algoritma Penjadwalan 2

SATUAN ACARA PERKULIAHAN UNIVERSITAS GUNADARMA

Sistem Operasi Proses- Dini Triasanti MANAJEMEN PROSES

CONTOH PENDSTRIBUSIAN HARDWARE

Struktur Sistem Operasi

Sistem Operasi - PCB (process control block)

Mata Kuliah : Sistem Operasi Kelas : Teknik Informatika 4

Perbedaan Proses dan Program

Nama : Didit Jamianto NIM : Kelas/Prodi : 22 / TI. Tugas Sistem Operasi

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

Bab 3.Proses dan Penjadualan

Bab 13. Konsep Penjadwalan

Process Control Block (PCB) Masing-masing proses Direpresentasikan oleh Sistem Operasi dengan menggunakan Process Control Block (PCB),

Sistem terdistribusi. Albertus dwi yoga widiantoro, M.Kom

Ch t ap 7 er Operating System (OS)

Arsitektur Komputer Sistem Operasi

SISTEM OPERASI (MANAJEMEN PROSES)

Sistem Operasi. Proses dan Penjadwalannya. Aditya Wikan Mahastama Antonius Rachmat C

Text Berisi kode programnya

BAB II LANDASAN TEORI

Sebagai Kordinator, yang memberikan fasilitas sehingga segala aktivitas yang kompleks dapat dikerjakan dalam urutan yang benar.

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

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

THREADS PADA WINDOWS Julius Bata /

1.PCB (process control block)

Andi Gustanto M / Kelas 22 / TI

SISTEM OPERASI TERDISTRIBUSI

Struktur OS. Fak. Teknik Jurusan Teknik Informatika.

MK. Pemrograman Berorientasi Objek PENGENALAN JAVA KARMILASARI

4 Implementasi Proses

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

Sistem Operasi Mobile

Model Pemrograman Paralel

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

Bab 2: Struktur Sistem Operasi. Komponen Sistem Secara Umum

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

Sekolah Tinggi Teknologi Adisutjipto Yogyakarta

Pertemuan 2. Struktur Sistem Operasi

RENCANA PROGRAM DAN KEGIATAN PEMBELAJARAN SEMESTER

Sus Pokok Bahasan dan Sasaran Belajar

SISTEM OPERASI. Belajar SO?

Arsitektur Sistem Operasi

Organisasi SistemKomputer, Pelayanan Sistem Operasi. Ptputraastawa.wordpress.com

Dukungan Sistem Operasi :

Model Sistem Terdistribusi

STRUKTUR SISTEM OPERASI

MODUL 3 STRUKTUR 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

Sistem Operasi Komputer

Sistem Terdistribusi. Sistem Operasi Terdistribusi oleh : Musayyanah, S.ST, MT

KONSEP PROSES STATUS PROSES

Transkripsi:

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

Komunikasi Sistem Komunikasi: bagaimana komunikasi antara object2 dalam sistem terdistribusi, khusus nya dengan menggunakan RMI (Remod Method Invokation) dan RPC (Remote Procedure Call). RMI dan RPC berbasiskan metode request dan reply.

Proses Sebagaimana proses bekerja, maka proses pada komputer adalah merubah state (keadaan statis/asal). Status dari sebuah proses didefinisikan dalam bagian oleh aktivitas yang ada dari proses tersebut. Tiap proses mungkin adalah satu dari keadaan berikut ini: New:Proses sedang dikerjakan/dibuat. Running: Instruksi sedang dikerjakan. Waiting:Proses sedang menunggu sejumlah kejadian untuk terjadi (seperti sebuah penyelesaian I/O atau penerimaan sebuah tanda/signal). Ready: Proses sedang menunggu untuk ditugaskan pada sebuah prosesor. Terminated: Proses telah selsesai melaksanakan tugasnya/ mengeksekusi. http://bebas.vlsm.org/v06/kuliah/sistemoperasi/

Nama-nama tersebut adalah arbitrer/berdasar opini, istilah tersebut bervariasi disepanjang sistem operasi. Keadaan yang mereka gambarkan ditemukan pada seluruh sistem. Penting untuk menyadari bahwa hanya satu proses dapat berjalan pada prosesor manapun pada waktu kapanpun. Namun, banyak proses yang dapat ready atau waiting. Keadaan diagram yang berkaitan dangan keadaan tersebut dijelaskan pada gambar(4.1) berikut:

Thread Thread: sekumpulan instruksi (proses) yang dieksekusi secara independen Thread, atau kadang-kadang disebut proses ringan (lightweight), adalah unit dasar dari utilisasi CPU. Di dalamnya terdapat ID thread, program counter, register, dan stack. Dan saling berbagi dengan thread lain dalam proses yang sama http://bebas.vlsm.org/v06/kuliah/sistemoperasi/2003/23/produk/20proses1.html#d EFINISITHREAD

Konsep Dasar Secara informal, proses adalah program yang sedang dieksekusi. Ada 2 jenis proses, proses berat (heavyweight) atau biasa dikenal dengan proses tradisional, dan proses ringan atau kadang disebut thread. Thread saling berbagi bagian program, bagian data dan sumber daya sistem operasi dengan thread lain yang mengacu pada proses yang sama. 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.

Multithreading Multithreading: suatu kemampuan yang memungkinkan beberapa kumpulan instruksi (proses) dijalankan secara bersamaan (time slicing) dalam sebuah program Multithreading bermanfaat untuk membuat proses yang interaktif, misalnya pada program permainan (game). Program tetap dapat menggerakkan beberapa objek sambil memberi kesempatan pengguna melakukan respon melalui mouse atau keyboard

Keuntungan Mulithreading mengijinkan program untuk berjalan terus walaupun pada bagian program tersebut di block atau sedang dalam keadaan menjalankan operasi yang lama/panjang. Sebagai contoh, multithread web browser dapat mengijinkan user berinteraksi dengan suatu thread ketika suatu gambar sedang diload oleh thread yang lain. Pembagian sumber daya: Secara default, thread membagi memori dan sumber daya dari proses. Keuntungan dari pembagian kode adalah aplikasi mempunyai perbedaan aktifitas thread dengan alokasi memori yang sama.

Keuntungan Ekonomis: Mengalokasikan memori dan sumber daya untuk membuat proses adalah sangat mahal. Alternatifnya, karena thread membagi sumber daya dari proses, ini lebih ekonomis untuk membuat threads. Pemberdayaan arsitektur multiprosesor: Keuntungan dari multithreading dapat ditingkatkan dengan arsitektur multiprosesor, dimana setiap thread dapat jalan secara parallel pada prosesor yang berbeda. Pada arsitektur prosesor tunggal, CPU biasanya berpindahpindah antara setiap thread dengan cepat, sehingga terdapat ilusi paralelisme, tetapi pada kenyataannya hanya satu thread yang berjalan di setiap waktu.

Threads in Distributed Systems Threads mendapatkan banyak kekuasaan dengan berbagi ruang alamat Multithreading dapat digunakan untuk meningkatkan kinerja node individu dalam sistem terdistribusi. Sebuah proses, yang berjalan pada mesin tunggal, misalnya, klien atau server, multithreaded digunakan untuk meningkatkan kinerja

Thread Usage in Nondistributed Systems Figure 3-1. Context switching as the result of IPC. Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Thread Implementation Figure 3-2. Combining kernel-level lightweight processes and user-level threads. Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Multithreaded Servers (2) Figure 3-4. Three ways to construct a server. Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

The Role of Virtualization in Distributed Systems Figure 3-5. (a) General organization between a program, interface, and system. (b) General organization of virtualizing system A on top of system B. Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Multithreaded Clients Keuntungan utama: menghilangkan latency (hambatan2) jaringan Masalah alamat seperti keterlambatan dalam mendownload dokumen dari server web dalam WAN Menyembunyikan latency dengan memulai beberapa thread: Satu untuk men-download teks (menampilkan setelah diterima) yang lain untuk men-download foto-foto, angka, dll Semua thread mengeksekusi panggilan sistem pemblokiran sederhana (blocking system calls). Browser menampilkan hasil saat data tiba.

Multithreaded Clients Bahkan lebih baik: jika server direplikasi, yang beberapa thread dapat dikirimkan ke situs terpisah. Hasil: Data dapat didownload dalam beberapa aliran paralel, meningkatkan kinerja bahkan lebih. Tentukan thread di klien untuk menangani dan menampilkan setiap aliran data yang masuk.

Multithreaded Servers Meningkatkan kinerja, memberikan penataan yang lebih baik Pertimbangannya: Tunggu permintaan Mengeksekusi permintaan (mungkin memerlukan blocking I / O) Kirim reply to client Beberapa model untuk pemrograman server : Single threaded Multi-threaded Finite-state machine

Threads in Distributed Systems - Servers Sebuah server single-threaded memproses satu permintaan pada satu waktu - permintaan lain harus menunggu. Kemungkinan solusi: membuat proses server baru untuk permintaan baru. Pendekatan ini menciptakan masalah kinerja (server harus berbagi informasi sistem file) Membuat thread server baru jauh lebih efisien. Pengolahan tumpang tindih dan struktur data bersama dapat diakses tanpa konteks switch tambahan.

Multithreaded Servers (1) Kepala memberi tugas kepada para pekerja Pekerja melakukan sesuai tugas masing2 Figure 3-3. A multithreaded server organized in a dispatcher/worker model. Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Virtualization Sistem operasi yang Multi program memberikan ilusi eksekusi simultan melalui virtualisasi sumber daya Menggunakan perangkat lunak untuk membuatnya terlihat seperti proses konkuren mengeksekusi secara bersamaan teknologi Mesin Virtual menciptakan mesin virtual yang terpisah, mampu mendukung beberapa sistem operasi yang berbeda.

keuntungan Perubahan Hardware lebih cepat dari perangkat lunak Misalkan Anda ingin menjalankan aplikasi yang sudah ada dan OS yang mendukung pada komputer baru: lapisan VMM memungkinkan untuk melakukannya. Sistem dikompromikan (kegagalan internal atau serangan eksternal) diisolasi. Menjalankan beberapa sistem operasi yang berbeda pada waktu yang sama

Peran Virtualisasi dalam Sistem Terdistribusi Portabilitas dari mesin virtual mendukung server untuk komputer baru Beberapa server dapat dengan aman berbagi dalam satu komputer Memiliki karakteristik Portabilitas dan keamanan (isolasi) http://www.cs.uah.edu/~weisskop/homepagecs490.htm

Interface yang ditawarkan oleh Sistem Komputer * Instruksi mesin unprivileged: tersedia untuk setiap program Instruksi privileged: antarmuka hardware untuk OS / software istimewa lainnya Sistem call: antarmuka untuk sistem operasi untuk applications & library functions API: Sebuah antarmuka OS melalui fungsi perpustakaan panggilan dari aplikasi.

Two Ways to Virtualize* Proses Virtual Machine: Program dikompilasi ke to intermediate code /kode menengah, dieksekusi oleh sistem runtime Virtual Machine Monitor: Virtual Machine Monitor: lapisan perangkat lunak meniru set instruksi; mendukung OS dan aplikasinya 27