Senin, 11 Oktober 2010

STRUKTUR SISTEM KOMPUTER

STRUKTUR SISTEM KOMPUTER
Sistem computer adalah berisi suatu CPU dan sejumlah device controller yang dihubungkan melalui bus yang menyediakan adanya pemakaian memori secara bersama-sama, CPU dan device controller tersebut dapat bekerja secara bersama-sama dan saling berkompetisi untuk mengunakan memori.
Struktur I/O
Untuk memulai mengoperasikan I/O, CPU memanggil registers-registers yang cocok untuk device controller. Kemudian device controller menjawab dengan mengisi register-register berupa tanggapan yang akan diberikan. Sebagai contoh, jika ada permintaan transfer data dari suatu device ke local buffer, dan transfer telah selesai dilakukan, maka device controller menginformasikan ke CPU bahwa pekerjaan tersebut telah selesai. Komunikasi ini akan menyebabkan terjadinya interrupt. Ada 2 aksi yang diberikan saat terjadinya interrupt:
1. Synchronous I/O. I/O dijalankan, I/O selesai digunakan, control menginformasikan kembali ke user proses. Untuk menunggu selesai digunakan I/O biasanya digunakan perintah wait. Dengan adanya menunggu sampai selesai (ada interrupt lain) ini membawa keuntungan yaitu hanya ada satu I/O yang sedang bekerja pada suatu wakktu, sehingga CPU tahu dengan pasti CPU mana yang sedang menginterrupt.
2. Asynchronous I/O. Kembali ke user program tanpa harus menunggu I/O selesai digunakan. Keuntungan: Efisiensi sistem semakin bertambah, sebab saat suatu I/O digunakan, CPU dapat digunakan untuk menjalankan proses atau menjawab kerja I/O yang lain.
Untuk menunggu hingga I/O selesai digunakan dapat juda digunakan system call. Dengan cara ini system operasi harus dilengkapi dengan Device-Status Table yang berisi tipe device, alamat, dan statusnya (tidak berfungsi, idle, atau busy). Jika suatu device dalam keadaan sibuk, maka suatu permintaan akan disimpan dalam table tersebut. Jika permintaan terjadi pada device yang sama, maka akan dibuat daftar pada table tersebut.
Struktur Penyimpanan
Penyimpanan terdiri atas memori utama dan memori sekunder. Karena memori utama bersifat volatile dan kapasitasnya terbatas, maka dibutuhkan memori sekunder yang bersifat nonvolatile dan kapasitasnya besar.
Cache Memory
Proses transfer data dari/ke memori utama ke/dari register CPU dilakukan per karakter, padahal kecepatan register dengan memori berbeda cukup jauh. Untuk itu agar CPU tidak nganggur digunakan bantuan cache sebagai perantara CPU dengan memori. Pengiriman data dari cache ke dari CPU dilakukan per karakter, sedangkan pengiriman data dari ke cache ke dari memori dilakukan per blok.
Ada 2 jenis cache, yaitu:
• Software cache (caching disk controller); akan mempercepat akses data pada disk dengan menyimpan data yang baru saja digunakan dalam memory.
• Hardware cache (on-the-board cache); akan mempercepat akses memori itu sendiri dengan menyimpan data yang baru saja digunakan dalam memori yang lebih cepat lagi.
Biasanya cache dapat menyimpan sejumlah blok pada suatu saat, namun jumlah ini jauh lebih sedikit dibanding dengan jumlah blok yang ada pada memori utama. Hubungan antara blok-blok yang ada pada cache dengan blok-blok yang ada pada memori utama dispesifikasikan dengan menggunakan fungsi pemetaan (mapping function).
Misalkan suatu cache berisi 128 blok, tiap blok ada 16 word, sehingga total ada 2 Kword, Diasumsikan pula bahwa memori utama dialamati oleh 16-bit alamat, dengan 64 Kword, sehingga aka nada 4 K blok masing-masing 16 word.
Cara yang paling mudah untuk untuk menentukan lokasi pada cache yang mana blok-blok pada memori utama disimpan digunakan teknik Diret-Mapping.
Memori Utama
Memori utama berisi jutaan sel penyimpanaan, masing-masing sel dapat menyimpan binary digit atau bit yang bernilai 0 dan 1. Satu bit diatur secara individu, karena satu bit hanya menyimpan sejumlah kecil informasi saja. Biasanya bit-bit ini bergabung membentuk suatu kelompok dengan ukuran tertentu. Memori utama disusun sedemikian rupa sehingga satu kelompok yang terdiri dari n-bit dapat disimpam dan dddditerima satu kesatuan. Tiap-tiap kelompok yang terdiri dari n-bit ini sering disebut dengan satu word informasi, sedangkan n disebut dengan panjang word (word length) Pada computer modern kebanyakan memiliki ukuran word antara 16 sampai 64 bit.
Untuk mengakses memori utama, misalkan untuk menyimpan atau menerima satu word informasi memerlukan alamat untuk tiap-tiap word, yaitu dari 0 sampai 2k-1. Alamat sebanyak 2k tersebut mengatur address space dari computer, dan memori utama dari computer ini memiliki 2k word. Sebagai contoh, 24-bit alamat memberikan ruang alamat sebesar 2pangkat24 (167.77.216) lokasi. Bentuk seperti ini biasanya ditulis dengan 16M (16 megawords) dimana 1M = 2pangkat20. Sedangkan 32-bit alamat memberikan 2pangkat32 atau 4G.
Memori utama terdiri-dari memori statis (static memory) dan memori dinamis (dynamic memory). Memori statis terbuat dari rangkaian yang mampu bertahan selama ada daya listrik. Memori ini memiliki kecepatan yang cukup tinggi, namun harganya juga cukup mahal sebab terdiri atas beberapa transistor. Pada memori dinamis, informasidisimpan dalam bentuk isian kapasitor. DRAM hanya mampu menyimpan informasi untuk beberapa milidetik saja. Sehingga jika tiap-tiap sel akan digunakan untuk menyimpan informasi dalam jangka waktu yang cukup yang lama, maka kapasitornya harus diisi ulang hingga penuh.


