AOK Makalah Manajemen Proses.doc

MAKALAH
MANAJEMEN PROSES : MULTIPROGRAMING,
MULTITASKING, DAN MULTITHREADING.
Arsitektur dan Organisasi Komputer
yang dibina oleh
Bapak Wijaya Kurniawan, ST., MT

Oleh :
Muhammad Khatib Barokah (135150200111021)
Yudha Akbar Pramana (135150207111015)
Septian Dwi Kuncoro (135150200111024)
Ahmad Wildan Mukafi (135150201111015)

UNIVERSITAS BRAWIJAYA
PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
JURUSAN TEKNIK INFORMATIKA

DAFTAR ISI
Halaman
DAFTAR ISI...................................................................................................i
BAB I PENDAHULUAN...............................................................................1

1.1 Latar Belakang................................................................................1
1.2 Rumusan Masalah...........................................................................3
1.3 Tujuan.............................................................................................4
BAB II PEMBAHASAN.................................................................................5
2.1 Multitasking....................................................................................5
2.2 Multiprograming.............................................................................10
2.3 Multireading....................................................................................12
BAB III PENUTUPAN...................................................................................27
3.1 Kesimpulan.....................................................................................27
DAFTAR PUSTAKA......................................................................................2

i

BAB I
PENDAHULUAN

1.1 Latar Belakang
Arsitektur dan organisai komputer adalah salah satu mata kuliah yang
bertujuan memberikan dasar pengetahuan arsitektur dan organisasi komputer kepada
mahasiswa, yang meliputi komputer dasar dan perkembangannya .

Dalam teknologi komputer yang ada sat ini agak sulit untuk dapat
membayangkan bagaimana komputer masa depan. Dengan teknologi yan ada saat ini
saja kita seaakan sudah dapat “menggenggam dunia” .
Ahli-ahli sains komputer sekrang juga sedang mencoba merangcang
komputer yang tidak memerlukan penulisan dan pembuatan program oleh pengguna.
Komputer tanpa program(programless computer) ini mungkin membentuk ciri utama
generasi komputer yang akan datang. Secara perinsip ciri-ciri komputer masa
mendatang adala lebih canggih dan lebih murah dan memiliki kemampuan lebih
(multitasking) diantaranya melihata, mendengar, berbicara dan berbipikir serta
mampu membuat kesimpulan seperti manusia. Ini berarti komputer memiiki
kecerdasan buatan yang mendekati kemampuan dan perilaku manusia. Kelebihan
lainya lagi, kecerdasan untuk meprediksi sebuah kejadian yang akan terjadi, bisa
berkomunikasi langsung dengan manusia, dan bentuknya semakin kecil.
Kemunudian untuk mewujudkan hal itu, kami membuat makalah ini sebagai
bahan pembelajran dan acuan mahasiswa untuk belajar, dan makalah ini sebagai
tugas mata kuliah yang di berikan oleh Dosen pembimbing. Dalam hal ini kami akan
menyusun Materi mata kuliah Arsitektur dan organisasi komputer yang berjudul “
Multiprograming, Multitasking dan Multithereading”.

1.2 Rumusan Masalah


1.2.1 Apa itu Multiprograming?
1.2.2 Bagaimana cara kerja Multiprograming?
1.2.3 Apa itu Multitasking?
1.2.4 Bagaimana cara kerja Multitasking?
1.2.5 Apa itu Multithreading?
1.2.6 Bagaimana cara kerja Multithreading ?

1.3 Tujuan
1.3.1 Mengetahui apa itu Multiprograming
1.3.2 Mengetahui cara kerja Multiprograming
1.3.3 Mengetahui apa itu Multitasking
1.3.4 Mengetahui cara kerja Multitasking
1.3.5 Mengetahui apa itu Multithreading
1.3.6 Mengetahui cara kerja Multithreading

BAB II
PENJELASAN
2.1 Multiprogramming
Multiprograming adalah salah satu teknik pemrosesan jadwal di mana

