Rabu, 09 Januari 2019

Pertemuan 09 Sistem Operasi 1 | UNIPMA

1. Pengertian Multiprocessing :
Multipengolahan/Multiprocessing) adalah istilah teknologi informasi yang merujuk kepada kemampuan pemrosesan komputer yang dilakukan secara serentak. Hal ini dimungkinkan dengan menggunakan dua CPU atau lebih dalam sebuah sistem komputer. Istilah ini juga dapat merujuk kepada dukungan sebuah sistem untuk mendukung lebih dari satu prosesor dan mengalokasikan tugas kepada prosesor-prosesor tersebut.
Multipengolahan' juga kadang merujuk kepada kemampuan eksekusi terhadap beberapa proses perangkat lunak dalam sebuah sistem secara serentak, jika dibandingkan dengan sebuah proses dalam satu waktu, meski istilah multiprogramming lebih sesuai untuk konsep ini. Multiprocessing sering diimplementasikan dalam perangkat keras (dengan menggunakan beberapa CPU sekaligus), sementara multiprogramming sering digunakan dalam perangkat lunak. Sebuah sistem mungkin dapat memiliki dua kemampuan tersebut, salah satu di antaranya, atau tidak sama sekali.

Jenis – Jenis Multiprocessing dan cara kerjanya

Asymmetric Multiprocessing (ASMP)
Di jenis ini tidak semua processor atau bisa disebut juga sebagai penjadwalan master/slave, salah satu dari processor berperan sebagai pengambil keputusan(MASTER) dalam pemrosesan, sedangkan yang lain bekerja menangani pemrosesan program dan aktivitasnya(SLAVE). Dalam scheduling jenis ini “Master” menjaga status dari semua proses dalam system dan menjadwalkan kinerja untuk semua processor “Slave”.Contoh prosesor master memilih proses yang akan dieksekusi, kemudian mencari prosesor yang available, dan memberikan instruksi Start processor. Prosesor slave memulai eksekusi pada lokasi memori yang dituju. Saat slave mengalami sebuah kondisi tertentu seperti meminta M/K, prosesor slave memberi interupsi kepada prosesor master dan berhenti untuk menunggu perintah selanjutnya.

Symmetric multiprocessing(SMP)
Penjadwalan SMP ( Symmetric multiprocessing) adalah pendekatan kedua untuk penjadwalan prosesor jamak. Dimana setiap prosesor menjadwalkan dirinya sendiri ( self scheduling). Semua proses mungkin berada pada antrian ready yang biasa, atau mungkin setiap prosesor memiliki antrian ready tersendiri. Bagaimanapun juga, penjadwalan terlaksana dengan menjadwalkan setiap prosesor untuk memeriksa antrian ready dan memilih suatu proses untuk dieksekusi. Jika suatu sistem prosesor jamak mencoba untuk mengakses dan meng- update suatu struktur data, penjadwal dari prosesor-prosesor tersebut harus diprogram dengan hati-hati; kita harus yakin bahwa dua prosesor tidak memilih proses yang sama dan proses tersebut tidak hilang dari antrian. Secara virtual, semua sistem operasi modern mendukung SMP, termasuk Windows XP, Windows 2000, Solaris, Linux, dan Mac OS X.

Contoh Penerapannya

(Asymmetric multiprocessing(ASMP)).
Untuk contoh penerapan  (Asymmetric multiprocessing(ASMP)). Pada saat kita meng-Klik Microsoft Word, processor “Master” akan membagi program tersebut menjadi perintah – perintah pemrosessan yang spesifik, lalu memberikan perintah tersebut kepada processor “Slave” yang masing – masing menjalankan process yang berbeda, misalnya dengan empat processor(processor satu sebagai “Master”), processor 2 akan menjalan proses yang berhubungan dengan program logika (operasi matematik), lalu processor 3 akan menjalankan proses pengeditan text, dan processor 4 bertanggung jawab pada prosess display yaitu tampilan Microsoft Word, namun juga ada kemungkinan processor 2 akan ikut menjalankan proses yang dikerjakan oleh prosessor 4, tetapi pada waktu yang berbeda tergantung urutan penjadwalan yang diatur oleh pro.essor 1.

(Symmetric Multiprocessing(SMP)),


Untuk penerapan (Symmetric Multiprocessing(SMP)), prosessor – prosessor menjadwalkan dirinya sendiri- sendiri(Self-Scheduling), jadi prosesor pada system operasi ini akan langsung mengerjakaan suatu program yang statusnya ready, masing – masing prosesor akan memeriksa antrian program yang sudah ready dan memilih satu untuk dieksekusi.Jika suatu sistem prosesor jamak mencoba untuk mengakses dan meng- update suatu struktur data, penjadwal dari prosesor-prosesor tersebut harus diprogram dengan hati-hati; kita harus yakin bahwa dua prosesor tidak memilih proses yang sama dan proses tersebut tidak hilang dari antrian. Secara virtual, semua sistem operasi modern mendukung SMP, termasuk Windows XP, Windows 2000, Solaris, Linux, dan Mac OS X

