Piranti Proses
Piranti proses adalah adalah alat dimana instruksi – instruksi program diproses untuk mengolah data yang sudah dimasukkan lewat Peranti masukan dan hasilnya akan ditampilkan di Peranti keluaran. Saat komputer berjalan, terdapat banyak proses yang berjalan secara bersamaan. Sebuah proses dibuat melalui system call create-process yang membentuk proses turunan ( child process) yang dilakukan oleh proses induk (parent process). Proses turunan tersebut juga mampu membuat. Ketika sebuah proses dibuat maka proses tersebut dapat memperoleh sumber-daya seperti waktu CPU, memori, berkas, atau perangkat I/O. Sumber daya ini dapat diperoleh langsung dari sistem operasi, dari proses induk yang membagi-bagikan sumber daya kepada setiap proses turunannnya, atau proses turunan dan proses induk berbagi sumber-daya yang diberikan sistem operasi. Pranti proses terdiri dari Central Processing Unit (CPU) dan Main Memory.
Pengelolaan Process
Proses perlu dikelola karena dalam sebuah proses membutuhkan beberapa sumber daya untuk menyelesaikan tugasnya. Sumber daya tersebut dapat berupa CPU time, memori, berkas-berkas, dan perangkat-perangkat I/O. Perkembangan sistem komputer mendatang adalah menuju ke sistem multi- processing, multiprogramming, terdistribusi dan paralel yang mengharuskan adanya proses-proses yang berjalan bersama dalam waktu yang bersamaan. Hal demikian merupakan masalah yang perlu perhatian dari perancang sistem operasi. Kondisi dimana pada saat yang bersamaan terdapat lebih dari satu proses disebut dengan kongkurensi (proses-proses yang kongkuren). Proses-proses yang mengalami kongkuren dapat berdiri sendiri (independen) atau dapat saling berinteraksi, sehingga membutuhkan sinkronisasi atau koordinasi proses yang baik. Proses tersebut tidak lepas dari peran prosesor sebagai pengendali dari berjalannya sebuah proses
Processor
Processor juga biasa disebut dengan Mikroprosesor adalah suatu komponen (biasanya wujud fisiknya berupa chip) yang terdapat dalam suatu sistem komputer yang berfungsi sebagai unit pusat pemroses atau pengolah data dan istruksi. Dalam bahasa kasar sering diistilahkan sebagai "otak" komputer. Mikroprosesor ini umumnya terpasang pada motherboard. Penulisan kata mikroprosesor sering disingkat µP atau uP. Istilah mikroprosesor juga disebut dengan nama prosesor atau CPU (central processing unit).Prosesor ini terbuat dari chip silikon yang di dalamnya mengandung jutaan transistor mini dan sirkuit lainnya di atas sirkuit terintegrasi semikonduktor. Selama ini, perkembangan mikroprosesor diketahui mengikuti hukum Moore. Hukum ini dilontarkan oleh Gordon Moore pada tahun 1965. Saat itu Moore memprediksi bahwa jumlah transistor yang ada pada IC (Integrated Circuit) akan berlipat ganda setiap tahunnya, dan merumuskan bahwa daya penghitungan akan berlipat ganda setiap 18 bulan. Pernyataan ini diperbaharui olehMoore pada tahun 1995, berdasar hasil penelitian bahwa kelipatan ganda jumlah transistor akan terjadi setiap dua tahun sekali. Hukum tersebut memang benar-benar terjadi dan terbukti sejak awal tahun 1970-an. Sehingga performa komputerpun terus meningkat dari tahun ke tahun. Hukum Moore tersebut mungkin tidak akan berlaku seterusnya, kalau mengamati perkembangan prosesor saat ini tampaknya hukum tersebut hanya berlaku untuk waktu yang terbatas.
Cara Kerja Processor
Prosesor berfungsi seperti kalkulator, hanya saja dengan kemampuan pemrosesan data yang jauh lebih besar. Fungsi utamanya adalah melakukan operasi aritmatika dan logika terhadap data. Data tersebut diambil dari memori atau diperoleh dari alat input yang dioperasikan oleh operator seperti papan ketik (keyboard), mouse dan lainnya. Kerja prosesor ini dikontrol oleh sekumpulan instruksi software. Software tersebut diperoleh atau dibaca dar i media penyimpan seperti harddisk, disket, CD, dan lainnya. Kemudian instruksi-instruksi tadi disimpan dalam RAM. Setiap instruksi diberi alamat unik yang disebut alamat memori. Untuk selanjutnya, prosesor akan mengakses data-data yang ada pada RAM, dengan cara menentukan alamat data yang dikehendaki.
Prosesor dan RAM dihubungkan oleh unit yang disebut bus. Saat sebuah program dijalankan, data akan mengalir dari RAM melalui bus, menuju ke prosesor. Di dalam prosesor, data ini di-dekode, kemudian berjalan ke ALU yang bertugas melakukan kalkulasi dan perbandingan. Kadang-kadang data disimpan sementara di register agar dapat diambil kembali dengan cepat untuk diolah. Setelah selesai, hasil pemrosesannya mengalir kembali ke RAM atau ke media penyimpan. Apabila data hasil perosesan tadi akan diolah lagi, maka data tersebut akan disimpan dalam register. Demikian seterusnya. Bilangan yang ditangani oleh prosesorTerdapat dua macam bilangan yang ditangani oleh prosesor, yaitu bilangan fixed pointdan bilangan floating point.Bilangan fixed point adalah bilang yang memiliki nilai digit spesifik pada salah satu titik desimalnya, Hal ini akan membatasi jangkauan nilai yang mungkin untuk angka -angka tersebut, namun, hal ini justru dapat dihitung oleh prosesor.Sedangkan bilangan floating point, adalah bilangan yang diwujudkan dalam notasi ilmiah, yaitu berupa angka pecahan desimal dikalikan dengan angka 10 pangkat bilangan tertentu. Misalnya: 705,2944 x 109, atau 4,3 x 10-7. Cara penulisan angka seperti ini merupakan cara singkat untuk menuliskan angka yang nilainya sangat besar maupun sangat kecil. Bilangan seperti ini banyak digunakan dalam pemrosesan grafik dan kerja ilmiah. Proses aritmatika bilangan floating point memang lebih rumit dan prosesor membutuhkan waktu yang lebih lama untuk mengerjakannya, karena mungkin akan menggunakan beberapa siklus detak (clock cycle) prosesor.Oleh karena itu, beberapa jenis komputer menggunakan prosesor sendiri untuk menangani bilangan floating point. Prosesor yang khusus menangani bilangan floating point disebut Floating Point Unit (FPU) atau disebut juga dengan nama math co-processor. FPU dapat bekerja secara paralel dengan prosesor. Dengan demikian proses penghitungan bilangan floating point dapat berjalan lebih cepat. Keberadaan FPU integrated (bersatu dengan prosesor) sudah menjadi kebutuhan standart komputer masa kini, karena banyak sekali aplikasi-aplikasi yang beroperasi menggunakan bilangan floating point.
Komponen Processor
Prosesor biasanya terdiri dari beberapa komponen penting, antara lain:
Unit Aritmatika Dan Logika
Register
Cache memory
Unit kontrol
a. ALU (Arithmetic Logical Unit
ALU (Arithmetic Logical Unit = Unit Logika dan Aritmatika). Komponen ini berfungsi sebagai tempat memproses data dengan cara memanipulasi informasi dan mengevaluasi hasilnya. ALU dapat melakukan operasi-operasi tertentu, misalnya penjumlahan, perkalian, pengurangan, dan lainnya. ALU sendiri terdiri dari device-device memori kecil yang dikenal dengan nama register. Pada register inilah informasi-informasi disimpan selama pemrosesan data sedang berlangsung. ALU juga terdiri dari sirkuit-sirkuit untuk mengevaluasi informasi. Misalnya adder dan comparator, yang memanipulasi data sesuai instruksi yang terprogram. FPU (Floating Point Unit). Komponen ini berfungsi untuk memproses data berupa bilangan floating point.Kebanyakan operasi komputer dieksekusi dalam unit aritmatika dan logika (arithmelogic unit) pada pro sesor. Perhatikanlah suatu contoh umum. Misalkan dua bilangan yang berada dalam memori ditambahkan. Bilangan tersebut di bawa ke prosesor, dan penambahan yang sesungguhnya dilakukan oleh ALU. Jumlah tersebut kemudian disimpan dalam memori atau tetap dalam prosesor untuk segera digunakan. Operasi aritmatika atau logika yang lain, misalnya, perkalian, pembagian, perbandingan bilangan, diawali dengan membawa operand yang diperlukan ke prosesor, di mana operasi tersebut dilakukan oleh ALU. Pada saat operand dibawa ke prosesor, operand tersebut disimpan dalam elemen penyimpanan kecepatan tinggi yang disebut register. Tiap register dapat menyimpan satu word data. Waktu akses ke register lebih cepat daripada waktu akses ke unit cache tercepat dalam hierarki memori. Unit kontrol dan unit aritmatika dan logika jauh lebih cepat daripada peralatan lain yang terhubung ke sistem komputer. Jadi memungkinkan satu prosesor tunggal mengendalikan sejumlah peralatan eksternal seperti keyboard, display, disk magnetik dan optikal, sensor, dan kontroler mekanik. Sekumpulan daftar yang dapat digunakan untuk menampung data maupun hasil perhitungan yang belum selesai dengan sempurna. Komponen ini terkadang terdapat dalam CPU, tetapi tidak semuanya.
b.Register Processor
Register prosesor, dalam arsitektur komputer, adalah sejumlah kecil memori komputer yang bekerja dengan kecepatan sangat tinggi yang digunakan untuk melakukan eksekusi terhadap program-program komputer dengan menyediakan akses yang cepat terhadap nilai-nilai yang umum digunakan. Umumnya nilai-nilai yang umum digunakan adalah nilai yang sedang dieksekusi dalam waktu tertentu. Register prosesor berdiri pada tingkat tertinggi dalam hierarki memori: ini berarti bahwa kecepatannya adalah yang paling cepat; kapasitasnya adalah paling kecil; dan harga tiap bitnya adalah paling tinggi. Register juga digunakan sebagai cara ya ng paling cepat dalam sistem komputer untuk melakukan manipulasi data. Register umumnya diukur dengan satuan bit yang dapat ditampung olehnya, seperti "register 8-bit", "register 16-bit", "register 32-bit", atau "register 64-bit" dan lain-lain. Istilah register saat ini dapat merujuk kepada kumpulan register yang dapat diindeks secara langsung untuk melakukan input/output terhadap sebuah instruksi yang didefinisikan oleh set instruksi. untuk istilah ini, digunakanlah kata "Register Arsitektur". Sebagai contoh set instruksi Intel x86 mendefinisikan sekumpulan delapan buah register dengan ukuran 32-bit, tapi CPU yang mengimplementasikan set instruksi x86 dapat mengandung lebih dari delapan register 32-bit. Register terbagi menjadi beberapa kelas:
Register data, yang digunakan untuk menyimpan angka-angka dalam bilangan bulat (integer).
Register alamat, yang digunakan untuk menyimpan alamat-alamat memori dan juga untuk mengakses memori.
Register general purpose, yang dapat digunakan untuk menyimpan angka dan alamat secara sekaligus.
Register floating-point, yang digunakan untuk menyimpan angka-angka bilangan titik mengambang (floating-point).
Register konstanta (constant register), yang digunakan untuk menyimpan angka-angka tetap yang hanya dapat dibaca (bersifat read-only), semacam phi, null, true, false dan lainnya.
Register vektor, yang digunakan untuk menyimpan hasil pemrosesan vektor yang dilakukan oleh prosesor SIMD.
Register special purpose yang dapat digunakan untuk menyimpan data internalprosesor, seperti halnya instruction pointer, stack pointer, dan status register.
Register yang spesifik terhadap model mesin (machine-specific register), dalam beberapa arsitektur tertentu, digunakan untuk menyimpan data atau pengaturan yang berkaitan dengan prosesor itu sendiri. Karena arti dari setiap register langsung dimasukkan ke dalam desain prosesor tertentu saja, mungkin register jenis ini tidak menjadi standar antara generasi prosesor.
Berikut ini adalah ukuran register dan padanan prosesornya
4-bit Intel 4004
8-bit Intel 8080
16-bit Intel 8086, Intel 8088, Intel 80286
32-bit Intel 80386, Intel 80486, Intel Pentium Pro, Intel Pentium, Intel Pentium 2, Intel Pentium 3, Intel Pentium 4, Intel Celeron, Intel Xeon, AMD K5, AMD K6, AMD Athlon, AMD Athlon MP, AMD Athlon XP, AMD Athlon 4, AMD Duron, AMD Sempron
64-bit Intel Itanium, Intel Itanium 2, Intel Xeon, Intel Core, Intel Core 2, AMD Athlon 64, AMD Athlon X2, AMD Athlon FX, AMD Turion 64, AMD Turion X2, AMD Sempron
c. Cache Memory
Cache memory adalah memory berukuran kecil berkecepatan tinggi yang berfungsi untuk menyimpan sementara instruksi dan/atau data (informasi) yang diperlukan oleh prosesor. Boleh dikatakan bahwa cache memory ini adalah memory internal prosesor. Cache memory ini berbasis SRAM yang secara fisik berukuran kecil dan kapasitas tampung datanya juga kecil atau sedikit. Pada saat ini, cache memory ada 3 jenis, yaitu L1 cache, L2 cache, dan L3 cache. Letak cache memory L1 cache terintegrasi dengan chip prosesor, artinya letak L1 cache sudah menyatu dengan chip prosesor (berada di dalam keping prosesor). Sedangkan letak L2 cache, ada yang menyatu dengan chip prosesor, ada pula yang terletak di luar chip prosesor, yaitu di motherboard dekat dengan posisi dudukan prosesor. Pada era prosesor intel 80486 atau sebelumnya, letak L2 cache kebanyakan berada di luar chip prosesor. Chip cache terpisah dari prosesor, berdiri mandiri dekat chip prosesor. Sejak era prosesor Intel Pentium, letak L2 cache ini sudah terintegrasi dengan chip prosesor (menyatu dengan keping prosesor). Posisi L2 cache selalu terletak antara L1 cache dengan memori utama (RAM). Sedangkan L3 cache belum diimplementasikan secara umum pada semua jenis prosesor. Hanya prosesor -prosesor tertentu yang memiliki L3 cache. Cache memory yang letaknya terpisah dengan prosesor disebut cache memor y non integrated atau diskrit (diskrit artinya putus atau terpisah). Cache memory yang letaknya menyatu dengan prosesor disebut cache memory integrated, on-chip, atau on-die (integrated artinya bersatu/menyatu/ tergabung, on-chip artinya ada pada chip). L1 cache (Level 1 cache) disebut pula dengan istilah primary cache, first cache, atau level one cache. L2 cache disebut dengan istilah secondary cache, second level cache, atau level two cache.
Kecepatan Cache Memory
Transfer data dari L1 cache ke prosesor terjadi paling cepat dibandingkan L2 cache maupun L3 cache (bila ada). Kecepatannya mendekati kecepatan register. L1 cache ini dikunci pada kecepatan yang sama pada prosesor. Secara fisik L1 cache tidak bisa dilihat dengan mata telanjang. L1 cache adalah lokasi pertama yang diakses oleh prosesor ketika mencari pasokan data. Kapasitas simpan datanya paling kecil, antara puluhan hingga ribuan byte tergantung jenis prosesor. Pada beberapa jenis prosesor pentium kapasitasnya 16 KB yang terbagi menjadi dua bagian, yaitu 8 KB untuk menyimpan instruksi, dan 8 KB untuk menyimpan data. Transfer data tercepat kedua setelah L1 cache adalah L2 cache. Prosesor dapat mengambil data dari cache L2 yang terintegrasi (on-chip) lebih cepat dari pada cache L2 yang tidak terintegrasi. Kapasitas simpan datanya lebih besar dibandingkan L1 cache, antara ratusan ribu byte hingga jutaan byte, ada yang 128 KB, 256 KB, 512 KB, 1 MB, 2 MB, 8 bahkan 8 MB, tergantung jenis prosesornya. Kapasitas simpan data untuk L3 cache lebih besar lagi, bisa ratusan juta byte (ratusan mega byte). Prioritas penyimpanan dan pengambilan data Dalam mekanisme kerjanya, data yang akan diproses oleh prosesor, pertama kali dicari di L1 cache, bila tidak ada maka akan diambil dari L2 cache, kemudia n dicari di L3 cache (bila ada). Jika tetap tidak ada, maka akan dicari di memori utama. Pengambilan data di L2 cache hanya dilakukan bila di L1 cahe tidak ada. Lebih jelasnya proses baca tulis data yang dilakukan oleh prosesor ke memori utama dapat dijelaskan sebagai berikut: Ketika data dibaca/ditulis di memori utama (RAM) oleh prosesor, salinan data beserta address-nya (yang diambil/ditulis di memori utama) disimpan juga di cache. Sewaktu prosesor memerlukan kembali data tersebut, prosesor akan mencari ke cache, tidak perlu lagi mencari di memori utama. Jika isi cache penuh, data yang paling lama akan dibuang dan digantikan oleh data yang baru diproses oleh prosesor. Proses ini dapat menghemat waktu dalam proses mengakses data yang sama, dibandingkan jika prosesor berulang-ulang harus mencari data ke memori utama. Secara logika, kapasitas cache memory yang lebih besar dapat membantu memperbaiki kinerja prosesor, setidak-tidaknya mempersingkat waktu yang diperlukan dalam proses mengakses data.
d. Unit Control
Unit kendali (bahasa Inggris: Control Unit - CU) adalah salah satu bagian dari CPU yang bertugas untuk memberikan arahan/kendali/ kontrol terhadap operasi yang dilakukan di bagian ALU (Arithmetic Logical Unit) di dalam CPU tersebut. Output dari CU ini akan mengatur aktivitas dari bagian lainnya dari perangkat CPU tersebut. Pada awal-awal desain komputer, CU diimplementasikan sebagai ad-hoc logic yang susah untuk didesain. Sekarang, CU diimplementasikan sebagai sebuah microprogram yang disimpan di dalam tempat penyimpanan kontrol (control store). Beberapa word dari microprogram dipilih oleh microsequencer dan bit yang datang dari word-word tersebut akan secara langsung mengontrol bagian-bagian berbeda dari perangkat tersebut, termasuk di antaranya adalah register, ALU, register instruksi, bus dan peralatan input/output di luar chip. Pada komputer modern, setiap subsistem ini telah memiliki kontrolernya masing-masing, dengan CUTugas CU Tugas dari CU adalah sebagai berikut:
Mengatur dan mengendalikan alat-alat input dan output.
Mengambil instruksi-instruksi dari memori utama.
Mengambil data dari memori utama kalau diperlukan oleh proses.
Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika serta mengawasi kerja.
Menyimpan hasil proses ke memori utama.
Masukan- masukan unit control:
Clock / pewaktu pewaktu adalah cara unit control dalam menjaga waktunya. Unit control menyebabkan sebuah operasi mikro (atau sejumlah operasi mikro yang bersamaan) dibentuk bagi setiap pulsa waktu. Pulsa ini dikenal sebagai waktu siklus prosesor.
Register instruksi opcode instruksi saat itu digunakan untuk menentukan operasi mikro mana yang akan dilakukan selama siklus eksekusi.
Flag flag ini diperlukan oleh unit control untuk menentukan status prosesor dan hasil operasi ALU sebelumnya.
Sinyal control untuk mengontrol bus
Bagian bus control bus system memberikan sinyal - sinyal ke unit control, seperti sinyal- sinyal interupsi dan acknowledgement.
Macam-macam CU
Single-Cycle CU
Proses di CUl ini hanya terjadi dalam satu clock cycle, artinya setiap instruksi ada pada satu cycle, maka dari itu tidak memerlukan state. Dengan demikian fungsi boolean masing-masing control line hanya merupakan fungsi dari opcode saja. Clock cycle harus mempunyai panjang yang sama untuk setiap jenis instruksi. Ada dua bagian pada unit kontrol ini, yaitu proses men-decode opcode untuk mengelompokkannya menjadi 4 macam instruksi (yaitu di gerbang AND), dan pemberian sinyal kontrol berdasarkan jenis instruksinya (yaitu gerbang OR). Keempat jenis instruksi adalah “R-format” (berhubungan dengan register), “lw” (membaca memori), “sw” (menulis ke memori), dan “beq” ( branching). Sinyal kontrol yang dihasilkan bergantung pada jenis instruksinya. Misalnya jika melibatkan memori ”R-format” atau ”lw” maka akan sinyal ”Regwrite” akan aktif. Hal lain jika melibatkan memori “lw” atau “sw” maka akan diberi sinyal kontrol ke ALU, yaitu “ALUSrc”. Desain single-cycle ini lebih dapat bekerja dengan baik dan benar tetapi cycle ini tidak efisien.
Multi-Cycle CU
Berbeda dengan unit kontrol yang single-cycle, unit kontrol yang multi-cycle lebih memiliki banyak fungsi. Dengan memperhatikan state dan opcode, fungsi boolean dari masing-masing output control line dapat ditentukan. Masing-masingnya akan menjadi fungsi dari 10 buah input logic. Jadi akan terdapat banyak fungsi boolean, dan masing-masingnya tidak sederhana. Pada cycle ini, sinyal kontrol tidak lagi ditentukan dengan melihat pada bit -11 bit instruksinya. Bit-bit opcode memberitahukan operasi apa yang selanjutnya akan dijalankan CPU; bukan instruksi cycle selanjutnya.
Memori Utama
Memori utama merupakan media penyimpanan dalam bentuk array yang disusun word atau byte, kapasitas daya simpannya bisa jutaan susunan. Setiap word atau byte mempunyai alamat tersendiri. Data yang disimpan pada memori utama ini bersifat volatile, artinya data yang disimpan bersifat sementara dan dipertahankan oleh sumber-sumber listrik, apabila sumber listrik dimatikan maka datanya akan hilang. Memori utama digunakan sebagai media penyimpanan data yang berkaitan dengan CPU atau perangkat I/O.
Peranan dari Memori Utama
Address bus pertama kali mengontak computer yang disebut memori. Yang dimaksud dengan memori disini adalah suatu kelompok chip yang mampu untuk menyimpan instruksi atau data. CPU sendiri dapat melakukan salah satu dari proses berikut terhadap memori tersebut, yaitu membacanya (read) atau menuliskan/menyimpannya (write) ke memori tersebut. Memori ini diistilahkan juga sebagai Memori Utama. Tipe chip yang cukup banyak dikenal pada memori utama ini DRAM ( Dinamic Random Access Memory ). Kapasitas atau daya tampung dari satu chip ini bermacam-macam, tergantung kapan dan pada computer apa DRAM tersebut digunakan. Memori dapat dibayangkan sebagai suatu ruang kerja bagi komputer dan memori juga menentukan terhadap ukuran dan jumlah program yang bias juga jumlah data yang bias diproses. Memori terkadang disebut sebagai primary storage, primary memory, main storage, main memory, internal memory.
Fungsi Memori Utama
Memori berfungsi menyimpan sistim aplikasi, sistem pengendalian, dan data yang sedang beroperasi atau diolah. Semakin besar kapasitas memori akan meningkatkan kemapuan komputer tersebut. Memori diukur dengan KB atau MB. Random Access Memory (RAM), merupakan bagian memory yang biasa digunakan oleh para pemakai untuk menyimpan program dan data. Kebanyakan dari RAM disebut sebagai barang yang volatile. Artinya adalah jika daya listrik dicabut dari komputer dan komputer tersebut mati, maka semua konten yang ada di dalam RAM akan segera hilang secara permanen. Karena RAM bersifat temporer dan volatile, maka orang menciptakan suatu media penyimpanan lain yang sifatnya permanen. Ini biasanya disebut sebagai secondary storage. Secondary storage bersifat tahan lama dan juga tidak volatile, ini berarti semua data atau program yang tersimpan di dalamnya bias tetap ada walaupun daya atau listrik dimatikan. Beberapa contoh dari secondary storage ini misalnya adalah magnetic tape, hardisk, magnetic disk dan juga optical disk. Memori internal CPU, biasanya berupa cache, seringkali disebut dengan istilah cache memori. Sekarang ini, prosesor-prosesor modern sudah dilengkapi komponen ini. Sedangkan prosesor-prosesor lama, banyak yang tidak memilikinya.
Cara piranti-piranti I/O mentransfer informasi ke dalam dan ke luar komputer
Komputer adalah perangkat elektronik yg dpt menerima masukan (input), dan selanjutnya melakukan pengolahan (process) untuk menghasilkan keluaran (output) berupa informasi. Pada dasarnya, tugas utama komputer adalah processing dan I/O (input dan output). Perangkat utama komputer meliputi perangkat input, proses, dan perangkat output ditambah penyimpanan data.
Kumpulan dari elemen-elemen komputer (hardware, software, brainware) yang saling berhubungan (terintegrasi) dan saling berinteraksi untuk melakukan pengolahan data dengan tujuan menghasilkan informasi sesuai dengan yang diharapkan. Cara-cara dari tiap komponen yang menyusun komputer saling berkaitan
Piranti masukan (input device)
Piranti Proses (process device)
Piranti keluaran (output device)
Input/Output (I/O) Port
CPU (Central Processing Unit)
Memory
Data Bus
Piranti masukan berfungsi sebagai media komputer untuk menerima masukan atau perintah dari luar . Contoh: Keyboard, mouse, touch screen, scanner, kamera, dll Piranti keluaran Berfungsi sebagai media komputer untuk memberikan atau menampilkan keluaran dari hasil pengolahan data. Contoh: monitor, speaker, printer, dan lain -lain. Input/output port Media penghubung (interface) untuk menerima dan mengirim data. Contoh: USB Port, Serial Port, dan lain-lain. I/O terdiri :
Piranti l/O (peripheral)
Pengendali I/O (device controller)
Perangkat lunak
Proses transfer informasi antara CPU dengan sebuah peripheral
Memilih I/O dan mengujinya.
Menginisialisasi transfer dan mengkoordinasikan pengaturan waktu operasi I/O.
Mentransfer informasi.
Menghentikan proses transfer.
Klasifikasi piranti I/O terdiri 3 kelompok:
Kelompok yang memasukkan informasi (input), contoh : keyboard, ADC, scanner
Kelompok yang rnenampilkan informasi (output), contoh : VDU (monitor), printer
Kelompok yang melayani input dan output, contoh : Floppy disk