Anda di halaman 1dari 15

SKEMA DASAR SISTEM KOMPUTER

PEMROSES
Berfungsi mengendalikan operasi komputer & melakukan fungsi pemrosesan data.

Langkah-langkah pemroses :
- mengambil instruksi yang dikodekan secara biner dari memori utama
- mendekode instruksi menjadi aksi-aksi sederhana
- melaksanakan aksi – aksi

Skema blok pemroses

CU (Control
Unit)
ALU (Aritmetic

Register-register
Register terlihat Register kendali & status
programmer Register Data Register Alamat & Buffer :
: - MAR
- General Purpose Register - MBR
- Special Purpose Register - I/O AR
Register Alamat : - I/O BR
- Register indeks Register Eksekusi Instruksi
- Register penunjuk :
segmen - PC
- Register penunjuk stack - IR
- Register penanda Register Informasi Status :
Sign, Zero, Carry, Equal,
Interupt enable / disable,
Supervisor
MEMORI
Memori berfungsi untuk menyimpan data dan program. Hirarki memori berdasarkan kecepatan
akses :

Tercepat Terlambat
Register Magnetic
Chace tape
memory
Main

♦ Harga : semakin ke bawah, harga semakin murah, harga dihitung dari rasio rupiah per bit
data
♦ Kapasitas : semakin ke bawah, kapasitas makin terbatas
♦ Kecepatan akses : semakin ke bawah, semakin lambat
♦ Frekuensi pengaksesan : semakin ke bawah, semakin rendah frekuensi pengaksesan

EKSEKUSI INSTRUKSI
Tahap pemrosesan instruksi :
1. Pemroses membaca instruksi dari memori (fetch)
2.Pemroses mengeksekusi instruksi (execute) Eksekusi program berisi pengulangan fetch dan
execute. Pemrosesan 1 instruksi disebut satu siklus instruksi.

MODE EKSEKUSI INSTRUKSI


1. Mode pemakai (user mode) Mode dengan kewenangan rendah, program pemakai (aplikasi)
biasa dieksekusi dalam mode ini.
2. Mode sistem (system mode) Mode dengan kewenangan tinggi. Biasanya rutin sistem atau
kendali atau kernel dieksekusi dengan mode ini.
SISTEM OPERASI

Tujuan mempelajari sistem operasi :


1. Agar dapat merancang sendiri
2. Dapat memodifikasi sistem yang telah ada sehingga sesuai dengan kebutuhan
3. Dapat memilih di antara berbagai alternatif sistem operasi
4. Memaksimalkan penggunaan sistem operasi
5. Konsep dan teknik sistem operasi dapat diterapkan pada aplikasi-aplikasi lain.

Pengertian sistem operasi secara umum


Sistem operasi sebagai resource manager yaitu pengelola seluruh sumber daya yang terdapat
pada sistem komputer dan sebagai extended machine yaitu menyediakan sekumpulan layanan
ke pemakai sehingga memudahkan dan menyamankan penggunaan serta pemanfaatan sumber
daya sistem komputer.

Prinsip dasar sistem operasi


Sistem operasi merupakan program komputer yang berisi perintah-perintah (command) dan
bertugas menjembatani pengertian manusia dengan komputer, sehingga komputer dapat
bekerja sesuai keinginan.
Definisi sistem operasi
1. Sistem operasi adalah software yang mengontrol hardware.
2. Program yang menjadikan hardware lebih mudah untuk digunakan
3. Kumpulan program yang mengatur kerja hardware sesuai keinginan user
4. Manager sumber daya atau pengalokasian sumber daya komputer, seperti mengatur
memori, printer, dll
5. Sebagai program pengendali, yaitu program yang digunakan untuk mengontrol program yang
lain
6. Sebagai kernel, yaitu program yang terus-menerus running selama komputer dihidupkan
7. Sebagai guardian yang menjaga komputer dari berbagai kejahatan komputer.

SEJARAH PERKEMBANGAN SISTEM OPERASI


1. Generasi pertama (tahun 1945 an – 1955 an)
Komputer elektronik digital pertama tidak memiliki sistem operasi. Sistem komputer
diberi instruksi yang harus dikerjakan secara langsung sehingga semua operasi dilakukan
secara manual dan hanya bisa digunakan untuk menghitung + - * /.
2. Generasi kedua (tahun 1955 – 1965)
Sistem komputer belum dilengkapi sistem operasi, tetapi beberapa fungsi dasar sistem
operasi sudah ada, misal FMS (Fortran Monitoring System) dan IBSYS. Sistem komputer
masa ini adalah batch processing system, yaitu pekerjaan (job) dikumpulkan dalam satu
rangkaian kemudian dieksekusi secara berurutan. Tahun 1964, IBM mengeluarkan
keluarga komputer System/360 yang dirancang agar kompatibel dengan banyak
perangkat keras, menggunakan sistem operasi OS/360 dan berevolusi menjadi System
370.
3. Generasi ketiga (tahun1965 – 1980)
Sistem komputer dikembangkan untuk melayani banyak pemakai interaktif sekaligus
dan online (secara langsung dihubungkan ke komputer). Sistem komputer menjadi
multiuser dan multiprogramming.
4. Generasi keempat (tahun 1980 – 199x)
Ditandai dengan meningkatnya kemampuan komputer dekstop (PC) dan teknologi
jaringan TCP/IP. Pada generasi ini menuntut kenyamanan dalam mengoperasikan sistem
komputer, yaitu dengan adanya GUI (graphical user interface = antarmuka komputer
berbasiskan grafis yang nyaman). GUI dimulai dengan X Windows, kemudian Macintosh,
Sun View dan MS Windows. Pada 1990 dimulai era komputasi tersebar (distributed
computing) dengan teknologi distributed operating system yaitu sistem operasi yang
diperuntukkan jaringan komputer. Pemakai tak perlu menyadari keberadaan komputer-
komputer yang terhubung, dimana pengalokasian kerja sudah secara otomatis
dilaksanakan sistem operasi. Pemakai memandang jaringan komputer sebagai 1
uniprossesor besar, walau sebenarnya terdiri dari banyak prosessor (komputer) yang
tersebar.
KOMPONEN DASAR SISTEM OPERASI
Kebanyakan sistem operasi memiliki komponen-komponen yang mendukung :
1. Manajemen proses
2. Manajemen memori utama
3. Manajemen berkas/file
4. Manajemen I/O
5. Manajemen penyimpanan sekunder
6. Jaringan
7. Sistem Proteksi
8. Command – Interpreter System

STRUKTUR DASAR SISTEM OPERASI


Sistem operasi modern merupakan suatu sistem yang besar dan kompleks. Struktur sistem
operasi merupakan komponen-komponen sistem operasi yang dihubungkan dan dibentuk di
dalam kernel. Struktur sistem operasi yang pernah ada dan digunakan :
1. Sistem monolitik
2. Sistem berlapis
3. Sistem dengan mesin maya
4. Sistem dengan client – server
5. Sistem berorientasi objek
PROSES

Proses adalah program yang sedang dieksekusi, termasuk didalamnya nilai-nilai dalam program
counter, register, dan variabel-variabel yang ada.
Perbedaan program dan proses :

PROGRAM PROSES
Keberadaan Ada secara nyata di ruang Ada secara nyata
penyimpanan dalam waktu yang
terbatas
Sifat Statis/pasif yang terletak di Dinamis/aktif karena
dalam suatu file dalam keadaan
tereksekusi
Terdiri dari Instruksi Instruksi yang
dieksekusi

 Sistem operasi mengontrol kejadian-kejadian yang ada dalam sistem komputer.


 Sistem operasi menjadwal dan mengirimkan proses untuk dieksekusi oleh proseseor,
mengalokasikan sumber daya untuk proses dan menanggapi permintaan program
pemakai untuk layanan-layanan dasar.
DIAGRAM STATE PROSES

State/Status Deskripsi
Running Pemroses sedang mengeksekusi instruksi proses tersebut
Ready Proses siap (ready) dieksekusi, tapi pemroses belum
tersedia untuk eksekusi proses ini = proses sedang
menunggu jatah waktu dari pemroses untuk dieksekusi
Blocked(waiting) Proses menunggu event/kejadian untuk melengkapi
tugasnya. Contoh proses menunggu :
 selesainya operasi perangkat masukan/keluaran
 tersedianya memori
 tibanya pesan jawaban

Hubungan ke-3 state dasar digambarkan dengan diagram state proses :

Running

Bloked/
waiting
Ready

Keterangan perpindahan state :


1. Process blocks for input Terjadi pada saat sebuah proses menemukan bahwa dirinya tidak
bisa dilanjutkan karena proses tidak mendapatkan apa yang diinginkan  input tidak tersedia
Contoh : saat proses cetak (print), karena kertas/tinta habis maka proses cetak
berhenti/menunggu
2. Scheduler picks another process Scheduler/penjadwal memutuskan bahwa sebuah proses
sudah berjalan terlalu lama dan sudah waktunya untuk memanggil proses yang lain
3. Scheduler picks this process Proses-proses yang lain sudah mendapatkan jatahnya, dan tiba
giliran proses yang tertunda untuk dijalankan.
4. Input becomes available Kejadian di luar yang sedang ditunggu sebuah proses sudah
terlaksana yaitu misal sebuah proses yang menunggu input dari sebuah output proses yang lain.
Bila tidak ada proses yang sedang berjalan, maka transisi 3 segera dilaksanakan dan proses
segera berjalan/menunggu di state ready sampai CPU tersedia
SYSTEM CALL
System call menyediakan interface antara proses dengan sistem operasi. System call biasanya
berbentuk instruksi bahasa assembly.
 System call = suatu kumpulan instruksi extended yang disediakan oleh sistem operasi yang
berfungsi sebagai interface antara sistem operasi dengan program pemakai.
 Pogram pemakai berkomunikasi dengan sistem operasi dan meminta layanan dari sistem
operasi dengan membuat system call.
 System call membuat, menghapus, dan menggunakan berbagai macam objek software yang
dikelola oleh sistem operasi.

IMPLEMENTASI PROSES
Tabel Untuk Proses
Tiap proses mempunyai state yang perlu diperhatikan sistem operasi. Sistem operasi mencatat
state proses dengan beragam tabel atau senarai yang saling berhubungan, yaitu :
 Tabel informasi manajemen memori
 Tabel informasi manajemen masukan/keluaran
 Tabel informasi sistem file
 Tabel proses

Tabel informasi manajemen memori


Merupakan tabel untuk menjaga keutuhan memori utama dan memori sekunder, memuat
informasi :
 alokasi memori utama yang dipakai proses
 alokasi memori sekunder yang dipakai proses (bila menggunakan manajemen memori dengan
swapping)
 atribut segmen memori utama dan sekunder
 informasi lain yang digunakan untuk pengelolaan memori

Tabel informasi manajemen masukan/keluaran


Untuk mengelola perangkat masukan/keluaran. Saat perangkat masukan/keluaran digunakan
proses tertentu, perlu dijaga agar proses lain tidak memakainya. Sistem operasi perlu
mengetahui status operasi masukan/keluaran dan lokasi memori utama yang digunakan untuk
transfer data.
Tabel informasi sistem file
Berisi informasi mengenai ekstensi file, lokasi pada memori sekunder, status saat itu dan
menyimpan atribut-atribut file lain.
Tabel proses
Mengelola informasi proses di sistem operasi, lokasinya di memori. Tabel juga berisi status dan
atribut proses yang lain
PENJADWALAN PROSES

DEFINISI
Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang
berkaitan dengan urutan kerja yang dilakukan sistem komputer.
Penjadwalan bertugas memutuskan proses yang harus berjalan dan kapan atau berapa lama
proses itu berjalan. Sasaran utama penjadwalan proses adalah optimasi kinerja menurut kriteria
tertentu, yaitu :
 adil
 efisiensi
 waktu tanggap (response time)
 turn arround time
 throughput

Adil
Proses-proses diperlakukan sama yaitu mendapat jatah waktu pemroses yang sama dan tak ada
proses yang tak kebagian layanan pemroses sehingga mengalami starvation.
Efisiensi
Efisiensi atau utilisasi pemroses dihitung dengan perbandingan (rasio) waktu sibuk pemroses.
Sasaran penjadwalan adalah menjaga agar pemroses tetap dalam keadaan sibuk sehingga
efisiensi mencapai maksimum. Sibuk adalah pemroses tidak menganggur, termasuk waktu yang
dihabiskan untuk mengeksekusi program pemakai dan sistem operasi.
Waktu tanggap (response time)
Waktu tanggap pada sistem interaktif Adalah waktu yang dihabiskan dari saat karakter terakhir
dari perintah dimasukkan atau transaksi sampai hasil pertama muncul di layar (terminal) 
disebut terminal response time Waktu tanggap pada sistem waktu nyata (real-time) Adalah
waktu dari saat kejadian (internal atau eksternal) sampai instruksi pertama rutin layanan yang
dimaksud dieksekusi  disebut event response time
Turn arround time
Adalah waktu yang dihabiskan dari saat program atau job mulai masuk ke sistem sampai proses
diselesaikan sistem. Waktu yang dimaksud adalah waktu yang dihabiskan di dalam sistem. turn
arround time = waktu eksekusi + waktu menunggu Sasaran penjadwalan adalah meminimalkan
turn arround time.
Throughput
Adalah jumlah kerja atau jumlah job yang dapat diselesaikan dalam satu unit waktu. Sasaran
penjadwalan adalah memaksimalkan jumlah job yang diproses per satu interval waktu. Lebih
tinggi angka throughput, lebih banyak kerja yang dilakukan sistem.
TIPE-TIPE PENJADWALAN
Tiga tipe penjadwal dapat berada secara bersama-sama pada sistem operasi yang kompleks,
yaitu :
1. Penjadwal jangka pendek (short – term scheduller)
2. Penjadwal jangka menengah (medium – term scheduller)
3. Penjadwal jangka panjang (long– term scheduller)

Penjadwal jangka pendek


Tugas menjadwalkan alokasi pemroses diantara proses-proses ready di memori utama.

Penjadwal jangka menengah


Setelah eksekusi selama satu waktu, proses mungkin ditunda karena membuat permintaan
layanan masukan/keluaran atau memanggil suatu system call. Proses-proses tertunda tidak
dapat membuat suatu kemajuan menuju selesai sampai kondisi-kondisi yang menyebabkan
tertunda dihilangkan. Agar ruang memori dapat bermanfaat, maka proses dipindah dari
memori utama ke memori sekunder agar tersedia ruang untuk proses-proses lain. Kapasitas
memori utama terbatas untuk 20 sejumlah proses aktif. Aktifitas pemindahan proses yang
tertunda dari memori utama ke memorisejumlah proses aktif. Aktifitas pemindahan proses
yang tertunda dari memori utama ke memori sekunder disebut swapping.

Penjadwal jangka panjang


Penjadwal jangka panjang bekerja terhadap antrian batch dan memilih batch berikutnya yang
harus dieksekusi. Batch biasanya adalah proses-proses dengan penggunaan sumber daya yang
intensif (yaitu waktu pemroses, memori, perangkat masukan/keluaran), program-program ini
berprioritas rendah, digunakan sebagai pengisi (agar pemroses sibuk) selama periode aktivitas
job-job interaktif rendah.Sasaran utama penjadwal jangka panjang adalah memberi
keseimbangan job-job campuran.
STRATEGI PENJADWALAN
Ada 2 strategi penjadwalan :
 Penjadwalan nonpreemptive
 Penjadwalan preemptive

Penjadwalan nonpreemptive
Proses yang sedang berjalan tidak dapat disela. Sekali proses berada di status running (sedang
berjalan), maka proses tersebut akan dieksekusi terus sampai proses berhenti karena selesai
atau diblok untuk menunggu I/O atau untuk meminta beberapa layanan dari sistem operasi;
dan CPU tidak dapat diambil alih oleh proses yang lain.
Penjadwalan preemptive
Proses yang sedang berjalan dapat diinterupsi dan dipindah ke status ready oleh sistem operasi
sehingga CPU dapat diambil alih proses yang lain.

ALGORITMA PENJADWALAN
Terdapat banyak algoritma, diantaranya :
a. Algoritma menggunakan strategi nonpreemptive
 FIFO (First-in, First-out) atau FCFS (First-come, First-serve)
 SJF (Shortest Job First)
 HRN (Highest – Ratio Next)
b. Algoritma menggunakan strategi preemptive
 MFQ (Multiple Feedback Queues)
 RR (Round Robin)
 SRF (Shortest Remaining First)
 PS (Priority Schedulling)
 GS (Guaranteed Schedulling)
Klasifikasi lain berdasarkan adanya prioritas di proses-proses tersebut, yaitu :
♦ Algoritma penjadwalan tanpa prioritas
♦ Algoritma penjadwalan berprioritas :
 algoritma penjadwalan berprioritas statik
 algoritma penjadwalan berprioritas dinamis
KONGKURENSI (KEBERSAMAAN)

PERSAINGAN DAN KERJASAMA ANTAR PROSES


Persaingan antar proses terjadi ketika beberapa proses akan menggunakan sumber daya yang
sama. Tidak ada pertukaran informasi diantara proses-proses yang sedang bersaing, tetapi
eksekusi dari satu proses dapat menimbulkan akibat bagi proses-proses lain yang sedang
bersaing. Jika ada 2 proses yang akan mengakses ke suatu sumber daya tunggal, kemudian satu
proses dialokasikan ke sumber daya tersebut oleh sistem operasi, maka proses yang lainnya
akan menunggu. Pada kasus yang ekstrim, proses yang menunggu tersebut ada kemungkinan
tidak akan pernah mendapatkan akses ke sumber daya sehingga tidak akan pernah selesai
dengan sempurna. Hal ini juga terjadi akibat antar proses yang saling tidak peduli.
Kongkurensi merupakan landasan umum perancangan sistem operasi. Proses-proses disebut
kongkuren jika proses-proses(lebih dari 1 proses) berada pada saat yang sama. Proses-proses
kongkuren dapat sepenuhnya tak bergantung dengan lainnya tapi dapat juga saling
berinteraksi/kerjasama. Proses-proses yang berinteraksi memerlukan sinkronisasi/koordinasi
agar terkendali dengan baik.

PRINSIP-PRINSIP KONGKURENSI
Kongkurensi meliputi hal-hal berikut :
 alokasi waktu pemroses untuk proses-proses
 pemakaian bersama & persaingan untuk mendapatkan sumber daya
 komunikasi antar proses
 sinkronisasi aktivitas banyak proses

MUTUAL EXCLUSION
Mutual exclusion adalah jaminan hanya satu proses yang mengakses sumber daya pada suatu
interval waktu tertentu, sedangkan proses lain dilarang mengerjakan hal yang sama  contoh :
sumberdaya printer hanya bisa diakses 1 proses, tidak bisa bersamaan  sumber daya ini
disebut sumber daya kritis Bagian program yang sedang mengakses memori atau sumberdaya
yang dipakai bersama disebut critical section / region. Kesuksesan proses-proses kongkuren
memerlukan pendefinisian critical section dan memaksakan mutual exclusion diantara proses-
proses kongkuren yang sedang berjalan.
DEADLOCK

Deadlock : jika proses menunggu suatu kejadian tertentu yang tak akan pernah terjadi.
Sekumpulan proses berkondisi deadlock bila setiap proses yang ada di kumpulan menunggu
suatu kejadian yang hanya dapat dilakukan proses lain yang juga berada di kumpulan itu. Proses
menunggu kejadian yang tak akan pernah terjadi.

Urutan kejadian pengoperasian peralatan masukan / keluaran :


 meminta (request) : meminta pelayanan perangkat masukan/keluaran
 memakai (use) : memakai perangkat masukan / keluaran
 melepaskan (release) : melepaskan pemakaian perangkat masukan/keluaran

Syarat terjadinya deadlock :


 mutual exclusion (mutual exclusion conditional) tiap sumber daya saat itu diberikan
pada tepat 1 proses.
 kondisi genggam dan tunggu (hold and wait) proses-proses yang sedang menggenggam
sumber daya, menunggu sumber daya-sumber daya baru.
 kondisi non-preemption (non-preemption condition) sumber daya-sumber daya yang
sebelumnya diberikan tidak dapat diambil paksa dari proses itu.Sumber daya harus
secara explisit dilepaskan dari proses yang menggenggamnya.
 kondisi menunggu secara sirkuler (circular wait condition) harus terdapat rantai sirkuler
dari dua proses atau lebih, masing-masing menunggu sumber daya yang digenggam oleh
anggota berikutnya pada rantai itu.

Terjadi deadlock bila terdapat ketiga kondisi itu, tetapi adanya ketiga kondisi itu belum berarti
terjadi deadlock. Deadlock benar-benar terjadi bila syarat keempat terpenuhi. Kondisi keempat
merupakan keharusan bagi terjadinya deadlock.
Deadlock bisa terjadi pada saat proses akan mengakses objek seperti file,device, dll secara tidak
semestinya. Objek tersebut dinamakan resource.

Terdapat 2 jenis resource :


 preemtable resource
resource yang dapat diambil dan dilepas dari proses yang sedang memakainya tanpa
memberikan efek apapun pada proses tersebut.
 Non-preemtable resource
resource tidak dapat diambil dari proses yang sedang membawanya, karena akan
mengakibatkan kegagalan komputasi, contoh : printer, bila suatu proses sedang menggunakan
printer untuk mencetak, maka proses lain tidak dapat menggunakan printer tersebut.
Deteksi dan pemulihan deadlock
Deteksi deadlock adalah teknik untuk menentukan apakah deadlock terjadi serta
mengidentifikasi proses-proses dan sumberdaya-sumberdaya yang terlibat deadlock. Periode
yang biasa dilakukan adalah memonitor permintaan dan pelepasan sumber daya. Bila sistem
terdapat deadlock maka deadlock harus diputuskan. Biasanya beberapa proses akan kehilangan
sebagian atau semua kerja yang telah dilakukan. Hal ini lebih baik daripada terjadinya deadlock
yang berarti semua proses tidak menghasilkan apapun.

Teknik pemulihan yang biasa digunakan adalah menghilangkan (suspend / kill) proses-proses
dari sistem dan pengklaiman kembali sumberdaya yang dipegang proses-proses tersebut.
Proses yang dihilangkan biasanya cacat tetapi proses lain dapat menyelesaikan prosesnya.
Pendekatanpendekatan berikut dapat dilakukan untuk pemulihan deadlock :
 singkirkan semua proses yang terlibat deadlock
 backup semua proses yang terlibat deadlock ke suatu check point yang didefinisikan
sebelumnya dan jalankan kembali proses itu.
 secara berurutan abaikan proses-proses sampai deadlock tidak terjadi lagi. Urutan
proses yang dipilih untuk disingkirkan berdasar kriteria ongkos minimum.
 secara berurutan preempt sumberdaya-sumberdaya sampai tidak ada deadlock lagi.
Proses yang kehilangan sumber daya karena preemption harus dikembalikan (roll-back)
ke titik sebelum memperoleh sumber daya.
Kriteria pemilihan proses yang akan disingkirkan (suspend/kill) :
 waktu pemrosesan yang dijalankan paling kecil
 jumlah baris keluaran yang diproduksi paling kecil 36
 mempunyai estimasi sisa waktu eksekusi terbesar
 jumlah total sumber daya terkecil yang telah dialokasikan
 prioritas terkecil.

Dalam penyingkiran proses, sistem harus mengembalikan berkas-berkas yang telah dimodifikasi
oleh proses-proses yang disingkirkan ke keadaan asli karena berpengaruh terhadap konsistensi
data sistem itu.

Anda mungkin juga menyukai