This is default featured slide 1 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 2 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 3 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 4 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 5 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

Rabu, 20 Juli 2011

Manajemen Sistem Input/Output

Manajemen Sistem M/K ( I/O)
Pekerjaan utama yang paling sering dilakukan oleh sistem komputer selain melakukan komputasi adalah Masukan/Keluaran (M/K). Dalam kenyataannya, waktu yang digunakan untuk komputasi lebih sedikit dibandingkan waktu untuk M/K. Ditambah lagi dengan banyaknya variasi perangkat M/K sehingga membuat manajemen M/K menjadi komponen yang penting bagi sebuah sistem operasi. Sistem operasi juga sering disebut device manager, karena sistem operasi mengatur berbagai macam perangkat ( device).
Fungsi-fungsi sistem operasi untuk sistem M/K:
  • Penyanggaan ( buffering). Menampung data sementara dari/ke perangkat M/K
  • Penjadwalan ( scheduling). Melakukan penjadualan pemakaian M/K sistem supaya lebih efisien.
  • Spooling. Meletakkan suatu pekerjaan program pada penyangga, agar setiap perangkat dapat mengaksesnya saat perangkat tersebut siap.
  • Menyediakan driver perangkat yang umum. Driver digunakan agar sistem operasi dapat memberi perintah untuk melakukan operasi pada perangkat keras M/K yang umum, seperti optical drive, media penyimpanan sekunder, dan layar monitor.
  • Menyediakan driver perangkat yang khusus. Driver digunakan agar sistem operasi dapat memberi perintah untuk melakukan operasi pada perangkat keras M/K tertentu, seperti kartu suara, kartu grafis, dan motherboard

Manajemen Sistem I/O

Sering disebut device manager. Menyediakan device driveryang umum sehingga operasi I/O dapat seragam (membuka, membaca, menulis,menutup). Contoh: pengguna menggunakan operasi yang sama untuk membaca berkas pada perangkat keras, CD-ROM dan floppy disk .
Manajemen sistem I/O merupakan aspek perancangan sistem operasi yang terluas disebabkan sangat beragamnya perangkat dan begitu banyaknya aplikasi dari perangkat- perangkat itu.
Sistem operasi bertanggung jawab dalam aktivitas yang berhubungan dengan manajemen sistem/perangkatI/O:
  • Mengirim perintah ke perangkat I/O agar menyediakan layanan.
  • Menangani interupsi perangakat I/O .
  • Menangani kesalahan pada perangakat I/O.
  • Menyediakan antarmuka ke pengguna.
Ada juga beberapa perangkat keras yang terdapat pada I/O manajemen yaitu :
1.      Pooling
  • Busy-waiting/ polling adalah ketika host mengalami looping yaitu membaca status register secara terus-menerus sampai status busy di-clear.
  • Pada dasarnya polling dapat dikatakan efisien. Akan tetapi polling menjadi tidak efisien ketika setelah berulang-ulang melakukan looping, hanya menemukan sedikit device yang siap untuk men-service, karena CPU processing yang tersisa belum selesai.
2. Interupsi
Mekanisme Dasar Interupsi :
  • Ketika CPU mendeteksi bahwa sebuah controller telah mengirimkan sebuah sinyal ke interrupt request line (membangkitkan sebuah interupsi), CPU kemudian menjawab interupsi tersebut (juga disebut menangkap interupsi) dengan menyimpan beberapa informasi mengenai state terkini CPU–contohnya nilai instruksi pointer, dan memanggil interrupt handler agar handler tersebut dapat melayani controller atau alat yang mengirim interupsi tersebut.
  • Fitur Tambahan pada Komputer Modern :
  • Pada arsitektur komputer modern, tiga fitur disediakan oleh CPU dan interrupt controller (pada perangkat keras) untuk dapat menangani interrupsi dengan lebih bagus. Fitur-fitur ini antara lain adalah kemampuan menghambat sebuah proses interrupt handling selama prosesi berada dalam critical state, efisiensi penanganan interupsi sehingga tidak perlu dilakukan polling untuk mencari device yang mengirimkan interupsi, dan fitur yang ketiga adalah adanya sebuah konsep multilevel interupsi sedemikian rupa sehingga terdapat prioritas dalam penanganan interupsi (diimplementasikan dengan interrupt priority level system).