tugas(task) yang sedang berjalan tetap berjalan sampai ia melakukan operasi yang
membutuhkan waktu untuk menunggu respon dari luar(external event) misal dengan
membaca data dari disket,CD dan sebaginya, atau sampai komputer memaksa untuk
menukar tugas yang sedang berjalan dengan tugas lainya. Sistem operasi yang
menggunakan multi programing sebagai scheduler-nya bertujuan untu
memaksimalkan penggunaan CPU.
Usaha pertama untuk membuat sistem operasi berbasis multiprogramig di
lakukan pada tahun 1960an. Beberapa program yag berlainan di dlam batch di-load
ke memorykomputer, dan program yang pertama akan di jalankan. Saat program
tersebut mencapai intruksi untuk menunggu akses ke periperal, konteks dari program
ini di simpan, dan program berikutnya di memory mulai di jalankan. Proses ini
berulang terus sampai semua program selesai di jalankan.
Pelaksanaan intruksi yang di terapkan adalah:
 Program di muat ke dalam memori
 Program di jalankan sampai mengakses perangkat I/O
 Berpindah (switch) ke pekerjaan lain
 Langkah tersebut berulang terus menerus
 Untuk proses perpindahan(Switching) dilaksanakan oleh software

.


2.2 Cara kerja Multiprograming
Multiprograming adalah proses meletakkan lebih dari satu program di main
memory. Cara ini di lakukan dengan membagi main memory menjadi beberapa partisi
. tiap partisi akan menyimpan sebuah program. Foreground partition akan berisi
program dengan prioritas yang lebih tinggi sedang background partition akan berisi
program dengan prioritas yang lebih rendah.
Meskipun setiap proses murupakan entity yang berdiri sendiri, dan masingmasing memiliki program Counter dan status internal, bebrapa proses sering kali
harus berinteraksi dengan proses lain. Keluaran dari sutu proses dapat menjadi
masukan bagi proses yang lain. Jika proses yang sedang menunggu masuk tidak
menemukan masukan di kehendaki, proses tersebut di blok sampai masukan tersedia.
Pada saat proses di blok, secara logika proses tersebut tidak dapat di lanjutkan
karena menunggu masukan yang belum tersedia. Dapat terjadi bahwa proses yang
ready dan dapat di run terpaksa di hentikan karena sisyem operasi harus
mengalokasikan CPU ke proses lain untuk sementaran waktu.
Proses dapat berada pada status berikut:
 Submit adalah Proses baru saja di kirimkan oleh user dan masih
menunggu untuk di layani.
 Running adalah proses benar-benar menggunkan CPU pada saat itu.
 Ready adalah proses berhenti sementerara untuk memberikan kesempatan

pada proses lain untuk menggunkan CPU.
 Blocked adalah proses tidak dapat di-Run sampai terjadi kejadian external
yang sesuai(misalkan selesainya operasi input/outpur atau telah
tersedianya data input).
 Finished adalah proses telah di laksanakan secara sempurna.

Diantra status Running, Ready dan Blocked hanya terdapat 4 kemungkinan
perubahan status yaitu:
 Running ke Blocked terjadi jika proses di blok, karena menunggu
masukan atau menunggu selesainya aktivitas I/O
 Running ke Ready terjadi jika proces Scheduler menghentikan proses
yang sedang runing untuk memberi kesempatan pada proses lain
mengunakan CPU
 Blocked ke Ready terjadi jika ada kejadian eksternal yang menyebabkan
proses dapat di jalankan kembali. Misal datangya input atau selesainya
suatu atifitas I/O
 Ready to Running terjadi jika proses isap untuk menggunakan CPU dan
masukan yang sesuai untuk proses tersebur telah tiba.
2.3 Multitasking
Multitasking adalah proses yang memungkinkan pengguna untuk melakukan

lebih dari satu tugas (seperti pengoperasian sebuah program aplikasi ) pada suatu
waktu. Sistem operasi ini mampu melacak di mana berada keberadaan tugasmu ini
dan pergi dari satu ke yang lain tanpa kehilangan informasi. Microsoft Windows 2000
, IBM OS/390 , dan Linux adalah contoh dari sistem operasi yang dapat melakukan
multitasking (hampir semua sistem operasi saat ini bisa). Ketika kamu membuka Web
Browser dan kemudian membuka program lain pada saat yang sama, Kamu akan
membuat sistem operasimu untuk melakukan multitasking.
Mampu melakukan multitasking tidak berarti bahwa jumlah tugas yang
dimultitasking tidak terbatas, melainkan ada batasan. Setiap tugas mengkonsumsi
penyimpanan sistem dan sumber daya lainnya. Karena semakin banyak tugas yang
mulai, sistem dapat memperlambat atau mulai kehabisan tempat penyimpanan
bersama. Sangat mudah untuk mengacaukan multitasking dengan multithreading, ide
yang agak berbeda.

2.4 Cara kerja Multitasking
Cara kerja Multitasking adalah proses dengan menjadwalkan pekerjaan mana
yang dapat berjalan dalam satu waktu, dan kapan pekerjaan yang lain menunggu
untuk di olah dapat dikerjakan. Kondisi mengalokasikan CPU dari pekerjaan satu ke
pekerjaan yang alain di sebut context switch. Ketika context switch terjadi dengan
sangat cepat, kondisi ini cukup memberikan ilusi pengelolahan paralel. Bahkan dalam

