• Tidak ada hasil yang ditemukan

Materi I Skema Dasar Sistem Komputer

N/A
N/A
Protected

Academic year: 2018

Membagikan "Materi I Skema Dasar Sistem Komputer"

Copied!
15
0
0

Teks penuh

(1)

Materi I

Skema Dasar Sistem Komputer

1.1. Pendahuluan

Sistem operasi akan memanfaatkan sumber daya perangkat keras dari CPU dalam

menyediakan layanan untuk para pengguna sistem. Sistem memori juga akan melakukan pengaturan

memori sekunder dan perangkat masukan keluaran (I/O) atas nama penggunanya. Oleh karena itu,

apabila akan melakukan pengujian sistem, pemahaman mengenai perangkat keras sistem komputer

tertentu sangatlah diperlukan.

Dari tingkatan paling atas, suatu komputer terdiri dari komponen prosesor, memori, I/O,

dengan sebuah modul atau lebih pada setiap komponennya. Komponen tersebut akan melakukan

interkoneksi melalui cara tertentu untuk mendapatkan fungsi utama komputer, yang digunakan

dalam pengeksekusian aplikasi (program).

Dengan demikian, terdapat empat elemen dalam sistem komputer, yaitu:

a. Pemroses (processor) b. Memori Utama

c. Perangkat Input/Output

d. Interkoneksi Antar Komponen

Gambar 1.1. Skema blok sistem komputer

(2)

1.1.1. Pemroses

● Mengontrol operasi komputer dan melakukan fungsi pengolahan data. Apabila hanya

mempunyai sebuah prosesor, prosesor tersebut disebut Central Processing Unit (CPU).

● Pemroses melakukan penghitungan, melakukan operasi logika, serta mengelola aliran data

dengan membaca insstruksi dari memori dan kemudian mengeksekusinya.

● Langkah kerja pemroses:

Sebagai pengendali operasi sistem komputer.

c. Register-register

Suatu prosesor terdiri dari sejumlah register yang merupakan memori berkecepatan tinggi dan

berukuran lebih kecil dibandingkan dengan memori utama.

Register di dalam prosesor mempunyai dua fungsi, sebagai berikut:

● User-visible register

Memungkinan pemrogram bahasa aras rendah (assembler) dapat meminimalisasi

referensi memori utama dengan mengoptimalisasi penggunaan register. Pada bahasa

tingkat tinggi, compiler yang melakukan optimasi akan berusaha membuat pilihan yang

cerdas mengenai variabel yang akan meng-assign register dan yang akan meng-assign ke lokasi memori. Pemrograman dalam bahasa C memungkinkan untuk memerintahkan

compiler melakukan penyimpanan variabel di dalam register.

User-visible register dapat direferensikan dengan menggunakan bahasa mesin yang

dieksekusi oleh prosesor selain yang secara umum dapat dipergunakan di seluruh

aplikasi. Jenis register yang umumnya tersedia adalah register data, register alamat, dan

(3)

Register data

Dapat di-assign ke beraneka ragam fungsi oleh pemrogram. Pada keadaan tertentu, register bersifat serbaguna dan dapat pula digunakan dengan sembarang instruksi mesin

yang sedang melakukan operasi data. Namun, terdapat keterbatasan yang harus

dicermati, misalnya dalam kasus pemrograman harus memperhitungkan ketersediaan

register untuk operasi floating-point

Register alamat

merupakan alamat data dan instruksi yang terdapat di dalam memori utama, atau register

yang berisi bagian alamat yang digunakan dalam perhitungan alamat lengkap. Register

serbaguna ini dapat pula ditujukan untuk mode pengalamatan tertentu.

Contoh : indeks register, segment pointer, stack pointer

● Control dan status register

Register yang digunakan untuk melakukan pengontrolan operasi dari prosesor beraneka

ragam. Pada sebagian besar karakteristik mesin, sebagian besar register bersifat tidak

visibel terhadap pengguna. Beberapa register dapat diakses oleh instruksi mesin yang

dieksekusi dalam mode sistem operasi.

Akan tetapi, bagaimana yang terjadi apabila menggunakan mesin yang berbeda, maka

organisasi register serta terminologinya pun akan berbeda pula. Disamping register

MAR, MBR, I/O AR, dan I/O BR, terdapat register penting dalam eksekusi instruksi:

