mengenal sistem komputer -...
TRANSCRIPT
Lisensi Dokumen: Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
MENGENAL SISTEM KOMPUTER
SARTIM
Abstrak
Sistem komputer adalah suatu jaringan elektronik yang terdiri dari perangkat lunak dan
perangkat keras yang melakukan tugas tertentu(menerima input,memproses input,
menyimpan perintah, dan menyediakan output dalam bentuk informasi).
Kata Kunci:sistem
Pendahuluan
Penulis berharap dengan artikel ini, pembaca akan lebih bertambah pengetahuan dan
wawasan tentang ilmu pengetahuan teknologi informasi.
Pembahasan
Apakah Sistem Komputer?
Sistem komputer pada tingkat hardware terdiri dari empat komponen dasar.
1. Prosesor
Berfungsi untuk mengontrol operasi –operasi komputer dan melakukan fungsi-
fungsi pemerosesan data.
2. Memori utama
Berfungsi menyimpan data dan program. Biasanya bersifat volatile dan sering
disebut dengan memori primer atau memori nyata(real memori).
3. Modul I/O
Lisensi Dokumen: Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Berfungsi untuk memindahkandata antara komputer dan perangkat eksternal yang
dibutuhkan. Perangkat eksternal biasanya terdiri dari bermacam-macam jenis,
termasuk perangkat memori sekunder, perangkat komunikasi, maupun terminal.
4. Sistem bus
Terdiri dari beberapa struktur dan mekanisme yang berguna untuk komunikasi
antara prosesor, memori utama, dan modul I/O.
Sistem komputer dengan empat komponen dasar di atas dapat digambarkan sebagai
berikut:
Pada perkembangannya, sistem komputer modern terdiri dari CPU dan sejumlah
pengontrol perangkat(device controller) yang dihubungkan dengan sistem bus yang
menyediakan akses ke memori yang dapat dibagi-pakai(share). Setiap device controller
secara spesifik mengontrol perangkatnya (contoh: disk drive, video display, dan
perangkat audio). CPU dan device controller dapat bekerja secara bersamaan dan saling
bersaing untuk mendapatkan akses ke memori. Oleh sebab itu dibutuhkan sebuah
memori controller yang berfungsi melakukan sinkronisasi akses ke memori. Sistem
komputer modern dapat digambarkan sebagai berikut:
Lisensi Dokumen: Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Interrupt
Interrupt adalah penyelaan suatu proses karena ada proses lain yang perlu dikerjakan
lebih dulu. Ketika interrupt selesai, maka proses yang di-interrupt akan dilanjutkan
kembali. Interrupt bertujuan untuk meningkatkan efesiensi pemerosesan yang berkaitan
erat dengan proses I/O. dengan intterupt, prosessor dapat digunakan untuk
mengeksekusi intruksi lain ketika suatu operasi I/O sedang dilakukan.
Dari sudut pandanga pemakai program, suatu interrupt adalah suatu penyelaan urutan
normal dari eksekusi program.
Interrupt handler adalah suatu program yang secara umum merupakan bagian dari
sistem operasi yang pada dasarnya menetukan sifat interrupt dan melakukan tindakan-
tindakan yang diperlukan, misalnya menentukan modul I/O mana yang dibangkitkan
oleh interrupt dan memanggil program yang dibutuhkan untuk memanipulasi modul I/O
tersebut.
Interrupt dan intruction cycle
Jika prosesor tidak memakai interrupt, maka prosesor hanya membutuhkan intruksi
tunggal yang disebut dengan intruction code yang hanya menggunakan dua langkah
deskripsi sederhana yang dinamakan fetch cycle dan excute cycle. Eksekusi program
hanya berhenti ketika komputer dimatikan atau menemukan beberapa error yang tidak
dapat diperbaiki.
Lisensi Dokumen: Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Untuk menampung interrupt, maka interrupt cycle harus ditambahkan di intruction cycle. Di
dalam interrupt cycle, prosesor memeriksa keberadaan interrupt, yang ditandai dengan
munculnya tanda interrupt. Jika tidak ada interrupt, prosesor memproses fetch cycle dan
mengambil intruksi berikutnya dalam program tersebut. Jika ada interrupt, prosesor menunda
eksekusi program dan mengeksekusi rutin interrupt handler. Untuk lebih jelasnya, perhatikan
gambar dibawah ini:
Interrupt berganda
Interrupt dapat terjadi secara berganda, artinya ada lebih dari satu interrupt yang dibutukan
pada saat suatu program berjalan. Contohnya suatu program menerima data dari jalur
Lisensi Dokumen: Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
komunikasi data dan mencetak hasilny. Printer akan membangkitkan interrupt setiap
kali selesai mencetak(menyelesaikan operasi pencetakan). Controller jalur komunikasi
data akan akan membangkitkan interrupt setiap kali ada suatu unit data yang datang.
Kejadian ini menimbulkan interrupt komunikasi data muncul saat interrupt printer
sedang diproses. Ada dua cara untuk mengatasi hal tersebut:
a. Menon-aktifkan interrupt ketika suatu interrupt sedang diproses. Interrupt dinon-
aktifkan berarti bahwa prosesor akan mengabaikan permintaan interrupt baru.
Jika suatu interrupt baru muncul pada saat itu maka interrupt tersebutakan
ditunda dan akan diperiksa oleh prosesor setelah prosesor mengaktifkan kembali
interupt. Setelah rutin interrupt handler menyelesaikan pekerjaannya, maka
interrupt diaktifkan sebelum kembali ke program pemakai dan prosesor
memeriksa apakah ada tambahan interupt atau tidak. Cara ini merupakan cara
sederhana dan baik, karena Interrupt Handler dalam urutan yang benar-benar
sekuensial. Hal tersebut digambarkansebagai berikut:
b. Mendefinisikan prioritas interrupt sehingga interrupt dengan prioritas yang lebih
tinggi dapat menyebabkan interrupt handler dengan prioritas lebih rendah ter-
interrupt. Sebagai contoh, sebuah sistem dengan tiga perangkat I/O, yaitu
printer(prioritas 2), disk(prioritas 4), dan jalur komunikasi(prioritas 5).
Pada saat program pemakai dieksekusi, terjadi interrupt untuk printer.
Ketika interrupt printer masih dikerjakan dan belum selesai, terjadi
interrupt untuk jalur komunikasi.
Karena jalur komunikasi berprioritas lebih tinggi dibandingkan prioritas
printer, maka printer ter-interrupt, untuk mengerjakan interrupt jalur
komunikasi. Ketika interrupt jalur komunikasi belum selesai dikerjakan,
terjadi untuk disk.
Lisensi Dokumen: Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Karena prioritas untuk disk lebih rendah dibandingkan prioritas jalur
komunikasi, maka interrupt disk ditunda dulu menunggu interrupt jalur
komunikasi selesai dikerjakan.
Setelah selesai mengerjakan interrupt jalur komunikasi, maka prosesor
akan mengerjakan interrupt printer, tetapi karena ada interrupt untuk disk
yang ditunda dan berprioritas lebih tinggi dibandingkan prioritas printer,
maka interrupt printer kembali ter-interrupt untuk mengerjakan interrupt
disk.
Setelah interrupt disk selesai dikerjakan, barulah interrupt printer
dikerjakan kembali.
Sebenarnya tidak hanya I/O saja yang membutuhkan interrupt, tetapi perangkat-
perangkat(modul-modul) yang lain juga membutuhkannya. Dibawah ini tabel
modul-modul yang membutuhkan interrupt:
1 program Dibangkitkan oleh suatu kondisi yang muncul sebagai nilai
dari pengeksekusian suatu intruksi, misalnya arithmetic
overflow, division by zero, menempatkan data diluar
jangkauan memori yang digunakan oleh pemakai, dan
mengeksekusi intruksi mesin yang salah.
2 Timer Dibangkitkan oleh timer yang ada didalam prosesor. Hal ini
mengizinkan sistem operasi untukmengerjakan fungsi-fungsi
tetap yang sudah ditentukan.
3 I/O Dibangitkan oleh controller I/O, untuk memberikan tanda
suatu pekerjaan sudah selesai secara normal atau tanda
Lisensi Dokumen: Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
untuk berbagai macam kondisi error.
4 Kegagalan
hardware
Dibangkitkan oleh suatu kegagalan, misalnya kegagalan
power atau memory parity error.
Teknik Komunikasi I/O
Pembahasan tentang teknik komunikasi I/O ini terdiri dari Progammed I/O, Interrupt-
Driven I/O, dan Direct Memory Acces.
Programmed I/O
Ketika prosesor mengeksekusi suatu program dan menemukan suatu intruksi yang
berhubungan dengan I/O, maka prosesor mengeksekusi intruksi tersebut dengan
memberikan perintah kepada modul I/O yang bersangkutan. Dengan Programmed I/O,
modul I/O melakukan tindakan yang diminta dan kemudian mengeset bit-bit yang
bersangkutan di dalam status register I/O. modul I/O tersebut tidak meng-interrupt
prosessor dan menjadi tanggung jawab prosesor untuk memeriksa status I/O tersebut
secara periodik sampai eksekusi selesai.
Dengan teknik ini prosesor bertanggung jawab untuk mengekstrak data dari memori
utama yang digunakan sebagai output danmenyimpan data di memori utama yang
digunakan sebagai input. Software I/O ditulis supaya prossesor dapat mengeksekusi
intruksi-intruksi secara langsung pada operasi I/O, termasuk mengenali status
perangkat(device), mengirimkan perintah menulis atau membaca, dan mentransfer data.
Oleh karena itu intruksi- intruksi I/O harus memenuhi kategori berikut:
a. Control
Digunakan untuk mengaktifkan perangkat eksternal dan memerintahkan untuk
melakukan suatu pekerjaan. Contohnya, magnetic tape dapat diinstruksikan
untuk berputar maju atau mundur satu record.
b. Status
Digunakan untuk menguji status-status kondisi yang beaneka macam yang
berhubungan dengan modul I/O dan perangkat-perangkatnya.
c. Transfer
Lisensi Dokumen: Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Digunakan untuk membaca atau menulis data antara register prosesor dan
perangkat eksternal.
Gambar dibawah ini merupakan contoh penggunaan programmed I/O untuk
membaca blok data dari perangkat eksternal(misal sebuah record dari magnetic
tape) ke dalam memori. Data dibaca satu record dalam satu waktu . untuk setiap
record data yang dibaca, prosesor harus tetap dalam status checking cycle sampai
prosesor menentukan bahwa word tersedia di dalam register data modul I/O.
Interrupt-Driven I/O
Programmed I/O mempunyai masalah pada waktu tunggu prosesor yang lam pada
modul I/O untuk siap menerima atau memberikan lebih banyak data. Hal ini disebabkan
prosesor harus selalu mengulang bertanya tentang status modul I/O ketika sedang
menunggu. Oleh karena itu unjuk kerja sistem secara keseluruhan jadi mengalami
penurunan.
Lisensi Dokumen: Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Sebagai alternatif penyelesaian masalah di atas, ketika prosesor memberikan perintah ke
modul I/O, maka prosesor tidak perlu menunggu tetapi tetap bekerja dengan hal lain
yang lebih berguna. Modul I/O akan meng-interrupt prosesor untuk meminta layanan
ketika modul I/O sudah siap untuk proses pertukaran data dengan prosesor. Prosesor
kemudian mengerjakan transfer data seperti biasanya dan kembali pada pemerosesan
yang baru saja ditinggal.
Cara kerja Interrupt –Driven I/O adalah sebagai berikut:
Prosesor memberikan peintah READ dan menyimpan context (misal
progremcounter dan register prosesor) dari program tersebut untuk mengerjakan
hal lain (misal prosesor bekerja pada beberapa program yang berbeda pada saat
yang sama).
Pada akhir setiap intruksi prosesor memeriksa interrupt. Ketika interrupt dari
modul I/O muncul, maka prosesor menyimpan context dari program yang
sedang di eksekusi kemudian mulai mengeksekusi program interrupt handling
yang memproses interrupt tersebut. Dalam hal ini prosesor membaca word data
dari modul I/O dan menyimpannya di memori.
Prosesor kemudian memulihkan /mengembalikan context program yang diberi
printah I/O dan kembali melakukan eksekusi.
Gambar dibawah ini menggambarkan penggunaan interrupt-driven I/O untuk membaca
blok data.
Lisensi Dokumen: Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Direct Memory Acces
Interrupt-driven I/O lebih efisien dibandingkan Programmed I/O karena mengurangi
waktu tunggu yang tidak diinginkan. Tetapi interrupt-Driven I/O masih menggunakan
waktu prosesor yang besar, karena setiap word data yang mengalir dari memori ke
modul I/O atau dari modul I/O ke memori harus tetap melalui prosesor ,karena masih
membutuhkan kan campur tangan aktif dari prosesor untuk melakukan transfer data
antara memori dengan modul I/O. dapat diambil kesimpulan bahwa Programmed I/O
dan Interrupt-Driven I/O mempunyai dua kekurangan yang mengakibatkan prosesor
tidak dapat bekerja secara efisien.
a. Kecepatan transfer I/O terbatas, dibandingkan dengan kecepatan prosesor
memeriksa dan memberikan layanan perangakat(device).
b. Prosesor terikat di dalam menangani dan mengatur transfer I/O, karena
sejumlah intruksi harus dieksekusi untuk setiap proses transfer I/O.
Lisensi Dokumen: Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Teknik yang lebih efisien diperlukan ketika data yang berukuran sangat besar
dipindahkan. Teknik ini sudah ada dan disebut DMA(Direct Memory Access). DMA
dapat berada di modul terpisah di bus system atau dapat tergabung ke dalam modul I/O.
cara kerja DMA adalah sebagai berikut:
Ketika prosesor akan membaca atau menulis blok data, prosesor memberikan
perintah ke modul DMA dengan mengirimkan sejumlah informasi DMA, yang
meliputi:
Apakah READ atau WRITE yang diminta
Alamat perangkat I/O yang digunakan.
Lokasi awal memori untuk membaca dari atau menulis ke.
Jumlah word yang akan dibaca atau ditulis
Prosesor kemudian melanjutkan dengan pekerjaan lain. Prosesor
mendelegasikan operasi I/O tersebut ke modul DMA dan modul DMA ini yang
akan mengerjakannya. Modul DMA melakukan transfer keseluruhan blok data,
satu word dalam satu waktu, langsung ke atau dari memori tanpa prosesor
Ketika proses transfer selesai, modul DMA mengirimtanda Interrupt ke
prosesor. Jadi prosesor hanya terlibat di awal dan di akhir proses trasfer.
Hal ini dapat digambarkan sebagai berikut:
Penutup
Lisensi Dokumen: Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Demikianlah artikel sistem komputer dari saya, semoga bermanfaat bagi para pembaca
artikel ini. Lebih kurangnya penulis meminta maaf bila ada beberapa kesalahan dalam
penulisan, penulis ucapkan terima kasih
Referensi
Binanto, Iwan (2005). sistem operasi, Yogyakarta: penerbit ANDI
http://id.wikipedia.org/wiki/Sistem_operasi
http://en.wikipedia.org/wiki/Interrupt
http://iqbalparabi.com/sistem-dan-arsitektur-komputer/
Biografi
Sartim
Pria kelahiran 28 Desember 1989. Masih menggeluti dunia
pemrograman dari HTML5, CSS3,JavaScript/jQuery,dan PHP. Dan
sekarang penulis sedang fokus menggeluti bidang pemograman database
Mysql secara otodidak.
Teman-teman bisa menghubungi penulis di :
Email : [email protected] atau [email protected]
Sosial Media : Facebook | Twitter
BBM : 75D70BFC
HP/WhatsApp : 089694342829