Jumat, 21 Juni 2013

jelaskan berikut dengan gambar dari struktur storage ,sistem multi tasking,sistem uni programming,sistem komputasi batch

Sistem Operasi sebagai Manager Sumber Daya :

Tipe Sistem Operasi
• Interaktif
• Batch
• Single program (Uni-programming)
• Multi-programming (Multi-tasking)

Awal Sistem Operasi
Akhir 1940 sampai pertengahan 1950 :
1. Tidak ada Sistem operasi
2. Program saling berhubungan secara langsung dengan perangkat keras
3. Dua permasalahan utama:
o Penjadwalan
o Waktu setup


Sistem Batch Sederhana

1. Program monitor yang residen
2. User menngirim job ke operator
3. Operator mem-batch job
4. Monitor control mengendalikan urutan even untuk memproses secara batch
5. Ketika satu job sudah selesai, kendali kembali ke monitor yang akan membaca job berikutnya
6. Monitor menangani skeduling
Bahasa Kendali Job
• Instruksi ke monitor
• Biasanya diawali dengan $ atau beberapa karakter spesial lainnya
• Contoh :
– $JOB
– $FTN
– ... Beberapa instruksi Fortran
– $LOAD
– $RUN
– ... Beberapa data
– $END
• Bahasa awal (Predecessor) kemudian selanjutnya menjadi scripting languages (Burroughs WFL)

Fasilitas hardware Diinginkan
• Memori terproteksi :
Untuk melindungi Monitor
• Pengatur waktu (TIMER) :
Untuk mencegah suatu pekerjaan memonopoli sistem
• Instruksi yang diistimewakan :
o Yang hanya dieksekusi oleh Monitor
o Misalnya I/O
• Interupsi :
Memungkinkan mempertimbangkan untuk melepaskan (untuk sementara) suatu kendali dan mendapatkannya kembali

Multi-programmed Batch Systems
• Device I/O sangat lambat
• Ketika suatu program menunggu I/O selesai bekerja, yang lainnya seharusnya dapat menggunakan CPU.




ILUSTRASI
Program Tunggal :


Multi-Programming dengan Dua Program :





Multi-Programming dengan Tiga Program :




Sistem Time Sharing


Mengijinkan para pemakai untuk saling berhubungan secara langsung dengan komputer, yaitu Interaktifitas.
Multi-Programming mengijinkan sejumlah para pemakai untuk saling berhubungan dengan komputer


Penjadwalan (Scheduling)

Merupakan kunci multi-programming, terdiri dari :
• Long term
 Menentukan program yang mana yang disiapkan untuk memproses. Misalnya mengendalikan derajat tingkat dalam multi-programming
 Setelah di submit, suatu pekerjaan menjadi suatu proses yang dilaksanakan dalam penjadwalan jangka pendek. (atau menjadi suatu job yang diswap ke luar untuk penjadwalan jangka menengah)
• Medium term
 Bagian dari fungsi swap.
 pada umumnya didasarkan pada kebutuhan untuk mengatur multi-programming
 Jika tidak ada virtual memori, manajemen memori adalah sekedarnya saja.
• Short term
Sebagai DISPATCHER, yaitu pengambil keputusan langsung untuk menentukan pekerjaan mana yang akan dlaksanakan berikutnya. Misalnya : pekerjaan aktual
mana yang harus segera masuk ke prosesor pada waktu slot selanjutnya.
• I/O
Hubungan langsung permintaan layanan dari device I/O untuk mendapatkan perhatian Prosesor.





Blok Kendali Proses
 Identifier
 Informasi Status
 Skala Prioritas
 Program counter
 Memory pointer
 Context data
 Status I/O
 Accounting information

Elemen Kunci Sistem Operasi



Manajemen Memori

• Uni-Program
Memori di-split menjadi dua :
o Satu bagian untuk Sistem operasi (monitor)
o Satu bagian untuk eksekusi program
• Multi-Program
User adalah bagian dari sub-divided dan berbagi pakai antar proses aktif saja.

Swapping

Masalah: I/O sangat lambat dibandingkan dengan CPU, bahkan di sistem yang multi-programming, CPU seringkali idle.
Solusi :
• Meningkatkan memori utama :
o Mahal
o Memungkinkan pelaksanaan program besar.
• Swapping
 Pada Long Term Queue (Antrian jangka panjang),proses disimpan pada disk.
 Proses “di-swap” ketika ruangan sudah tersedia.
 Jika proses sudah selesai, akan dipindahkan keluar dari memori utama.
 Jika tidak satupun dari proses di dalam memori yang siap ( misalnya ketika semua I/O di blok) :
 Terjadi penukaran (swap), proses yang diblok ke atau proses baru.