● Program Counter (PC), berisi alamat instruksi yang akan digunakan.

● Instruction register (IR), berisi instruksi yang terakhir digunakan.

Semua rancangan prosesor mencakup sebuah register atau sejumlah register yang dikenal

sebagai program status word (PSW), berisikan informasi keadaan, sebagai contoh interrupt enable/disable bit dan supervisor/user mode bit.

● Dalam bentuk yang sederhana, pengolahan instruksi terdiri dari dua langkah :

a. Pemroses membaca instruksi dari memori (fetch), secara satu persatu dari memori

b. Pemroses melakukan eksekusi instruksi (execute), dapat terdiri dari beberapa operasi serta tergantung pada sifat instruksinya

Dengan menggunakan deskripsi dua langkah yang telah disederhanakan sebelumnya, siklus

instruksi dapat digambarkan seperti yang terlihat pada gambar 1.2. Kedua langkah tersebut

dikenal sebagai instruksi pengambilan (fetch cycle) dan siklus eksekusi (execution cycle).

Eksekusi aplikasi hanya akan terhenti apabila mesin dimatikan, dan dapat menyebabkan

(4)

menghentikan komputer.

Gambar 1.2. Siklus instruksi dasar

("Sistem Operasi, Internal dan Prinsip-prinsip Perancangan", Indeks, 2005)

1.1.2. Memori Utama

Memori berfungsi dalam penyimpanan data dan aplikasi. Dengan mempunyai sifat volatile, sehingga tidak dapat mempertahankan data dan aplikasi yang disimpan atau sedang berjalan apabila

tidak mempunyai sumber daya energi (listrik). Memiliki konsep program tersimpan (stored program concept), yaitu kumpulan instruksi yang disimpan di suatu tempat (memori) untuk kemudian instruksi tersebut dieksekusi.

Kemudian, terdapat suatu relasi dari ketiga karakteristik memori yaitu harga, kapasitas dan

waktu akses, yang dapat didefinisikan sebagai berikut :

a. Semakin kecil waktu akses, maka semakin mahal perhitungan harga setiap bit.

b. Semakin besar kapasitas, semakin murah harga setiap bit.

c. Semakin besar kapasitas, mengakibatkan semakin besar waktu akses.

Untuk selanjutnya, melalui tabel 1.1, dapat dilihat suatu konsep hirarki memori berdasarkan

kecepatan akses:

Tabel 1.1. Hirarki memori berdasar kecepatan akses

Memori Kecepatan

Register Tercepat

Memori cache

Memori utama

Disk cache

(5)

Memori Kecepatan

Magenetic tape terlambat

Dengan semakin rendah letak suatu memori di dalam hirarki, maka akan membuat relasi seperti

berikut ini:

instruksi dari mesin utama. Agar eksekusi dilakukan secara cepat, maka instruksi harus diusahakan

tersedia di lokasi memori yang terdapat pada lapisan berkecepatan akses lebih tinggi. Kecepatan

eksekusi ini akan meningkatkan kinerja sistem secara signifikan. Terdapat konsep memori dua

level, dimana instruksi akan ditampung sementara di memori pada hirarki lebih tinggi.

Implementasi konsep ini antara lain berupa:

a. Memori cache

Bertujuan untuk memberikan kecepatan memori yang mendekati kecepatan memori yang

tercepat, sekaligus memberikan memori semikonduktor berukuran besar dengan harga murah.

b. Buffering

Bagian memori utama untuk menampung data yang akan ditransfer dari/ke perangkat I/O dan

penyimpan sekunder. Buffering dapat mengurangi frekuensi pengaksesan dari/ke perangkat I/O dan penyimpan sekunder sehingga meningkatkan kinerja sistem.

1.1.3. Perangkat masukan dan keluaran (I/O)

Merupakan perangkat nyata yang dikendalikan oleh chip controller di board sistem atau card.

Controller kemudian dihubungkan dengan pemroses dan komponen lainnya melalui bus. Controller

mempunyai register-register untuk pengendaliannya yang berisi status kendali.Setiap controller

dibuat agar dapat dialamati secara individu oleh pemroses sehingga perangkat lunak device driver

dapat menulis ke register-registernya sehingga dapat dikendalikan.