Penyebab Interupsi
  • Interupsi dapat disebabkan berbagai hal, antara lain exception, page fault, interupsi yang dikirimkan oleh device controllers, dan system call Exception adalah suatu kondisi dimana terjadi sesuatu/ dari sebuah operasi didapat hasil tertentu yang dianggap khusus sehingga harus mendapat perhatian lebih, contoh nya pembagian dengan 0 (nol), pengaksesan alamat memori yang restricted atau bahkan tidak valid, dan lain-lain.
  • System call adalah sebuah fungsi pada aplikasi (perangkat lunak) yang dapat mengeksekusikan instruksi khusus berupa software interrupt atau trap.
3. DMA
  • DMA adalah sebuah prosesor khusus (special purpose processor) yang berguna untuk menghindari pembebanan CPU utama oleh program I/O (PIO).
4. Handshaking
  • Proses handshaking antara DMA controller dan device controller dilakukan melalui sepasang kabel yang disebut DMA-request dan DMA-acknowledge. Device controller mengirimkan sinyal melalui DMA-request ketika akan mentransfer data sebanyak satu word. Hal ini kemudian akan mengakibatkan DMA controller memasukkan alamat-alamat yang dinginkan ke kabel alamat memori, dan mengirimkan sinyal melalui kabel DMA-acknowledge. Setelah sinyal melalui kabel DMA-acknowledge diterima, device controller mengirimkan data yang dimaksud dan mematikan sinyal pada DMA-request.
  • Hal ini berlangsung berulang-ulang sehingga disebut handshaking. Pada saat DMA controller mengambil alih memori, CPU sementara tidak dapat mengakses memori (dihalangi), walau pun masih dapat mengaksees data pada cache primer dan sekunder. Hal ini disebut cycle stealing, yang walau pun memperlambat komputasi CPU, tidak menurunkan kinerja karena memindahkan pekerjaan data transfer ke DMA controller meningkatkan performa sistem secara keseluruhan.

( sumber : Klik Disini )


 
 

Memori Internal

MEMORI INTERNAL
  
Karakteristik Sistem Memori (secara umum)

1.          Lokasi
® CPU
® Internal (main)
® External (secondary)
2.          Kapasitas
® Ukuran word
® Banyaknya word
3.          Satuan Transfer
® Word
® Block
4.          Metode Akses
® Sequential access
® Direct access
® Random access
® Associative access

5.          Kinerja
® Access time
® Cycle time
® Transfer rate
6.          Tipe Fisik
® Semikonduktor
® Permukaan magnetik
7.          Karakteristik Fisik
® Volatile/nonvolatile
® Erasable/nonerasable
8.          Organisasi

Catatan:
Bagi pengguna dua karakteristik penting memori adalah
Ø Kapasitas,
Ø Kinerja.

Penjelasan
1) Lokasi Memori

Ada tiga lokasi keberadaan memori di dalam sistem komputer, yaitu:

Ø Memori lokal
o   Memori ini built-in berada dalam CPU (mikroprosesor),
o   Memori ini diperlukan untuk semua kegiatan CPU,
o   Memori ini disebut register.
Ø Memori internal
o   Berada di luar CPU tetapi bersifat internal terhadap sistem komputer,
o   Diperlukan oleh CPU untuk proses eksekusi (operasi) program, sehingga dapat diakses secara langsung oleh prosesor (CPU) tanpa modul perantara,
o   Memori internal sering juga disebut sebagai memori primer atau memori utama.
o   Memori internal biasanya menggunakan media RAM

Ø Memori eksternal
o   Bersifat eksternal terhadap sistem komputer dan tentu saja berada di luar CPU,
o   Diperlukan untuk menyimpan data atau instruksi secara permanen.
o   Tidak diperlukan di dalam proses eksekusi sehingga tidak dapat diakses secara langsung oleh prosesor (CPU). Untuk akses memori eksternal ini oleh CPU harus melalui pengontrol/modul I/O.
o   Memori eksternal sering juga disebut sebagai memori sekunder.
o   Memori ini terdiri atas perangkat storage peripheral seperti : disk, pita magnetik, dll.