Partitioning


Defenisi :
Melakukan Split memori menjadi bagian-bagian untuk dialokasikan ke proses ( termasuk proses pada Sistem operasi)

Partisi Fixed-sized
 Dapat saja tidak dalam ukuran yang sama.
 Proses dimasukkan ke dalam lubang paling kecil yang paling tepat ukurannya dengan proses tersebut.
 Dapat saja beberapa bagian memori jadi tersia-sia, sehingga membutuhkan partisi dengan ukuran variabel.


Ilustrasi Partisi Fixed-sized


Partisi Variable-sized

 Mengalokasikan secara tepat memori yang diperlukan suatu proses.
 Menyebabkan suatu hole kosong tidak terpakai pada bagian akhir memori, yang biasanya terlalu kecil untuk digunakan.
 Dari keseluruhan memori yang tersedia, hanya ada satu hole kecil - sedikit yang tersia-siakan
 Ketika semua proses diblok, akan terjadi penukaran (swap) proses keluar CPU, lalu CPU mengambil proses yang lain.
 Proses baru mungkin saja lebih kecil dibanding proses yang ditukar keluar tadi, sehingga membuat hole baru.
 Amat cepat terbentuk sekelompok hole (fragmentation)
 Solusi:
o Koalisi - Menggabung dengan hole yang bersebelahan ke hole yang lebih besar.
o Pemampatan (Compaction) - Dari waktu ke waktu melakukan perpindahan semua hole ke dalam satu blok bebas ( seperti pada disk defragmentation)



Ilustrasi Partisi Variable-sized





Relokasi

 Tidak ada jaminan suatu proses akan mengisi ke dalam tempat yang sama dengan proses yang lain di dalam memori.
 Instruksi berisi alamat :
o Lokasi data
o Alamat instruksi (percabangan)
 Alamat logis - relatif untuk awal suatu program.
 Alamat fisik - Lokasi aktual (yang sesungguhnya) dalam memori pada saat ini.
 Konversi otomatis berdasarkan alamat.

Paging

 Memori di-split pada ukuran yang sama, chunks kecil - disebut frame Page.
 Program yang dipisah ( proses) pada ukuran yang sama, small chunks – disebut page.
 Mengalokasikan page frame yang diperlukan kepada suatu proses.
 Sistem operasi memelihara daftar frame yang bebas.










Ilustrasi Paging



Bus adalah :
Jalur komunikasi yang dibagi pakai
Suatu set kabel tunggal yang digunakan untuk menghubungkan berbagai subsistem.

Merupakan tool yang fundamental dalam menyusun sistem yang besar dan kompleks secara sistematis.


KEUNTUNGAN MENGGUNAKAN BUS

Memiliki berbagai macam kegunaan (Versatilitas):
o Device baru dapat ditambahkan dengan mudah.
o Peripheral dapat dipindah-pindahkan antar sistem komputer yangh menggunakan standar bus yang sama.
Harga Rendah:
o Set kawat tunggal dipakai bersama dalam berbagai cara dan metode

KERUGIAN MENGGUNAKAN BUS

Menciptakan suatu komunikasi bottleneck
Bandwidth (Luas bidang) bus dapat membatasi maksimum I/OThroughput
Maksimum kecepatan bus biasanya dibatasi oleh:
o Panjang bus
o Banyaknya device yang terhubung pada bus
Kebutuhan dukungan tambahan untuk device-device yang :
o Secara luas memiliki berbagai jenis latency
o Secara luas memiliki berbagai jenis data transfer rate


ORGANISASI BUS



Jalur Kontrol
o Berisi Signal request dan sinyal acknowledgments
o Mengindikasikan tipe informasi pada jalur data.
Jalur Data membawa informasi antara sumber dan tujuan:
o Data dan alamat
o Perintah-perintah kompleks.


MASTER VS SLAVE




Suatu transaksi bus meliputi dua komponen:
o Mengeluarkan perintah (dan alamat) – request (permintaan)
o Memindahkan data - action (tindakan)
Master adalah bus yang memulai transaksi bus dengan cara :
o Mengeluarkan perintah (dan alamat)
Slave adalah bus yang bereaksi terhadap alamat dengan cara :
o Mengirimkan data kepada master jika master meminta data.
o Menerima data dari master jika master mengirimkan data