komputer yang memiliki lebih dari satu CPU. Multitasking memperoleh lebih banyak
pekerjaan di jalankan di bandingkan dengan jumlah CPU yang tersedia.
2.5 Multithreading
Multithreading adalah kemampuan sebuah program yang atau sistem operasi
proses untuk mengelola user oleh lebih dari satu user pada satu waktu dan bahkan
mengelola beberapa permintaan oleh user yang sama tanpa harus memiliki beberapa
salinan menjalankan program di komputer. Setiap permintaan user untuk suatu
program atau system service (dan di sini user juga dapat program lain) yang terus
melacak sebagai jalur dengan identitas terpisah. Sebagai program bekerja atas nama
permintaan awal untuk jalur itu dan terganggu oleh permintaan yang lain, status
pekerjaan akan terus terlacak sampai pekerjaan selesai.

2.6 Cara kerja Multireading
Adapun cara kerja Multithreading. Pertama, membuat prosedur dan
menentukan alokasi memori yang diperlukan sehingga thread dapat dijalankan yaitu
dengan menggunakan metode start. Kedua, menentukan prioritas thread. Prioritas
thread digunakan untuk menentukan thread yang mana yang terlebih dahulu untuk
dieksekusi. Ketiga, setelah ditentukan prioritas thread , untuk menjalankan thread,
thread harus diaktifkan terlebih dahulu. Keempat, Semua eksekusi program thread
dilakukan oleh CPU. Jika thread 1 mendapatkan intruksi untuk menjalankan thread

pertama kali, maka thread yang lainnya harus menunggu giliran dalam suatu proses
tunggu untuk memperoleh giliran mengeksekus, jika thread 1 pada saat melakukan
eksekusi memanggil wait maka thread 1 di non aktifkan dan thread yang lainnya
mendapat giliran untuk mulai eksekusi. Jika thread 1 ingin diaktifkan kembali maka
menggunakan metode notify, sehingga memberikesempatan thread lain yang telah
menunggu dapat berjalan lagi. ( Fungsi notify perlu dipanggil oleh beberapa thread,
jika tidak thread yang memanggil wait akan menunggu selamanya. Thread yang
menunggu tidak secara otomatis diaktifkan kembali pada saat tidak ada thread lain
yang bekerja). Kelima, program thread akan tetap melakukan eksekusi sampai ada
perintah untuk berhenti. Untuk mengakhiri eksekusi dari program thread
menggunakan fungsi close.

BAB III
PENUTUP
3.1 Kesimpulan
Proses adalah sebuah program yang sedang dijalankan termasuk sistem operasi
yang disusun menjadi sejumlah proses sequential. Sedangkan program adalah
kumpulan instruksi yang ditulis ke dalam bahasa yang dimengerti sistem operasi.
Proses berisi instruksi dan data. program counter dan semua register pemroses, dan
stack berisi data sementara seperti parameter rutin, alamat pengiriman dan variabelvariabel lokal. Hal-hal yang berkaitan dengan proses antara lain :

 Multiprogramming
 Multprocessing
 Multithreading
Status proses atau bagian keadaan proses memiliki tiga elemen. yaitu:
a) Running
b) Blocked
c) Ready
Operasi-operasi terhadap proses antara lain :
1.
2.
3.
4.
5.
6.
7.
8.
9.

Penciptaan proses (create process)
Penghancuran/terminasi proses (destroy a process)

Penundaan proses (suspend a process)
Pelanjutan kembali proses (resume process)
Pengubahan prioritas proses
Memblok proses
Membangunkan proses
Menjadwalkan proses
Memungkinkan proses berkomunikasi dengan proses lain

DAFTAR PUSTAKA
Gie Spektra, 2011, Pengertian multiprogramming, multiprocessing, multi
tasking, time sharing, http://purifyzola.blogspot.com/2011/09/pengertianmultiprogramming.html, di akses pada 26 Maret 2014
Anonym, 2013, Definisi Batch System, Multiprograming, Time Sharing,
Personal Computing, Embedded System, Handheld Device,
http://rochmadudinus.blogspot.com/2013/03/definisi-batch-systemmultiprograming.html. Di akses pada 26 Maret 2014
Eric, 2010, Multiprogramming,
http://erichgolf2002.wordpress.com/2010/07/09/multiprogramming/, di akses
pada 26 Maret 2014.