2) Kapasitas Memori

Ø Kapasitas register (memori lokal) dinyatakan dalam bit.
Ø Kapasitas memori internal biasanya dinyatakan dalam bentuk byte       (1 byte = 8 bit) atau word. Panjang word umum adalah 8, 16, dan 32 bit.
Ø Kapasitas memori eksternal biasanya dinyatakan dalam byte.

3) Satuan Transfer (Unit of Transfer)
Satuan transfer sama dengan jumlah saluran data yang masuk ke dan keluar dari modul memori.
Ø Bagi memori internal (memori utama), satuan transfer merupakan jumlah bit yang dibaca atau yang dituliskan ke dalam memori pada suatu saat.
Ø Bagi memori eksternal, data ditransfer dalam jumlah yang jauh lebih besar dari word, dalam hal ini dikenal sebagai block.

Word
Ukuran word biasanya sama dengan jumlah bit yang digunakan untuk representasi bilangan dan panjang instruksi, kecuali CRAY-1 dan VAX.
Ø CRAY-1 memiliki panjang word 64 bit, memakai representasi integer 24 bit.
Ø VAX memiliki panjang instruksi yang beragam, ukuran wordnya adalah 32 bit.
Addressable Units
Pada sejumlah sistem, addressable unit adalah word. Hubungan antara panjang suatu alamat (A) dengan jumlah addressable unit (N) adalah 2A = N


4) Metode Akses Memori
Terdapat empat jenis pengaksesan satuan data, sbb.:
Ø Sequential Access
Ø Direct Access
Ø Random Access
Ø Associative Access
Sequential Access
®   Memori diorganisasikan menjadi unit-unit data, yang disebut record.
®   Akses dibuat dalam bentuk urutan linier yang spesifik.
®        Informasi pengalamatan dipakai untuk memisahkan record-record dan untuk membantu proses pencarian.
®        Mekanisme baca/tulis digunakan secara bersama (shared read/write mechanism), dengan cara berjalan menuju lokasi yang diinginkan untuk mengeluarkan record.
®        Waktu access record sangat bervariasi.
®        Contoh sequential access adalah akses pada pita magnetik.

v Direct Access
®        Seperti sequential access, direct access juga menggunaka shared read/write mechanism, tetapi setiap blok dan record memiliki alamat yang unik berdasarkan lokasi fisik.
®        Akses dilakukan secara langsung terhadap kisaran umum (general vicinity) untuk mencapai lokasi akhir.
®        Waktu aksesnya bervariasi.
®        Contoh direct access adalah akses pada disk.

v Random Access
®        Setiap lokasi dapat dipilih secara random dan diakses serta dialamati secara langsung.
®        Waktu untuk mengakses lokasi tertentu tidak tergantung pada urutan akses sebelumnya dan bersifat konstan.
®        Contoh random access adalah sistem memori utama.

v Associative Access
®        Setiap word dapat dicari berdasarkan pada isinya dan bukan berdasarkan alamatnya.
®        Seperti pada RAM, setiap lokasi memiliki mekanisme pengalamatannya sendiri.
®        Waktu pencariannya tidak bergantung secara konstan terhadap lokasi atau pola access sebelumnya.
®        Contoh associative access adalah memori cache.

5) Kinerja Memori
Ada tiga buah parameter untuk kinerja sistem memori, yaitu :
Ø Waktu Akses (Access Time)
®        Bagi RAM, waktu akses adalah waktu yang dibutuhkan untuk melakukan operasi baca atau tulis.
®        Bagi non RAM, waktu akses adalah waktu yang dibutuhkan untuk melakukan mekanisme baca tulis pada lokasi tertentu.
Ø Waktu Siklus (Cycle Time)
®        Waktu siklus adalah waktu akses ditambah dengan waktu transien hingga sinyal hilang dari saluran sinyal atau untuk menghasilkan kembali data bila data ini dibaca secara destruktif.
Ø Laju Pemindahan (Transfer Rate)
®        Transfer rate adalah kecepatan pemindahan data ke unit memori atau ditransfer dari unit memori.
®        Bagi RAM, transfer rate sama dengan 1/(waktu siklus).
 