2. Pengertian multiprogramming
Multiprogramming adalah suatu metode yang memungkinkan dua buah program atau lebih dijalankan secara serentak dalam sebuah komputer dan berbagai sumber daya dalam waktu yang berlainan.Konsep multiprogramming bisa diibaratkan sebagai pekerja yang tak hanya menangani satu pekerjaan,tetapi juga menangani pekerjaan lain,sehingga tak ada waktu yang terbuang.
Konsep dasar dari multiprogramming ini adalah: suatu proses akan menggunakan CPU sampai proses tersebut dalam status wait (misalnya meminta I/O) atau selesai. Pada saat wait , maka CPU akan nganggur (idle). Untuk mengatasi hal ini, maka CPU dialihkan ke proses lain pada saat suatu proses sedang dalam wait, demikian seterusnya. (www.info-teknologi.com/konsep-dasar-penjadwalan-cpu/)
proses perhitungan waktu tunggu CPU pada multiprogramming, rumusnya adalah sebagai berikut:
Pada sistem multiprogramming, sistem operasi harus menyediakan mekanisme untuk manajemen memori, penjadwalan CPU dan manajemen disk. Sistem operasi multiprogram menyediakan supply untuk I/O routine. Sistem harus dapat mengalokasikan memory untuk beberapa job. Beberapa job yang sudah siap dieksekusi akan dipilih oleh system, job mana yang akan dieksekusi oleh CPU. Perangkat apa saja yang diperlukan oleh setiap job juga harus dialokasikan oleh sistem.
Fungsi Multiprogramming
Multiprogramming operating system berfungsi dengan cara menganalisa aktivitas processor yang sedang berlangsung pada komputer. Ketika processor sedang dalam masa idle (ketika komputer sedang berada di antara task – komputer memiliki kesempatan memanfaatkan downtime untk menjalankan task untuk program lainnya. Melayani banyak program yang tidak ada hubungannya satu sama lain dan dijalankan sekaligus dalam satu komputer yang sama.
Pelaksanaan instruksi yang diterapkan adalah:
  • Program dimuat ke dalam memori,
  • Program dijalankan sampai mengakses perangkat I/O
  • Berpindah (switch) ke pekerjaan lain,
  • Langkah tersebut berulang terus menerus,
  • Untuk proses perpindahan (switching), dilaksanakan oleh software
Cara Kerja Multiprogramming:
Multiprogramming berarti meletakkan lebih dari sebuah program di main memory. Cara ini dilakukan dengan membagi main memory menjadi beberapa partisi. Tiap partisi akan menyimpan sebuah program. Foreground partitions akan berisi program dengan prioritas yang lebih tinggi sedang background partitions akan berisi program dengan prioritas yang lebih rendah.

Meskipun setiap proses merupakan Entitiy yang berdiri sendiri, dan masing-masing memiliki program Counter dan status internal, beberapa proses sering kali harus berinteraksi dengan proses yang lain. Keluaran dari suatu proses dapat menjadi masukan bagi proses yang lain. Jika proses yang sedang menunggu masukan tidak menemukan masukan yang dikehendaki, proses tersebut diblok sampai masukan tersedia.
Pada saat proses diblok, secara logika proses tersebut tidak dapat dilanjutkan karena menuggu masukan yang belum tersedia. Dapat terjadi bahwa proses yang Ready dan dapat di-run terpaksa harus dihentikan karena sistem operasi arus mengalokasikan CPU ke proses lain untuk sementara waktu.
Proses dapat berada pada status berikut:
1. Submitt: Proses baru saja dikirimkan oleh user dan masih menunggu untuk dilayani.
2. Running: Proses benar-benar menggunakan CPU pada saat itu.
3. Ready: Proses berhenti sementara untuk memberikan kesempatan pada proses lain untuk menggunakan CPU.
4. Blocked: Proses tidak dapat di-Run sampai terjadi kejadian eksternal yang sesuai (misalkan selesainya operasi input/output atau telah tersedianya data input).
5. Finished: Proses telah dilaksanakan secara sempurna.
Di antara status Running, Ready dan Blocked, hanya terdapat 4 kemungkinan perubahan status, yaitu:
1. Running ke Blocked: Terjadi jika proses diblok, karena menunggu masukan atau menunggu selesainya aktivitas I/O.
2. Running ke Ready: Terjadi jika Process Scheduler menghentikan proses yang sedang running untuk memberikan kesempatan pada proses lain menggunakan CPU.
3. Blocked ke Ready: Terjadi jika ada kejadian eksternal yang menyebabkan proses dapat dijalankan kembali. Misalnya datangnya input atau selesainya suatu aktifitas I/O.
4. Ready ke Running: Terjadi jika proses siap untuk menggunakan CPU dan masukan yang sesuai untuk proses tersebut telah tiba.
Kegunaan Mutiprogramming:
Multiprogramming tidak melakukan pemrosesan instruksi-instruksi dan beberapa program secara bersamaan waktu, tetapi memproses sebagian instruksi dari suatu program, kemudian berpindah memproses sebagian instruksi yang lainnya lagi dan program yang lain dan seterusnya. Tugas dari OS untuk menangani perpindahan (switch) pemrosesan dari satu program ke program yang lainnya.

Tidak ada komentar:

Posting Komentar

Pertemuan 10 Sistem Operasi 1 | UNIPMA

PENGERTIAN VIRTUAL MACHINE: virtual machine atau biasa disebut VM adalah sebuah duplikat yang efisien dan terisolasi dari suatu mesi...