DIRECT MEMORY ACCESS (DMA)

 Device I/O harus memindahkan sejumlah data yang besar dari memori ke prosesor :
o Disk harus memindahkan blok lengkap ( 4K? 16K ?)
o Paket besar dari jaringan

 DMA memberi kemampuan pada device eksternal untuk dapat menulis ke memori secara langsung:
Overhead yang lebih kecil dibandingkan dengan jika prosesor me-request
1 word setiap waktu.
o Prosesor (atau sistem memori) bertindak seperti slave



Kasus : Cache coherence

Apa Akibatnya jika device I/O menulis data yang sedang berada dalam prosesor cache? Prosesor tidak dapat lihat data baru!

Solusi:
 Membersihkan cache pada setiap Operasi I/O (mahal)
 Memiliki perangkat keras yang membuat tidak berlakunya suatu jalur cache.


KONSEP PROGRAM

Program adalah :
• Kumpulan Langkah yang berurutan
• Untuk setiap langkah, akan menyelesaikan operasi aritmatik atau operasi logikal
• Untuk setiap operasi, membutuhkan suatu sinyal kontrol tertentu.
Fungsi Kontrol Unit :
• Untuk setiap operasi membutuhkan kode unik : ADD, MOVE
• Segmen hardware menerima kode tersebut dan memilihkan kontrol sinyal yang tepat.
• Kita memiliki Komputer!
Komponen :
• Control Unit dan unit Aritmatik &Logika terdapat pada Central Processing Unit
• Data dan instruksi perlu masuk ke dalam sistem tersebut dan hasilnya dikeluarkan dari sistem tersebut : Proses Input/output
• Penyimpanan sementara bagi kode dan hasil amat diperlukan,
contoh : Main memory

Komputer Komponen (Top Level View) :



Siklus Instruksi :









Contoh Eksekusi Program :



Contoh
Dua Langkah Siklus Instruksi :
1. Siklus Fetch
• Program Counter (PC) mengambil alamat instruksi selanjutnya pada fetch.
• Processor mengambil instruksi dari memori yang ditunjuk oleh PC
• Increment PC : mencari alamat lainnya
• Instruksi di-load ke Instruction Register (IR)
• Prosesor menginterpretasi instruksi dan menyiapkan aksi yang dibutuhkan
2. Siklus Eksekusi
• Processor-memory : transfer data antara CPU dan main memory
• Processor I/O : transfer data antara CPU dan modul I/O
• Data processing : Beberapa operasi aritmatik dan logika pada data
• Kendali.: alternatif aliran operasi, misalnya jump
• Kombinasi di atas.

State Diagram Siklus Intruksi :




Interupsi
• Mekanisme antara modul yang berlainan (misalnya I/O) dapat menginterupsi aliran proses yang normal.
• Berhubungan dengan program, misalnya : overflow, division by zero
• Berhubungan dengan Timer, misalnya : dibuat oleh timer pada prosesor internal, digunakan dalam multitasking
• Berhubungan dengan I/O : dari I/O controller
• Berhubungan dengan kesalahan Hardware, misalnya error pada parity memori.

Kendali Aliran Program :


Siklus Interupsi :
• Ditambahkan dalam siklus Instruksi
• Prosesor akan menmeriksa interupsi : diindikasikan dengan adanya sinyal interupsi.
• Jika tidak ada interupsi maka akan mem-fetch intruksi selanjutnya.
• Jika terdapat interupsi :
o Hentikan dulu eksekusi program yang sedang berjalan
o Isi program di simpan dulu
o Set PC untuk menunjuk ke alama awal rutin handler interupsi
o Memproses interupsi.
o Mengembalikan isi program dan melanjutkan program yang terinterupsi tadi.

State Diagram Siklus Interupsi :





Multiple Interupsi :
• Men-disable interupsi
• Prosesor akan mengabaikan interupsi yang lain kerika sedang memproses suatu interupsi
• Interupsi yang di-pending akan dijalankan setelah interupsi yang sebelumnya telah selesai diproses.
• Terdapat Interupsi yang menangani urutan.
• Mendefinisikan prioritas
• Interupsi prioritas rendah dapat diinterupsi oleh interupsi yang lebih tinggi prioritasnya.
• Ketika proses pada interupsi yang berprioritas tinggi selesai dilakukan, proses akan kembali ke interupsi sebelumnya.

Tidak ada komentar:

Posting Komentar