6) Tipe Fisik Memori
Ada dua tipe fisik memori, yaitu :
Ø Memori semikonduktor, memori ini memakai teknologi LSI atau VLSI (very large scale integration).
Memori ini banyak digunakan untuk memori internal misalnya RAM.
Ø Memori permukaan magnetik, memori ini banyak digunakan untuk memori eksternal yaitu untuk disk atau pita magnetik.

7) Karakteristik Fisik
Ada dua kriteria yang mencerminkan karakteristik fisik memori, yaitu:
Ø Volatile dan Non-volatile
o   Pada memori volatile, informasi akan rusak secara alami atau hilang bila daya listriknya dimatikan.
o   Pada memori non-volatile, sekali informasi direkam akan tetap berada di sana tanpa mengalami kerusakan sebelum dilakukan perubahan. Pada memori ini daya listrik tidak diperlukan untuk mempertahankan informasi tersebut.
Memori permukaan magnetik adalah non volatile.
Memori semikonduktor dapat berupa volatile atau non volatile.
Ø Erasable dan Non-erasable
o   Erasable artinya isi memori dapat dihapus dan diganti dengan informasi lain.
o   Memori semikonduktor yang tidak terhapuskan dan non volatile adalah ROM.

8) Organisasi
Yang dimaksud dengan organisasi adalah pengaturan bit dalam menyusun word secara fisik.

Hirarki Memori

Tiga pertanyaan dalam rancangan memori, yaitu :
Berapa banyak? Berapa cepat?     Berapa mahal?
Kapasitas.            Waktu access      Harga


Setiap spektrum teknologi mempunyai hubungan sbb.:
Ø Semakin kecil waktu access, semakin besar harga per bit.
Ø Semakin besar kapasitas, semakin kecil harga per bit.
Ø Semakin besar kapasitas, semakin besar waktu access.

Untuk mendapatkan kinerja terbaik, memori harus mampu mengikuti CPU. Artinya apabila CPU sedang mengeksekusi instruksi, kita tidak perlu menghentikan CPU untuk menunggu datangnya instruksi atau operand.
Untuk mendapatkan kinerja terbaik, memori menjadi mahal, berkasitas relatif rendah, dan waktu access yang cepat.

Untuk memperoleh kinerja yang optimal, perlu kombinasi teknologi komponen memori. Dari kombinasi ini dapat disusun hirarki memori sbb.:

 
Semakin menurun hirarki, maka hal-hal di bawah ini akan terjadi :
a)    Penurunan harga per bit
b)   Peningkatan kapasitas
c)    Peningkatan waktu akses
d)   Penurunan frekuensi akses memori oleh CPU.

Kunci keberhasilan organisasi adalah penurunan frekuensi akses memori oleh CPU.

Bila memori dapat diorganisasikan dengan penurunan harga per bit melalui peningkatan waktu akses, dan bila data dan instruksi dapat didistribusikan melalui memori ini dengan penurunan frekuensi akses memori oleh CPU, maka pola ini akan mengurangi biaya secar keseluruhan dengan tingkatan kinerja tertentu.

Register adalah jenis memori yang tercepat, terkecil, dan termahal yang merupakan memori internal bagi prosesor.
Memori utama merupakan sistem internal memory dari sebuah komputer. Setiap lokasi di dalam memori utama memiliki alamat yang unik.
Cache adalah perangkat untuk pergerakan data antara memori utama dan register prosesor untuk meningkatkan kinerja.
Ketiga bentuk meori di atas bersifat volatile dan memakai teknologi semikonduktor.

Magnetic disk dan Magnetic tape adalah external memory dan bersifat non-volatile.