Sistem operasi lebih berkepentingan terhadap pengendali dibandingkan dengan perangkat

fisik mekanis. Perangkat I/O juga memindahkan data antara komputer dan lingkungan eksternal

yang mempunyai antarmuka dengan beraneka ragam perangkat, seperti:

a. Penyimpan sekunder

(6)

c. Terminal

1.1.4. Interkoneksi Antar Komponen

Secara fisik interkoneksi antar komponen berupa "perkawatan". Interkoneksi memerlukan tata

cara atau aturan komunikasi agar tidak kacau (chaos) sehingga mencapai tujuan komputasi yang diinginkan. Interkoneksi sendiri merupakan struktur dan mekanisme dalam menghubungkan semua

komponen yang terdapat di dalam sistem komputer, yang disebut sebagai bus. Terdiri dari tiga

jenis, yaitu:

a. Bus alamat (address bus)

Berisi 16, 20, 24 jalur sinyal paralel atau lebih. CPU mengirim alamat lokasi memori atau port

yang ingin ditulis atau dibaca di bus ini. Jumlah lokasi memori yang dapat dialamati ditentukan

jumlah jalur alamat. Jika CPU mempunyai N jalur alamat maka dapat mengalamati 2 pangkat N

(2N) lokasi memori dan/atau port secara langsung.

b. Bus data (data bus)

Berisi 8, 16, 32 jalur sinyal paralel atau lebih. Jalur-jalur data adalah dua arah (bidirectional).

CPU dapat membaca dan mengirim data dari/ke memori atau port. Banyak perangkat pada sistem

yang dihubungkan ke bus data, tetapi hanya satu perangkat pada satu saat yang dapat

menggunakannya.

c. Bus kendali (control bus)

Berisi 4-10 jalur sinyal paralel. CPU mengirim sinyal-sinyal pada bus kendali untuk

memerintahkan memori atau port. Sinyal bus kendali antara lain :

1. Memory read

Untuk memerintahkan melakukan pembacaan dari memori.

2. Memory write

Untuk memerintahkan melakukan penulisan ke memori.

3. I/O read

Untuk memerintahkan melakukan pembacaan dari port I/O.

4. I/O write

Untuk memerintahkan melakukan penulisan ke port I/O.

Untuk mengetahui lebih lanjut mengenai mekanisme pembacaan data dari suatu lokasi

memori, CPU akan mengirim alamat memori yang dikehendaki melalui bus alamat kemudian

mengirim sinyal memory read pada bus kendali. Sinyal tersebut memerintahkan ke perangkat

(7)

antar komponen ini membentuk satu sistem sendiri, seperti ISA (Industry Standard Architecture), EISA (Extended ISA) dan PCI (Peripheral Component Interconnect).

Gambar 1.3. Arsitektur ISA

Gambar 1.3. Arsitektur PCI Express

1.2. Klasifikasi menurut karakteristik

Klasifikasi ini berdasarkan ukuran sifat khas dari sebuah komputer. Biasanya berkaitan erat

dengan fungsinya, yaitu sebagai berikut:

a. Single Processor / Uniprocessor

(8)

• lebih mudah diimplementasikan karena tidak perlu memperhatikan sinkronisasi antar prosesor.

• kemudahan kontrol terhadap prosesor karena sistem proteksi tidak terlalu rumit.

• cenderung lebih murah (bukan ekonomis).

Perlu dicatat yang dimaksud satu buah prosesor ini adalah satu buah prosesor sebagai CPU/ Central Processing Unit. Hal ini ditekankan sebab ada beberapa perangkat yang memang memiliki prosesor tersendiri di dalam perangkatnya seperti VGA Card AGP dan Optical Mouse.

b. Multiprocessor/Paralel System

Komputer ini memiliki lebih dari satu prosesor. Akibatnya meningkatkan jumlah suatu proses

yang dapat diselesaikan dalam satu unit waktu (pertambahan throughput ). Perlu diingat hal ini tidak berarti daya komputasinya menjadi meningkat sejumlah prosesornya. Yang meningkat

adalah jumlah pekerjaan yang bisa dilakukannya dalam waktu tertentu.

Jika satu processor mengalami suatu gangguan, maka proses yang terjadi masih dapat berjalan

dengan baik karena tugas prosesor yang terganggu diambil alih oleh prosesor lain. Hal ini