Eksekusi bagian program dalam hubungannya dengan memori dan CPU registers:
1. PC berisi 300, alamat instruksi yang pertama. Isi dari lokasi 300 diambil dan dimasukan ke IR. Untuk itu digunakan MAR dan MBR sebagai perantara.
2. Empat bit pertama menunjukan AC yang akan diambil, sedangkan 12 bit berikutnya adalah alamat khusus, yaitu 940.
3. PC dinaikan, dan instruksi berikutnya diambil.
4. Isi AC yang lama ditambah dengan isi alamat 940, hasilnya dimasukkan ke AC kembali.
5. PC dinaikkan lagi instruksinya berikutnya diambil.
6. Isi AC disimpan di lokasi 941.
CPU CPU
Memory Registers Memory Registers 300 1 9 4 0 3 0 0 PC 300 1 9 4 0 3 0 0 PC
301 5 9 4 1 - AC 301 5 9 4 1 0 0 0 3 AC
302 2 9 4 1 1 9 4 0 IR 302 2 9 4 1 1 9 4 0 IR
940 0 0 0 3 940 0 0 0 3
942 0 0 0 2 941 0 0 0 2
langkah-1 langkah-2
CPU CPU
Memory Registers Memory Registers 300 1 9 4 0 3 0 1 PC 300 1 9 4 0 3 0 1 PC
301 5 9 4 1 0 0 0 3 AC 301 5 9 4 1 0 0 0 5 AC
302 2 9 4 1 5 9 4 1 IR 302 2 9 4 1 5 9 4 1 IR
940 0 0 0 3 940 0 0 0 3
941 0 0 0 2 941 0 0 0 2





Langkah-3 langkah-4

CPU CPU
Memory Registers Memory Registers 300 1 9 4 0 3 0 2 PC 300 1 9 4 0 3 0 0 PC
301 5 9 4 1 0 0 0 5 AC 301 5 9 4 1 0 0 0 5 AC
302 2 9 4 1 2 9 4 1 IR 302 2 9 4 1 2 9 4 1 IR
940 0 0 0 3 940 0 0 0 3
941 0 0 0 2 941 0 0 0 5
Langkah-5 langkah-6

Caranya: langkah-1 : Memory 1940 ke Registers 1940 IR
2 : Memory 0003 ke Registers 0003 AC
3 : Memory 5941 ke Registers 5941 IR
4 : Memory 0002 ke Registers 0005 AC dimana 3bit16 + 2bit16 = 5bit16 maka 0005 AC
5 : Memory 2941 ke Registers 2941 IR
6 : Registers 0005 ke Memory 0005 AC
Contoh Eksekusi Instruksi Program oleh CPU Registers
Referensi: Kusumadewi, Sri. System operasi. Edisi 1. Yogyakarta Informatika. 2000

Tidak ada komentar:

Posting Komentar