Memori Semikonduktor
Ada beberapa memori semikonduktor, yaitu :
1.    RAM : RAM statik (SRAM) dan RAM dinamik (DRAM).
2.    ROM : ROM, Programmable ROM (PROM), Erasable PROM (EPROM), Electrically EPROM (EEPROM), Flash Memory.

Random Access Memory (RAM)
Ø Baca dan tulis data dari dan ke memori dapat dilakukan dengan mudah dan cepat.
Ø Bersifat volatile
Ø Perlu catu daya listrik.


RAM Dinamik (DRAM)
Disusun oleh sel-sel yang menyimpan data sebagai muatan listrik pada kapasitor.
Ada dan tidak ada muatan listrik pada kapasitor dinyatakan sebagai bilangan biner 1 dan 0.
Perlu pengisian muatan listrik secara periodik untuk memelihara penyimapanan data.

RAM Statik (SRAM)
Disusun oleh deretan flip-flop.

Baik SRAM maupun DRAM adalah volatile. Sel memori DRAM lebih sederhana dibanding SRAM, karena itu lebih kecil. DRAM lebih rapat (sel lebih kecil = lebih banyak sel per satuan luas) dan lebih murah. DRAM memrlukan rangkaian pengosong muatan. DRAM cenderung lebih baik bila digunakan untuk kebutuhan memori yang lebih besar. DRAM lebih lambat.

Read Only Memory (ROM)
Ø Menyimpan data secara permanen
Ø Hanya bisa dibaca

Dua masalah ROM
Ø Langkah penyisipan data memerlukan biaya tetap yang tinggi.
Ø Tidak boleh terjadi kesalahan (error).

Programmabel ROM (PROM)
Bersifat non volatile dan hanya bisa ditulisi sekali saja.
Proses penulisan dibentuk secara elektris.
Diperlukan peralatan khusus untuk proses penulisan atau “pemrograman”.

Erasable PROM (EPROM)
Dibaca secara optis dan ditulisi secara elektris.
Sebelum operasi write, seluruh sel penyimpanan harus dihapus menggunakan radiasi sinar ultra-violet terhadap keping paket.
Proses penghapusan dapat dilakukan secara berulang, setiap penghapusan memerlukan waktu 20 menit.
Untuk daya tampung data yang sama EPROM lebih mahal dari PROM.


Electrically EPROM (EEPROM)
Dapat ditulisi kapan saja tanpa menghapus isi sebelumnya.
Operasi write memerlukan watu lebih lama dibanding operasi read.
Gabungan sifat kelebihan non-volatilitas dan fleksibilitas untuk update dengan menggunakan bus control, alamat dan saluran data.
EEPROM lebih mahal dibanding EPROM.

Sel memori memiliki sifat tertentu sbb.:
Ø Memiliki dua keadaan stabil untuk representasi bilangan biner 1 atau 0.
Ø Memiliki kemampuan untuk ditulisi
Ø Memiliki kemampuan untuk dibaca.

Organisasi Logik Keping (Chip Logic) Memori


Organisasi DRAM 16 Mbit secara umum. Array memori diorganisasikan sebagai empat buah kuardrat 2048 terhadap 2048 elemen. Elemen-elemen aray dihubungkan dengan saluran horizontal (baris) dan vertikal (kolom). Setiap saluran horizontal terhubung ke terminal Data-in/Sense masing-masing sel pada kolomnya.

Central Processing Unit (CPU)

Unit Pemroses Sentral (UPS) (bahasa Inggris: CPU, singkatan dari Central Processing Unit), merujuk kepada perangkat keras komputer yang memahami dan melaksanakan perintah dan data dari perangkat lunak. Istilah lain, pemroses (processor), sering digunakan untuk menyebut UPS. Adapun mikroprosesor adalah UPS yang diproduksi dalam sirkuit terpadu, seringkali dalam sebuah paket sirkuit terpadu-tunggal. Sejak pertengahan tahun 1970-an, mikroprosesor sirkuit terpadu-tunggal ini telah umum digunakan dan menjadi aspek penting dalam penerapan UPS.


Komponen CPU