dikenal dengan istilah Graceful Degradation. Sistemnya sendiri dikenal bersifat fault tolerant

atau fail-soft system .

Ada dua jenis multiprocessor system yaitu Symmetric MultiProcessing (SMP) dan Asymmetric MultiProcessing (ASMP). Dalam SMP setiap prosesor menjalankan salinan identik dari sistem operasi dan banyak job yang dapat berjalan di suatu waktu tanpa pengurangan performance.

Sementara itu, dalam ASMP, setiap prosesor diberikan suatu tugas yang spesifik. Sebuah prosesor bertindak sebagai Master processor yang bertugas menjadwalkan dan mengalokasikan pekerjaan pada prosesor lain yang disebut slave processors. Umumnya metode ASMP digunakan pada sistem yang besar.

c. Personal Computer

Sebuah komputer yang dirancang hanya digunakan oleh satu orang dalam suatu waktu. Harganya

cenderung lebih murah dan biasanya mampu mengerjakan berbagai macam tugas.

d. Distributed System

Melaksanakan komputasi secara terdistribusi di antara beberapa prosesor. Hanya saja

(9)

multiprocessor, yaitu adanya pembagian sumber daya dan komputasi lebih cepat. Namun, pada distributed system juga terdapat keuntungan lain, yaitu memungkinkan komunikasi antar

komputer.

Terdiri atas dua model yaitu Client-Server Systems di mana hampir seluruh proses dilakukan

terpusat di server berdasarkan permintaan client. Model ini masih dibagi dua jenis lagi yaitu

compute server system di mana server menyediakan sarana komputasi dan file server system di

mana server menyediakan tempat penyimpanan data.

Model yang lain adalah Peer-to-peer (P2P) System, dimana beberapa komputer saling bertukar

data.

Contoh penerapan: Distributed System (dapat dilihat pada gambar 1.4):

• Local Area Network (LAN)

• Wide Area Network (WAN) / International Network (Internet) .

Gambar 1.4. Sistem terdistribusi

e. Clustered System

Secara umum, sistem kluster merupakan gabungan dari beberapa sistem individual (komputer)

yang dikumpulkan pada suatu lokasi, saling berbagi tempat penyimpanan data (storage), dan

saling terhubung dalam jaringan lokal (Local Area Network).

Sistem kluster memiliki persamaan dengan sistem paralel dalam hal menggabungkan beberapa

CPU untuk meningkatkan kinerja komputasi. Jika salah satu mesin mengalami masalah dalam

menjalankan tugas maka mesin lain dapat mengambil alih pelaksanaan tugas itu. Dengan

demikian, sistem akan lebih andal dan fault tolerant dalam melakukan komputasi.

Dalam hal jaringan, sistem kluster mirip dengan sistem terdistribusi (distributed system).

Bedanya, jika jaringan pada sistem terdistribusi melingkupi komputer-komputer yang lokasinya

tersebar, maka jaringan pada sistem kluster menghubungkan banyak komputer yang

(10)

memiliki beberapa model dalam pelaksanaannya: asimetris dan simetris. Kedua model ini

berbeda dalam hal pengawasan mesin yang sedang bekerja.

Pengawasan dalam model asimetris menempatkan suatu mesin yang tidak melakukan kegiatan

apapun selain bersiap-siaga mengawasi mesin yang bekerja. Jika mesin itu mengalami masalah

maka pengawas akan segera mengambil alih tugasnya. Mesin yang khusus bertindak pengawas

ini tidak diterapkan dalam model simetris. Sebagai gantinya, mesin-mesin yang melakukan

komputasi saling mengawasi keadaan yang berlangsung. Mesin lain akan mengambil alih tugas

mesin yang sedang mengalami masalah. Inilah yang membuat model simetris lebih efisien.

Isu yang menarik tentang sistem kluster adalah bagaimana mengatur mesin-mesin penyusun

sistem dalam berbagi tempat penyimpanan data (storage). Untuk saat ini, biasanya sistem kluster

hanya terdiri dari 2 hingga 4 mesin berhubung kerumitan dalam mengatur akses mesin-mesin ini

ke tempat penyimpanan data. Hal penting yang berkaitan dengan penerapan sistem kluster secara

