- SlideBoom

advertisement
MATAKULIAH SISTEM OPERASI – PENDIDIKAN TEKNIK INFORMATIKA 2008
PROSES
Kelompok 4
• Nur Chabibah R.
• Rika Milliyana
• Kartikadyota K.
• Akhmad Dwi N.
• Risan Pratikto W.
…PROSES…
KONSEP PROSES
THREAD
Symmetric Multiprocessing (SMP)
MANAJEMEN THREAD & SMP
MIKROKERNEL
1. Pengertian
• Program yang dieksekusi, dan terdapat program counter,
stack dan data section.
• Sebuah proses membutuhkan beberapa sumber daya untuk
menyelesaikan tugasnya.
• Sumber daya tersebut dapat berupa CPU time, memori,
berkas, dan perangkat M/K.
KONSEP PROSES
1. Pengertian
• Program counter
Sebuah stack yg menyimpan alamat dari instruksi yang akan
dieksekusi selanjutnya.
• Stack
berisi data sementara (parameter fungsi/ metode, return
address, dan variabel lokal).
• Data section
menyimpan variabel-variabel global.
KONSEP PROSES
2. Status Proses
Status dari sebuah proses didefinisikan dalam bagian oleh
aktivitas yang ada dari proses tersebut.
 saat instruksi2 dari sebuah proses dieksekusi
 saat proses menunggu sebuah event
 saat proses siap untuk dieksekusi oleh
sebuah prosesor
• New
 saat proses baru saja dibuat
• Terminated  saat proses telah selesai dieksekusi
• Running
• Waiting
• Ready
KONSEP PROSES
2. Status Proses
Jika status proses running…
• Terminated, jika program telah selesai dieksekusi
• Ready, jika waktu yang disediakan OS telah habis dan telah
terjadi interrupt
• Waiting, jika proses menunggu selesainya sebuah event
yang terjadi
KONSEP PROSES
3. Process Control Block (PCB)
Menggambarkan setiap proses di dalam SO, menyimpan
informasi mengenai suatu proses, yang dibutuhkan oleh sistem
operasi.
•
•
•
•
•
•
Status proses
Program counter
CPU register
Informasi managemen memori
Informasi pencatatan
Informasi status M/K
KONSEP PROSES
…PROSES…
KONSEP PROSES
THREAD
Symmetric Multiprocessing (SMP)
MANAJEMEN THREAD & SMP
MIKROKERNEL
MENU THREAD...
Definisi Thread
Keuntungan Thread
Status Thread
Model Multithreading
Manajemen Thread
THREAD
1. Definisi Thread
Thread merupakan unit dasar dari
penggunaan CPU
Thread terdiri dari Thread_ID,
program counter, register set, dan
stack
Thread juga sering disebut
lightweight process
THREAD
1. Definisi Thread
Perbedaan antara proses dengan thread tunggal dengan
proses dengan thread yang banyak (Multithreading) adalah
proses dengan thread yang banyak dapat mengerjakan lebih
dari satu tugas pada satu satuan waktu
THREAD
2. Keuntungan Thread
Meliputi peningkatan respon dari
user, pembagian sumber daya
proses, ekonomis, dan kemampuan
untuk mengambil keuntungan dari
arsitektur multiprosesor.
THREAD
3. Status Thread
• New
Sebuah thread pada keadaan ini ada ketika
objek dari thread tersebut dibuat
• Runnable
Memanggil start() method untuk
mengalokasikan memori bagi thread baru.
• Blocked
Thread dihentikan namun dia tetap
waspada jika sewaktu-waktu diperlukan
kembali.
• Dead
Sebuah thread dipindahkan ke keadaan
dead (mati) ketika run() method berhenti
atau ketika stop() method dipanggil.
THREAD
4. Model Multithreading
 Model many to one
 Model one to one
 Model many to many
