Sistem
komputer
komputer adalah mesin yang melakukuan kalkulasi
dan mengolah informasi.kompuer bekerja di bawah kendali program komputer.
Program komputer adalah sekuen (Berturutan ) intruksi yang memberi tau komputer
mengenai apayang perlu di lakukan.Perngkat keras adalah komponen elektronik dan
mekanis. Perangkat lunak adalah program yang mengendalikan komputer. Komputer
maksud umum (General purpose computer) dapat menyimpan banyak program berbeda
di memorinya .
Komputer merupakan salah satu kemampuan otak yang
di miliki manusia. Komputer di gunakan di banyakbidang militer, bisnis,
industri, sains dan pendidikan. Implementasi istem berubah sepangjang masa,
namun konsep mendasari serupa. Semua sistem komputer menpunyai komponen
perangkat keras dan perangkat lunak serupa yang menjalankan fungsi-fungsi
serupa.
Sejarah
mesin komputasi
Manusia mempunyai keterbatasan dalam komputasi ,
yaitu:
1. Kecepatan perhitungan manusia terbatas
2.
Manusia sangat mudah membuat
kesalahan
Secara garis besar terdapat dua era
teknologi perngkat bantu komputasi yaitu:
1. Era mekanis
Yaitu komputer yang memanfaatkan gerakan benda
masif, tidak sampai level elektron serta tidak memanfaatkan listrik sebagai
pembangkit.
Komputer mekanis mempunyai tiga penyebab
kelemahan, yaitu:
Ø Kecepatan komputasi di batasi inersia
bagian-bagian yang bergerak.
Ø Transmisi informasi alat-alat mekanis
tidak praktis susah di pakai serta handal.
Ø Perangkat dapat menjadi aus.
Upaya pada era mekanis antara lain:
Ø 2500 sebelum masehi, manusia mulai
mengembangkan alat bantu perhitungan, yaitu sempoa di Cina.
Ø Tahun 1642, Blaise Pscal membangun penjumlah/pengurang mekanis.
Ø Tahun 1827, Charles Babage memangun diference engine.
Ø Tahun 1941, Konrad Zuse membangun binary mechanical decimal computer.
Ø Tahun 1944, Howard Aiken membangun electromechanical
decimal computer, IBM Howard Mark
Sempoa (Abacus)
Sempoa berupa satu rangka persegi berisi sederet
kancing. Kancig_kancing dapat di gerakan naik turun sepanjang sumbu.
Posisi-posisi deret kancing menunjukan nilai nilai angka. Kancing-kancing ini
mempersentasikan kancing kancing, keluaran data berisi observasi manusia atas
posisi-posisi kancing di akhir komputasi. Kendali
eksekusi algoritma berada di operator manusia. Sempoa adalah sistem penyimpanan
data di kombinasi dengan manusia sebagai kendali membentuk satu mesin algoritma
/ komputasi lengkap.
Penggunaan gir
Penemu perngkat /mesin komputasi bidang yng menggunakan kemajuan di
bidang mekanika adalah Blaise Pascal (1623-1662) dari Jerman, dan
di persentasi denganposisi gir-gir di mana matadi masukan secara mekanis dengan
menetapkan posisi gir-gir. Keluaran mesin Pascal dan Leibniz di peroleh dengan
mengobservasi posisi akhir gir-gir sebagai mana spedometer motor.
Charles Babbage mempunyai
visi lebih maju di mana mesin dapat mencetak nilai keluaran di kertas. Mesin
Babbage juga di lengkapi kemampuan memogram langkah-langkah algoritma yang akan
di lakukan mesin kartu-kartu kertas berlubang.
Mesin yang di impikan Charles
Babbage gagal di wujudkan. Teorinya tidak dapat di implementasi menggunakan
teknologi mekanika.
Gagasan memprogram algoritma
(berati urutan langkah pengerjaan) menggunakan kertas berlubang berasal dari Joseph
Marie Jacquard (1801) untuk mengendali mesin tenun . Langkah-langkah yang
digunakan dalam penenunan ditentukan pola lubang-lubang dikartu kertas . Dengan
cara ini, algoritma dilakukan mesin dapat secara mudah diganti untuk
menghasilkan rancangan-rancangan tenun yang berbeda.
Pada 1880, Herman Hollerith bekerja untuk Biro Sensus amerika
Serikat mengembangkan teknik guna mempercepat pengolahan data sensus penduduk
Amerika Serikat. Holerith mengusulkan data sensus di masukan melalui
kartu-kartu berlubang dan secara otomatis di tabulasi dengan mesin komputasi
yang di rancang khusus. Dengan cara ini, pengolahan dta sensus selesai dalam
waktu kurang dari 3 tahun, biasanya adalah 10 tahun. Pada 1890, Holerith
meninggalkan Biro Sensus dan mendirikan Tabulating Machine Company Yang
kemudian menjadi bagian perusahaan International Bisnis Machine (IBM).
Era
peralihan : mekanik-elektronik
Contoh mesinkomputasi di era ini adalah mesin elektromekanik George
Stibiz(1940) di Bell Laboratories dan Mark I (1944) yang di rancang
Universitas Harvardoleh Howard Aiken bersama IBM.
Mesin ini menggunakan relay-relay
mekanis di kendalikan secara elektronoik. Mesin segera usang karena muncul
penemuan tabung hampa ( vacuum tube ) untuk membangun komputer digital
yan sepenuhnya elektronik . Mesin Bell oleh Stibiz membuktikan mesin
mampu melkukan komputasi 24 jam sehari selama 7 hari per minggu dengan sedikit
kesalahan dan sedikit waktu malfunction.
Generasi ini merupakan awal pengembangan sistem komputasi elektronik,
mengganti gagasan mesin komputasi mekanis.
1.1.2 Era Elektron
Pegerakan
mekanik di ganti elektron berkecepatan cahaya yang tidak pernah aus
sehinggameningkatkan kecepatan dan kehandalan. Mesin pada era ini dapat di
anggap sebagai implementasi mesin komputasi Charles Babbage dengan teknologi
elektronik yang tidak aus dan berkecepatan tinggi.
Mesin Atanasoff-Berry
(1937-1941) di Iowa State College (atau Iowa State University) Oleh Jhon
Atanasoff dan Clifford Berry. Atanasoff merumuskan prinsip
kalkulator elektronik pertama. Mesin yang di rancang mampu menyelesaikan
Persamaan simultan 29 variabel tidak di ketahui secara akurat. Prinsip penting
yang di temukan adalah penggunaan sistem angka basis 2 atau biner bukan basis
10 atau dasimal serta prinsip memori dapat di gunakan kembali (machine-regenerative
memori).
Mesin ini adalah Colosus di Inggris untuk memecah sandi tentara Jerman selama
akhir perang dunia II.
Mesin ENIAC
( elektronik numerical integrator and calculator )
Merupakan mesin fleksibelyang
di bangun Jhon Mauchly dan J. Presper Ecket di moore School of
Electrical Enginering, Universitas Pennsylvania. John Von Neuman,
konsultan proyek ENIAC mengusulkan konsep Stored proggram.
Usulanya adalah menyimpan inststruksi-instruksi bersama data data di komputer.
Konsep inimeningkatkan keluwesan (flexibility) komputer dengan dua cara :
1. Instruksi-instruksi
dapat di ubah tanpa mengkawat secara manual terhadap koneksi koneksi
sehingga lebih cepat di lakukan.
2. Karena
instruksi-instruksi di simpan sebagai angka-angka, komputer dapat mengolah
instruksi-instruksi sebagai mana data, akibatnya memungkinkan modifikasi
otomatis terhadap instruksi instruksi dan pengubahan skuen-skuen instruksi.
Instruksi mesin adalah
instruksi yang di kode kan sebagai pola bit secara langsung di kenali oleh
pemproses.Bahasa mesin adalah himpunan semua instruksi yang di kenali oleh
mesin. Terdapat dua pendekatan yaitu (1) Reduce Instruktion Set Computing
(RISC) di mana instruksi-instruksi yang berjumlah sedikit, sederhana efisien
dan cepat. Contoh RISC adalah Power PC dari Apple/IBM/Motorola. (2) Complex
Instruktion Set Computing(CISC) yang brisi banyak instruksi yang nyaman dan
ampuh. Contoh CISC adalah pentium dari Intel.
1.3 Skema dasar sistem komputer
Pada abstraksi tingkat atas, sistem komputer terdiri empat komponen utama yang
bekerja sama dan berintraksi untuk mencapai tujuan sistem komputer, yaitu
komputasi.
Empat komponen pokok di sistem komputer adalah :
1. Pemproses, befungsi mengolah data dan mengendali operasi komputer.
2. Memori utama, berfungsi menyimpan data dan program. Program harus di simpan
di memori utama sebelum dapat di eksekusi. Data harus di simpan di memori
sebelum dapat dimanipulasi pemproses.Memori utama biasanya volatile, tidak dapat
mempertahankan data dan programyang di simpan bila sumber daya energi (Listrik)
dihentikan.
3. Perangkat masukan dan keluaran, berfungsi memindah data antara komputer dan
lingkungan eksternal.
4. Interkoneksi antar komponen, struktur dan mekenisme menghubungkan ketiga
komponen (pemproses, memori utama dan perangkat masukan/keluaran).
Saat ini komputer menikuti konsep program di
simpan (stored program concept) Von Neumant, yaitu program (kumpulan
instruksi) di simpan di suatu tempat (yaitu memori) di mana kemudian instruksi
di ambil untuk di eksekusi.Konsep ini menghasilkan keluwesan (fleksibilitas)
kegunaan komputer yang sangat luar biasa.
Perangkat masukan dan keluaran
Lingkungan eksternal dapat di antar muka (interface)
beragam perangkat Seperti : perangkat penyimpanan sekunder, perngakat
komunikasi, terminal, dsbg. Perngkat ini berfungsi menghubungkan komputer
dengan lingkungan luar sehingga komputer di pengaruhi dan mempengaruhi
lingkungan.
Interkoneksi antar komponen
Secara fisik interkoneksi antar komponen berupa
perkawatan baik berupa perawatan logam atau cara koneksi fisik lain. Komponen
interkoneksi sesungguhnya tidak hanya perkawatan tapi juga memerlukan tata cara
aturan (atau protokol) komunikasi di antatra elemen-elemen terhubung yang
berkomunikasi agar tidak kacau sehingga mencapai yujuan. Terdapat banyak buss, ISA, VESA, dan PCI adalah yang popular.
Bus membawa byte informasi antar
komponen. Bus data bersifat dua arah
(bidirectional) di mana data dapat di
simpan dan di ambil dari memori utama, atau di kirim dan di ambil dari port masukan keluaran. Bus kendali bersifat dua arah. Bus ukendali untuk persinyalan yang
mengatur komunikasi antara pemproses dengan memori utama dan port masukan/keluaran. Bus alamat bersifat satu arah (unidirectional) dimana alamat memori
akan di kirim ke memori utama untuk menyatakan alamat memori yang dikehendaki
pemproses untuk di ambil atau sebagai lokasi penyimpanan. Demikian juga
pemproses pengirim alamat port yang hedak di ambil atau dikirimi data.
1.3.1 Pemroses
Pemproses juga di sebut
CPU (central procesing unit).
Pemproses merupakan jantung kompter. Proses pengendali operasi komputer
dan mengolah data.Pemproses mengambil instruksi dari memori dan mengeksekusi
instruksi yang di ambil.
Eksekusi pemproses di tuntun clock. Clock
bertugas mengsingkronasi seluruh elemen koputer. Clock membangkitkan pulsa/detak ke pemproses. Pada tiap pulsa/detak clock, pemproses melekukan kerja.
Pemproses melakukan kerja dengan urutan langkah sebagai berikut :
·
Mengambil instruksi yang di
kodekan secara biner dari memori utama.
·
Men-dekode instruksi menjadi
aksi aksi sederhana.
·
Melaksanakan aksi aksi ini
Pemproses terdiri dari tiga komponen, yaitu :
1. CU (Control unit), berfungsi mengendali operasi sistem komputer.
2. ALU (Aritmatic logogical unit), berfungsi melakukan operasi
aritmatika dan logika.
3. Register-register, untuk membantu melaksanakan opersai pemproses.
.3.2 Memori
Memori berfungsi untuk
menyimpan data dan pemprograman. Terdapat beberapa tipe memori, mulai yang
tercepat aksesnya sampai yang terlambat.
1.3.3 Perangkat Masukan/Keluaran
Perangkat masukan /keluaran di pergunakan sistem komputer untuk berinteraksi
dengan lingkungan luar, baik ke pemakai atau lingkungan secara umum.Perangkat
masukan terdiri dari dua bagian yaitu :
1. Komponen mekanis yaitu perngkat itu sendiri.
2. Komponen elektronis yaitu pengendali perngkat brupa chip controller.
Perngkat masukan atau keluaran adalah perangkat
nyata yang di kendalikan perangkat elektronis chip contrller di board sistem
atau card. Controller di hubungkan dengan pemproses dan komponen-komponen lain
lewat bus. Controller adalah berbeda
mekanisme. Controller mempunyai regiter-register untuk memrintah atau
mengendali serta untuk menetahui status . Control
register di gunakan maksud kendali . Status register berisi status yang
mendeskripsi kode kesalahan kerja perangkat masukan/keluaran.
Register-register itu
diacu sebagai port-port.
Masing-masing register di alamat
sebagai port tertentu. Masing-masing controler menjadi dapat di amati secara
unik /individu oleh pemproses agar perangkat lunak device driver di sistem operasi dapat menulis ke regiter-register perangkat
masukan/keluaran. Dengan demikian device
driver mengendali perangkat masukan /keluaran. Identivikasi controler berdasar port-port yang memacu register-register
milik controler.
1.3.4 Interkoneksi Antar Komponen
Interkoneksi antar
komponen di sebut bus. Interkoneksi
berkaitan dengan cara hubungan antar komponen sistem komputer.
Bus terduri dari tiga macam, yaitu :
1. Bus alamat (address bus)
2. Bus data (data bus)
3. Bus kendali (control bus)
Bus alamat
Jalur bersifat satu
arah. Bus alamat untuk memberi alamat
memori atau port yang hendak di
akses. CPU mengirim alamat lokasi memori atau port yang akan di tulis atau di baca bus ini. Bus alamat berisi 16,20,24 jalur sinyal pararel atau
lebih. jumlah lokasi memori yang dapat di alamati di tentukan jumlah jalur
alamat. jika pemproses mempunyai N jalur alamat maka pemproses dapat
mengalamati 2 N (2N) lokasi memori dan/port.
Bus data
Jalur ini bersifat dua
arah. Jalur untuk CPU dapat membaca dan mengirim data dari/ke memori/port. Bus data berisi 8,16,32 jalur sinyal pararel atau lebih. Banyak
perangkat yang di cantolkan ke bus
data tapi hanya satu perangkat pada satu saat yang tepat memakai. Untuk itu,
perangkat harus mempunyai tiga state (tristate) agar dapat di pasang
pada bus data.
Bus kendali
Jalur ini bersifat dua
arah. Bus kendali berisi 4-10 jalur
sinyal pararel. CPU mengirin sinyal sinyal pada bus kendali untuk memerintah memori atau port serta CPU memerima status dan sinyal balik memori atau port.
Sinyal bus kendali antara lain
·
Memori read untuk
memrintah membaca memori.
·
Memori write untuk
memerintah menulis memori.
·
I/O read untuk memerintah
membaca port.
·
I/O write untuk
memerintah membaca port.
·
Dan sebagainya.
Mekanisme pembacaan
Untukmembaca data suatu
lokasi memori, CPU mengirim alamat memori di kehendaki (di simpan di
dalam MAR) melalui bus alamat kemudian
mengirim sinyal memory read pada bus kendali. Sinyal memori read memerintahkan ke perngkat memori untuk mengeluarkan dat
pada lokasi tersebut ke bus data agar
di baca CPU.
Inter koneksi antar komponen ini membentuk satu sistem sendiri. Sistem
interkoneksi antar komponen yang poular
antara lain ISA, VESA, dan PCI.
1.4 Eksekusi Instruksi
Fungsi utama komputer adalah mengaeksekusi program. Berdasrkan konsep program
tersimpan, program (barisan instruksi) yang di eksekusi berada di memori.
Pemproses melakukan tugasnya dengan mengeksekusi instruksi-instruksi di
program.
Eksekusi program di kendalikan oleh dua register
khusus yaitu :
1. Program counter, register ini menunjuk alamat instruksi berikutnya yang
akan di eksekusi.
2. Instruction register, register berisi instruksi yang saat itu di
eksekusi.
Tahap pemprosesan instruksi berisi dua tahap,
yaitu :
1. Pemproses membaca instruksi dari memori (fecth).
2. Pemproses mangeksekusi instruksi (execute)
Eksekusi program berisi pengulangan tahap fecth dan execute. Eksekusi instruksi (yaitu tahap execute) dapat melibatkan beberapa operasi lebih dasar dan
bergantung sifat instruksi yang sedang di jalankan. Pemprosesan satu instruksi
di sebut satu siklus instruksi (instruction cycle).
Sistem bekerja secara terorganisasi dan stabil. Mekanisme kendali
paling penting adalah pewaktuan. CPU menggunakan satu clock,yatu quart
cristalseperti jam digital.Periode tetap untuk memandu sehingga semuanya
berjalan secara singkron. Pada satu periode yang berisi, clock mengirim pulsa
listrik ynag menyebabkan bit-bit bergerak dari satu tempat ke tempat di dalam
atau grbang gerbang logicatau antara gerbang gerbang logic dan register.
Satuinstruksi sederhana dapat berlangsung selama satu siklus clock. CPU yang
bekerja pada 700 jutasiklus perdetik di sebut berfungsi pada 700 MHz (Mega
Hertz untuk menghormati ilmuwan Jerman Gustav Hertz).
Produktivitas CPU dapat di tingkatkan dengan meningkatkan kesepatan clock.
Selain itu dapat di tempuh dangan strategi melakukan lebih dari satu
tugas selama masing masing siklus clock yang di sebut pipelining.
Padapipelining satu bagian CPU mengambil instruksi baru, bagian lain
menganalisis , bagian lain mengeksekusi, danbagian lain menyimpan menyimpan
hasil di mana eksekusi di gambarkan sebagai empat tahap (fecth, analize,
decode, execute, bukan hanya dua tahap fecth dan execute seperti penyederhanaan
pada gambar1-2). CPU kompleks mempunyai banyak tahap pipeline, CPU Intel
generasi keenam ( seperti pentium Pro, Pentiun III ) mempunyai 14 tahap
pipeline. CPU intel Pentium hanyalima tahappipeline. CPU modern mengambil
beberapa instruksi sekaligus, menempatkan pada tahap pertama pipeline yang
panjang di sebut antrian prapengambilan ((perfect queue). Dengan cara ini
menjamin pipeline selalu penuh sehingga lebih efisien. Pemproses dengan dengan
kemampuan ini biasa di sebut superpipeline.
Peningkatan berikutnya adalah tidak hanya satu pipeline melainkan beberapa
ppeline. Pemproses ini bisa di sebut superscalar.
1.5 Kejadian Saat Komputer Dihidupkan
Berikut ini ringkasan apa yang terjadi saat komputer mulai dihidupkan. Awal
menghidupkan komputer biasa di hidupkan dengan booting up atau booting.
Begitu catu daya dinyalakan, arus listrik mengalir ke semua chip dan
sekitarnya. ROM BIOS (read only memory, basic input/basic output, biasanya
disebut BIOS) di rancang mulai memberi perintah begitu mnerima daya listrik .
BIOS berisi barisan instruksi berikutnya dimana program di chip ini
mengelola proses booting.
Awal mula proses booting adalah memverifikasi semua komponen
bekerja secara benar. Setelah ini selesai, BIOS mengalihkan kendalike CPU.
Tidak seperti BIOS yang telah berisi instruksi, CPU tidak berisi instruksi.
Instruksi terakhir BIOS ke CPU adalah untuk melompat ke lokasi spesifik untuk
menemukan instruksi berikutnya. Instruksi di dalamnya brisi cara memulai proses
memuat sistem operasi.
1.6
Interupsi
Kita dapat mengendali pernagkat I/O secara singkron, yaitu mengirim permintaan
satu operasi (misalnya menulis blok memori ke disk) lalu menunggu
selesainya operasi. Metode ini sangat tidak efisien dan sistem operasi banyak
menganggur, menunggu operasi selesai. Cara yang lebih baik dan efisien adalah
begitu selesai membuat permintaan, segera pemproses mengerjakan lainya dan
kemudian di intreupsi saat perangkat menyelesaikan permintaan. Dengan caraini
dapat terjadi banyak permintaan ke perangkat berlangsung pada waktu yang sama.
Untuk teknik ini harus terdapat dukungan perangkat keras sehingga perangakat
dapat membuat interupsi saat CPU sedang bekerja. Kebanyakan general purpose
processor menggunakan metode serup. Beberapa pin pemproses di kawati
sehingga begitu voltase berubah, menyebabkan pemproses menghen-
tikan yang sedang di kerjakan
danmemulai eksekusi kode khusus untuk menengani interupsi, yaitu interupsi.Salah
satu pin di hubungkan interval timer dan menerima interupsi
setiap satu selang waktu tertentu (dalam ukuran seper-seribu detik), dan pin
lain dapat di hubungkan dengan perangkat lain di sistem seperti SCSI
controller.
Kemudian, sistem menggunakan interrup controller untuk menangani
interupsi sebelum melewatkan sinyal ke pin interupsi di pemproses. Cara
ini menghemat pin-pin interupsi di pemproses dan mempunyai maskregister
mengaktifkan dan menonaktifkan interupsi. Register status mengirim
interupsi yang aktivdi sistem.
Beberapa interupsi di sistem di kawatkan secara perangkat keras, seperti interval
timer RCT(real time clock) secara permanen di hubungkan ke pin 3
interrup controller. Beberap pin yang di hubungkan dapat di
tentikan controller card Saat di cantol ke slot ISA atau PCI
tertentu. Contoh pin 4 di interrup controller dapat
di hubungkan ke slot PCI nomor 0, ethernet card atau SCSI controller Lini
bawah setiap sistem mempunyai mekanisme routing interupsi sendiri.
Sistem operasi harus cukup fleksibel untuk mengatasinya.
Kebanyakan general purpose processor menangani interupsi dengan cara
yang sama. Ketika interupsi perangkat keras terjadi, pemproses menghentikan
instruksi yang sedang di eksekusi dan lompat ke lokasi di memori yang memuat
kode penanganan instrupsi. Kode biasanya beropersai di mode spesial (interrup
mode). Biasanya tidak ada inerupsi yang terjadi di mode ini. Beberapa
pemproses memringkat interupsi interupsi . Interupsi level lebih tinggi
dapat menginstrupsi interupsi level lebih rendah. Kode pengaman interupsi
harus secara hati hati di simpan. Beberapapemproses mempunyai sekumpulan register
khusus yang hanya ada di interrup mode dan kodeinterupsi
dapat menggunakan register ini.
Setelah penanganan interupsi di lakukan, state CPUBdi kembalikan.
Pemproses melanjutkan kerja sebelumdi interupsi. Pemprosesan melanjutkan kerja
sebelum di interupsi. Pemprosesan interupsi efisien selama efisien operasi
tidak block karena interupsi selalu sering atau terlalu lama.
Sistem berbasis PCI sangat lebih dinamis di banding sistem berbasis ISA. Pin
interupsi yaitu ISA device serinng menggunakan jumper di
perangkat kerasdan bersifat tetap di devie driver. Perangkat PCI
mempunyai interupsi yang di alokasikan PCI BIOS atau subsitem PCI saat PCI
diinisialisai saatsistem boot. Tiap perangkat PCI dapat menggunakan
salah satu pin interupsi, yaitu A, B, C, atau D, Ini bersifat tetap saat
perangakat di bangun dan kebanyakan perangkat secara default menginstrupsi
pada pin A. Saluran interupsi PCI A, B, C dan D untuk tiap slot PCI di
ruteke interrupt controller, pin B dari slot PCI di rute ke interrupt
controller . Pin A dari slot PCI 4 dapat dirute ke pin
6 dari interupt controller . Pin B dari slot PCI 4 ke pin 7
dari interupt controller, dan harus terdapat satu kode yang memehami
topologi routing interupsi PCI. Pada PC berbasis intel, ini terdapat di
BIOS yang berjalan saat boot. Untuk sistem tanpa BIOS (seperti sistem
berbasis Alpha AXP), Rernel sistem operasi melekukan setup ini.