paralel adalah kemampuan mesin-mesin penyusun sistem untuk mengakses data di storage secara

serentak. Berbagai software khusus dikembangkan untuk mendukung kemampuan itu karena

kebanyakan sistem operasi tidak menyediakan fasilitas yang memadai. Salah satu contoh

software-nya adalah Oracle Parallel Server.

Gambar. Visualisasi Clustering

f. Real Time Systems (Sistem Waktu Nyata)

Sistem waktu nyata adalah suatu sistem yang mengharuskan suatu komputasi selesai dalam

jangka waktu tertentu. Jika komputasi ternyata belum selesai maka sistem dianggap gagal dalam

(11)

Sistem waktu nyata memiliki dua model dalam pelaksanaannya: hard real time system dan soft real time system.

Hard real time system

Menjamin suatu proses yang paling penting dalam sistem akan selesai dalam jangka waktu

yang valid. Jaminan waktu yang ketat ini berdampak pada operasi dan perangkat keras yang

mendukung sistem. Operasi I/O dalam sistem, seperti akses data ke storage, harus selesai dalam jangka waktu tertentu. Dari segi hardware, memori jangka pendek (short-term memory) atau read-only memory (ROM) menggantikan harddisk sebagai tempat penyimpanan data. Kedua jenis memori ini dapat mempertahankan data mereka tanpa suplai

energi. Ketatnya aturan waktu dan keterbatasan hardware dalam sistem ini membuat ia sulit untuk dikombinasikan dengan sistem lain, seperti sistim multiprosesor dengan sistem time-sharing. Untuk implementasinya, dapat digunakan dalam bidang pencitraan medis, sistem

metode ini telah diimplementasikan dalam bidang penelitian ilmiah.

1.3. Arsitektur Komputer

Secara umum, sistem komputer terdiri atas CPU dan sejumlah device controller yang terhubung melalui sebuah bus yang menyediakan akses ke memori. Umumnya, setiap device controller bertanggung jawab atas sebuah hardware spesisfik. Setiap device dan CPU dapat beroperasi secara konkuren untuk mendapatkan akses ke memori. Adanya beberapa hardware ini dapat menyebabkan masalah sinkronisasi. Karena itu, tindakan pencegahan yang dilakukan adalah

sebuah memory controller ditambahkan untuk sinkronisasi akses memori.

Arsitektur komputer telah mengalami perkembangan secara terus-menerus sampai saat ini.

(12)

Gambar 1.5. Arsitektur komputer tradisional

Seiring perjalanan waktu dan hasil riset teknologi, konsep von-neuman tersebut

diterjemahkan dalam penciptaan komputer-komputer secara lebih riil, sistem komputer yang lebih

maju membawa arsitektur yang lebih kompleks (dapat dilihat pada gambar 1.6). Untuk

meningkatkan performa, digunakan beberapa buah bus. Tiap bus merupakan jalur data antara beberapa device yang berbeda. Dengan cara ini RAM, Prosesor, GPU (VGA AGP) dihubungkan oleh bus utama berkecepatan tinggi yang lebih dikenal dengan nama FSB (Front Side Bus). Sementara perangkat lain yang lebih lambat dihubungkan oleh bus yang berkecepatan lebih rendah yang terhubung dengan bus lain yang lebih cepat sampai ke bus utama. Untuk komunikasi antar bus ini digunakan sebuah bridge .

(13)

Gambar 1.6. Arsitektur komputer umum

Untuk arsitektur komputer yang lebih modern, dapat dilihat pada gambar 1.7.

Gambar 1.7. Arsitektur komputer modern

1.4. Proteksi Perangkat Keras

Untuk meningkatkan utilisasi sistem, sistem operasi akan membagi sistem sumber daya

sepanjang program secara simultan. Pengertian spooling adalah suatu program dapat dikerjakan walau pun I/O masih mengerjakan proses lainnya dan disk secara bersamaan menggunakan data

(14)

pada memori pada satu waktu.

Pembagian ini memang menguntungkan sebab banyak proses dapat berjalan pada satu waktu

akan tetapi mengakibatkan masalah-masalah baru. Ketika tidak di sharing, maka jika terjadi kesalahan hanyalah akan membuat kesalahan program. Tapi jika di-sharing jika terjadi kesalahan pada satu proses atau program akan berpengaruh pada proses lainnya, sehingga diperlukan