THREAD
a. Many to One
• Dalam model ini, hanya satu thread
yang bisa diakses, jadi multiple thread
tidak dapat berjalan secara paralel
pada multiprocessor.
• Kelemahan model ini adalah multi
threading tidak dapat berjalan atau
bekerja secara paralel di dalam
multiprocessor dikarenakan hanya satu
thread yang bisa mengakses kernel
dalam satuan waktu.
MODEL MULTITHREADING
b. One to One
• Model ini menyediakan lebih banyak
concurrency dibandingkan model many to one
• Model ini lebih sinkron dengan mengizinkan
multiple thread untuk berjalan secara paralel
dalam multiprocessor.
• Kelemahan model ini adalah setiap
pembuatan thread pengguna memerlukan
pembuatan thread kernel, karena pembuatan
thread dapat menurunkan kinerja dari sebuah
aplikasi maka implementasi dari model ini,
jumlah thread dibatasi oleh sistem.
MODEL MULTITHREADING
c. Many to Many
• Model ini memultipleks banyak thread tingkatan
pengguna ke thread kernel yang jumlahnya lebih
sedikit atau sama dengan tingkatan pengguna.
• Model ini tidak menderita kelemahan dari dua
model diatas developer dapat membuat user
thread sebanyak yang diperlukan
• Kernel thread yang bersangkutan dapat berjalan
secara paralel dalam multiprocessor, dan juga
ketika suatu thread menjalankan blocking
system call maka kernel dapat menjadwalkan
thread lain untuk melakukan eksekusi.
MODEL MULTITHREADING
5. ManajemenThread
• Suspend()
Berfungsi untuk menunda eksekusi dari thread yang sedang berjalan.
• Sleep()
Berfungsi untuk menempatkan thread yang sedang berjalan untuk tidur
dalam beberapa waktu.
• Resume()
Hasil eksekusi dari thread yang sedang ditunda.
• Stop()
Menghentikan eksekusi dari sebuah thread; sekali thread telah
dihentikan dia tidak akan memulainya lagi.
THREAD
…PROSES…
KONSEP PROSES
THREAD
Symmetric Multiprocessing (SMP)
MANAJEMEN THREAD & SMP
MIKROKERNEL
1. Definisi SMP
• Tightly Coupled System,
– Mempunyai lebih dari satu prosesor
• Dapat berkomunikasi
• Membagi bus, clock, perangkat memory, dan peripheral.
– Keuntungan
: meningkatkan throughput, meningkatkan
kehandalan sistem, serta ekonomis.
“setiap prosesor menjalankan sistem operasi yang
identik dan komunikasi antar prosesor jika diperlukan”
• Ex: UNIX versi Encore’s dan Windows 2000
SYMMETRIC MULTIPROCESSING (SMP)
2. Perbedaan SMP & ASMP
SYMMETRIC MULTIPROCESSING (SMP)
3. Organisasi SMP
• Setiap prosesor
memiliki akses ke
memori utama dan
perangkat-perangkat
I/O bagi-pakai melalui
mekanisme
interkoneksi tertentu
• Prosesor dapat
berkomunikasi
dengan prosesor
lainnya melalui
memori
SYMMETRIC MULTIPROCESSING (SMP)
…PROSES…
KONSEP PROSES
THREAD
Symmetric Multiprocessing (SMP)
MANAJEMEN THREAD & SMP
MIKROKERNEL
1. Karakteristik Penting Proses W2K
• Proses W2K diimplementasikan sebagai objek
• Proses yang dapat dieksekusi dapat berisi sebuah thread
atau lebih
• Objek Proses dan objek thread memiliki kemampuan
sinkronisasi bawaan.
MANAJEMEN THREAD & SMP
1. Karakteristik Penting Proses W2K
MANAJEMEN THREAD & SMP
2. Objek Proses & Objek Thread
• W2K menggunakan dua jenis objek yang berkaitan
dengan proses : proses dan thread
– Sebuah proses adalah suatu entity yang berkenaan dengan
user job atau aplikasi yang memeliki sumber daya, seperti
memori, dan file yang terbuka.
– Thread adalah satuan kerja yang dispatchable yang dapat
melakukan eksekusi secara sekuential dan dapat diinterupsi,
sehingga prosesor dapat beralih ke thread lainnya.
MANAJEMEN THREAD & SMP
OBJEK PROSES
WINDOWS 2000
MANAJEMEN THREAD & SMP
OBJEK THREAD
WINDOWS 2000
MANAJEMEN THREAD & SMP
3. Keadaan Thread 2000
MANAJEMEN THREAD & SMP
4. Multithreading
• W2K mendukung konkurensi proses-proses karena thread
di dalam proses yang berbeda dapat melakukan eksekusi
secara bersamaan.
• Sejumlah thread yang terdapat di dalam sebuah proses
dapat dialokasikan ke prosesor-prosesor yang berbeda dan
melakukan eksekusi secara konkuren.
• Thread yang berada dalam sebuah proses dapat saling
melakukan tukar informasi melalui ruang alamat
umumnya dan memiliki akses ke sumber daya bagi pakai
proses tersebut.
MANAJEMEN THREAD & SMP
5. Dukungan SMP
• Thread setiap proses, termasuk thread milik executive, dapat
beroperasi pada sembarang prosesor.
• Dalam ketidakadaan keterbatasan afinitas, microkernel mengassign thread yang berada dalam kedaaan ready ke prosesor
berikutnya yang tersedia. Hal ini akan menjamin bahwa tidak
akan ada prosesor berada dalam keadaan idle atau sedang
melakukan eksekusi thread berprioritas rendah pada saat
thread berprioritas tinggi berada dalam keadaan siap.
• Beberapa thread yang berasal dari sebuah proses yang sama
dapat dieksekusi secara simultan pada sejumlah prosesor.
MANAJEMEN THREAD & SMP
…PROSES…
KONSEP PROSES
THREAD
Symmetric Multiprocessing (SMP)
MANAJEMEN THREAD & SMP
MIKROKERNEL
MENU MikroKernel...
Definisi Kernel
Desain Kernel
Definisi Mikrokernel?
Fungsi Mikrokernel
Kelebihan Mikrokernel
SO yang menggunakan Mikrokernel
MIKROKERNEL
1. Definisi Kernel
Apa itu kernel??
“Kernel adalah suatu perangkat lunak yang
menjadi bagian utama(komponen sentral) dari
sebuah sistem operasi.”
Tugasnya melayani bermacam program aplikasi untuk mengakses
perangkat keras secara aman. Ia mengatur hal-hal seperti interrupt
handler(untuk menyediakan layanan interupsi), process
scheduler(membagi-bagi proses dalam prosesor), memory
management, I/O, dan sebagainya. Atau dengan kata lain, ia
adalah jembatan antara hardware dengan software.
MIKROKERNEL
2. Desain Kernel
Para arsitek sistem operasi mengembangkan kernel sistem
operasi yang pada akhirnya terbagi menjadi empat bagian
yang secara desain berbeda, sebagai berikut:
• Kernel monolitik
• Mikrokernel
• Kernel hibrida
• Exokernel
MIKROKERNEL
3. Definisi MikroKernel
Apa itu mikrokernel??
Microkernel adalah inti (kernel) dari operating system
yang paling sederhana, tidak ada fasilitas apapun,
menjadikannya kernel ini berukuran sangat kecil dan
biasanya sangat stabil (hampir bisa dipastikan
tidak ada lagi bugs-nya).
MIKROKERNEL
4. Fungsi MikroKernel
Microkernel hanya memiliki fungsi manajemen sederhana untuk
men-deliver services :
• low-level address space management: sistem pengalamatan
physical atau virtual untuk memory, network host, peripheral,
dan lain-lain
• thread management: pengaturan proses (='molekul') yang
terpecah menjadi thread (='atom') dan dijalankan secara
paralel.
• inter-process communication (IPC) : pengaturan komunikasi
antar thread pada satu atau beberapa proses. IPC bisa punya
ruang lingkup di dalam atau antar komputer.
MIKROKERNEL
5. Kelebihan MikroKernel
• Interface yang seragam
• Extensibility
• Flexibility
• Portability
• Reliability
• Support for object-oriendted OS
MIKROKERNEL
6. SO yang Menggunakan MikroKernel
• IBM AIX, sebuah versi UNIX dari IBM
• Amoeba, sebuah kernel yang dikembangkan untuk tujuan
edukasi
• Kernel Mach, yang digunakan di dalam sistem operasi
GNU/Hurd, NexTSTEP, OPENSTEP, dan Mac OS/X
• Minix, kernel yang dikembangkan oleh Andrew
Tanenbaum untuk tujuan edukasi
• Symbian OS, sebuah sistem operasi yang populer
digunakan pada handphone, handheld device, embedded
device, dan PDA Phone.
MIKROKERNEL
KONSEP DASAR – THREAD – SYMMETRIC MULTIPROCESSING – MIKROKERNEL
Terima Kasih ...
Download