Komponen CPU terbagi menjadi beberapa macam, yaitu sebagai berikut.
  • Unit kontrol yang mampu mengatur jalannya program. Komponen ini sudah pasti terdapat dalam semua CPU.CPU bertugas mengontrol komputer sehingga terjadi sinkronisasi kerja antar komponen dalam menjalankan fungsi-fungsi operasinya. termasuk dalam tanggung jawab unit kontrol adalah mengambil intruksi-intruksi dari memori utama dan menentukan jenis instruksi tersebut. Bila ada instruksi untuk perhitungan aritmatika atau perbandingan logika, maka unit kendali akan mengirim instruksi tersebut ke ALU. Hasil dari pengolahan data dibawa oleh unit kendali ke memori utama lagi untuk disimpan, dan pada saatnya akan disajikan ke alat output. Dengan demikian tugas dari unit kendali ini adalah:
    • Mengatur dan mengendalikan alat-alat input dan output.
    • Mengambil instruksi-instruksi dari memori utama.
    • Mengambil data dari memori utama (jika diperlukan) untuk diproses.
    • Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika serta mengawasi kerja dari ALU.
    • Menyimpan hasil proses ke memori utama.
  • Register merupakan alat penyimpanan kecil yang mempunyai kecepatan akses cukup tinggi, yang digunakan untuk menyimpan data dan/atau instruksi yang sedang diproses. Memori ini bersifat sementara, biasanya di gunakan untuk menyimpan data saat di olah ataupun data untuk pengolahan selanjutnya. Secara analogi, register ini dapat diibaratkan sebagai ingatan di otak bila kita melakukan pengolahan data secara manual, sehingga otak dapat diibaratkan sebagai CPU, yang berisi ingatan-ingatan, satuan kendali yang mengatur seluruh kegiatan tubuh dan mempunyai tempat untuk melakukan perhitungan dan perbandingan logika.
  • ALU unit yang bertugas untuk melakukan operasi aritmetika dan operasi logika berdasar instruksi yang ditentukan. ALU sering di sebut mesin bahasa karena bagian ini ALU terdiri dari dua bagian, yaitu unit arithmetika dan unit logika boolean yang masing-masing memiliki spesifikasi tugas tersendiri. Tugas utama dari ALU adalah melakukan semua perhitungan aritmatika (matematika) yang terjadi sesuai dengan instruksi program. ALU melakukan semua operasi aritmatika dengan dasar penjumlahan sehingga sirkuit elektronik yang digunakan disebut adder.
        Tugas lain dari ALU adalah melakukan keputusan dari suatu operasi logika sesuai dengan instruksi program. Operasi logika meliputi perbandingan dua operand dengan menggunakan operator logika tertentu, yaitu sama dengan (=), tidak sama dengan (¹ ), kurang dari (<), kurang atau sama dengan (£ ), lebih besar dari (>), dan lebih besar atau sama dengan (³ ).
  • CPU Interconnections adalah sistem koneksi dan bus yang menghubungkan komponen internal CPU, yaitu ALU, unit kontrol dan register-register dan juga dengan bus-bus eksternal CPU yang menghubungkan dengan sistem lainnya, seperti memori utama, piranti masukan /keluaran.
 Diagram blok sederhana CPU

Cara Kerja CPU

Saat data dan/atau instruksi dimasukkan ke processing-devices, pertama sekali diletakkan di MAA (melalui Input-storage); apabila berbentuk instruksi ditampung oleh Control Unit di Program-storage, namun apabila berbentuk data ditampung di Working-storage). Jika register siap untuk menerima pengerjaan eksekusi, maka Control Unit akan mengambil instruksi dari Program-storage untuk ditampungkan ke Instruction Register, sedangkan alamat memori yang berisikan instruksi tersebut ditampung di Program Counter. Sedangkan data diambil oleh Control Unit dari Working-storage untuk ditampung di General-purpose register (dalam hal ini di Operand-register). Jika berdasar instruksi pengerjaan yang dilakukan adalah arithmatika dan logika, maka ALU akan mengambil alih operasi untuk mengerjakan berdasar instruksi yang ditetapkan. Hasilnya ditampung di Akumulator. Apabila hasil pengolahan telah selesai, maka Control Unit akan mengambil hasil pengolahan di Accumulator untuk ditampung kembali ke Working-storage. Jika pengerjaan keseluruhan telah selesai, maka Control Unit akan menjemput hasil pengolahan dari Working-storage untuk ditampung ke Output-storage. Lalu selanjutnya dari Output-storage, hasil pengolahan akan ditampilkan ke output-devices.