pelindung (proteksi). Tanpa proteksi, jika terjadi kesalahan maka hanya satu saja program yang

dapat dijalankan atau seluruh output pasti diragukan.

Banyak kesalahan pemprograman dideteksi oleh perangkat keras yang biasanya ditangani

oleh sistem operasi. Jika terjadi kesalahan program, perangkat keras akan meneruskan kepada

sistem operasi dan sistem operasi akan menginterupsi dan mengakhirinya. Pesan kesalahan

disampaikan, dan memori dari program akan dibuang. Tapi memori yang terbuang biasanya

tersimpan pada disk agar programmer bisa membetulkan kesalahan dan menjalankan ulang.

a. Dual mode operation

Membagi sumber daya sistem yang memerlukan sistem operasi untuk menjamin bahwa

program yang salah tidak menyebabkan program lain berjalan salah juga. Menyediakan dukungan

hardware untuk membedakan minimal dua mode operasi yaitu: User Mode - Eksekusi dikendalikan oleh user; Monitor/Kernel/System Mode - Eksekusi dikendalikan oleh sistem operasi. Instruksi tertentu hanya berjalan di mode ini (Privileged Instruction). Ditambahkan sebuah bit penanda operasi. Jika terjadi interrupt, maka hardware berpindah ke monitor mode. Untuk lebih jelasnya, dapat dilhat pada gambar 1.8.

Gambar 1.8. Proteksi pada dual mode operation

b. Proteksi I/O

Pengguna dapat mengacaukan sistem operasi dengan melakukan instruksi I/O ilegal dengan

mengakses lokasi memori untuk sistem operasi atau dengan cara hendak melepaskan diri dari

(15)

privilidge instruction sehingga mereka tidak bisa mengerjakan instruksi I/O secara langsung ke memori tapi harus melalui sistem operasi terlebih dahulu. Proteksi I/O dikatakan selesai jika

pengguna dapat dipastikan tidak akan menyentuh mode monitor. Jika hal ini terjadi proteksi I/O

dapat dikompromikan. Visualisasinya dapat dilihat pada gambar 1.9.

Gambar 1.9. Proteksi I/O

c. Proteksi Memori

Salah satu proteksi perangkat keras ialah dengan proteksi memori yaitu dengan pembatasan

penggunaan memori (dapat dilihat pada gambar 1.10). Disini dikenal beberapa istilah, yaitu:

● Base Register yaitu alamat memori fisik awal yang dialokasikan/ boleh digunakan oleh

pengguna.

● Limit Register yaitu nilai batas dari alamat memori fisik awal yang dialokasikan/boleh

digunakan oleh pengguna.

● Proteksi Perangkat Keras.

Gambar

Gambar 1.1. Skema blok sistem komputer
Gambar 1.2. Siklus instruksi dasar
Gambar 1.3. Arsitektur ISA
Gambar 1.4. Sistem terdistribusi
+5

Referensi

Dokumen terkait

28 Sept 2006 Pengantar Sistem Komputer: Organsasi CPU 12 CPU yang bertugas untuk mengeksekusi program yang tersimpan dalam memori utama dengan melakukan:. • Fetching

satu register dari CPU berfungsi sebagai pencacah alamat (Program Counter= PCI yang digunakan untuk memegang alamat sebuah instruksi atau data berikutnya yang akan diambil

PC (Program Counter) : untuk menyimpan alamat (address) lokasi dari main memory yang berisi instruksi yang sedang diproses.. MAR (Memory

 Memory Buffer Register (MBR), berisi sebuah word yang akan disimpan di dalam memori atau.. digunakan untuk menerima word

& program yg disimpan bila sumber daya energi (listrik) dihentikan.. Juga pd memori utama dg peralatan masukan/keluaran saling berhubungan, maka

• Memory Buffer Register (MBR), berisi sebuah word yang akan disimpan di dalam memori atau digunakan untuk menerima word dari memori.. • Memory Address Register (MAR),

Hanya memori utama dan register merupakan tempat penyimpanan yang dapat diakses secara langsung oleh prosesor.. Oleh karena itu instruksi dan data yang akan dieksekusi harus disimpan

Register yang digunakan untuk menyimpan lokasi data dari main memory yang berisi instruksi yang sedang