Fungsi UPS

CPU berfungsi seperti kalkulator, hanya saja CPU jauh lebih kuat daya pemrosesannya. Fungsi utama dari CPU adalah melakukan operasi aritmatika dan logika terhadap data yang diambil dari memori atau dari informasi yang dimasukkan melalui beberapa perangkat keras, seperti papan tombol, pemindai, tuas kontrol, maupun tetikus. CPU dikontrol menggunakan sekumpulan instruksi perangkat lunak komputer. Perangkat lunak tersebut dapat dijalankan oleh CPU dengan membacanya dari media penyimpan, seperti cakram keras, disket, cakram padat, maupun pita perekam. Instruksi-instruksi tersebut kemudian disimpan terlebih dahulu pada memori fisik (MAA), yang mana setiap instruksi akan diberi alamat unik yang disebut alamat memori. Selanjutnya, UPS dapat mengakses data-data pada MAA dengan menentukan alamat data yang dikehendaki.
Saat sebuah program dieksekusi, data mengalir dari RAM ke sebuah unit yang disebut dengan bus, yang menghubungkan antara UPS dengan MAA. Data kemudian didekode dengan menggunakan unit proses yang disebut sebagai pendekoder instruksi yang sanggup menerjemahkan instruksi. Data kemudian berjalan ke unit aritmatika dan logika (ALU) yang melakukan kalkulasi dan perbandingan. Data bisa jadi disimpan sementara oleh ALU dalam sebuah lokasi memori yang disebut dengan register supaya dapat diambil kembali dengan cepat untuk diolah. ALU dapat melakukan operasi-operasi tertentu, meliputi penjumlahan, perkalian, pengurangan, pengujian kondisi terhadap data dalam register, hingga mengirimkan hasil pemrosesannya kembali ke memori fisik, media penyimpan, atau register apabila akan mengolah hasil pemrosesan lagi. Selama proses ini terjadi, sebuah unit dalam CPU yang disebut dengan penghitung program akan memantau instruksi yang sukses dijalankan supaya instruksi tersebut dapat dieksekusi dengan urutan yang benar dan sesuai.

Percabangan instruksi

Pemrosesan instruksi dalam CPU dibagi atas dua tahap, Tahap-I disebut Instruction Fetch, sedangkan Tahap-II disebut Instruction Execute. Tahap-I berisikan pemrosesan UPS dimana Control Unit mengambil data dan/atau instruksi dari main-memory ke register, sedangkan Tahap-II berisikan pemrosesan CPU dimana Control Unit menghantarkan data dan/atau instruksi dari register ke main-memory untuk ditampung di MAA, setelah Instruction Fetch dilakukan. Waktu pada tahap-I ditambah dengan waktu pada tahap-II disebut waktu siklus mesin (machine cycles time).
Penghitung program dalam CPU umumnya bergerak secara berurutan. Walaupun demikian, beberapa instruksi dalam CPU, yang disebut dengan instruksi lompatan, mengizinkan CPU mengakses instruksi yang terletak bukan pada urutannya. Hal ini disebut juga percabangan instruksi (branching instruction). Cabang-cabang instruksi tersebut dapat berupa cabang yang bersifat kondisional (memiliki syarat tertentu) atau non-kondisional. Sebuah cabang yang bersifat non-kondisional selalu berpindah ke sebuah instruksi baru yang berada di luar aliran instruksi, sementara sebuah cabang yang bersifat kondisional akan menguji terlebih dahulu hasil dari operasi sebelumnya untuk melihat apakah cabang instruksi tersebut akan dieksekusi atau tidak. Data yang diuji untuk percabangan instruksi disimpan pada lokasi yang disebut dengan flag.