Anda di halaman 1dari 42

EL3010 Arsitektur Sistem Komputer

Bagian 1
Pengantar Sistem Komputer

Sekolah Teknik Elektro dan Informatika


Institut Teknologi Bandung
2009
1
Pembahasan

e ge t a ssistem
Pengertian ste komputer
o pute
Sistem kompilasi
Organisasi perangkat keras
 Bus, Devais I/O, Memori Utama, Prosesor
Memory
Sistem operasi
Arsitektur dan Organisasi Komputer

2
Definisi Komputer

Istilah komputer mempunyai arti yang luas dan


berbeda untuk orang yang berbeda.
Istilah komputer diambil dari bahasa Latin
Computare yang berarti menghitung (to compute).

Terdapat beberapa definisi, menurut beberapa


b k sebagai
buku b i berikut
b ik t :

3
Computer Annual
Robert H. Blissmer

o pute adalah
Komputer ada a suatu alat
a at elektronik
ee t o ya g
yang
mampu melakukan tugas-tugas :
 menerima input,
 mengolah input tadi sesuai dengan programnya,
 menyimpan perintah dan hasil pengolahan,
 menyediakan output dalam bentuk informasi.

4
Computer Today
Donald H. Sanders

o pute adalah
Komputer ada a sistem
s ste e e to
elektronik u tu :
untuk
 memanipulasi data yang cepat dan tepat,
 dirancang dan diorganisasikan supaya secara
otomatis menerima dan menyimpan data input,
 mengolah data tersebut untuk menghasilkan output,
 bekerja
b k j berdasarkan
b d k langkah-langkah
l k hl k h instruksi
i t k i
program yang tersimpan di memori (stored program).

5
Computer Organization
V.C. Hamacher, Z.G. Vranesic, S.G. Zaky

o pute adalah
Komputer ada a :
 mesin penghitung elektronik yang cepat dapat
menerima informasi input digital,
 mengolah sesuai dengan suatu program yang
tersimpan di memorinya (stored program),
 menghasilkan output informasi.
informasi

6
Introduction to The Computer
William M. Fuori

o pute adalah
Komputer ada a :
 suatu pengolah data (data processor) yang dapat
melakukan perhitungan yang besar dan cepat,
t
termasukk perhitungan
hit aritmatika
it tik yang bbesar atau
t
operasi logika, tanpa campur tangan manusia yang
melakukan operasi
p selama pengolahan.
p g

7
Introduction to Computer
Gordon B. Davis

o pute adalah
Komputer ada a :
 tipe khusus alat penghitung yang mempunyai sifat
tertentu yang pasti.

8
Definisi Komputer
Kesimpulan

Komputer
o pute ada
adalah
a :
 Alat elektronik
 Dapat menerima input data
 Dapat memberikan informasi
 Menggunakan suatu program yang tersimpan di
memorii komputer
k t (stored
( t d program))
 Dapat menyimpan program dan hasil pengolahan.
 Bekerja secara otomatis

9
Sistem Pengolahan Informasi

g
Pengolahan data (data p g) adalah manipulasi
processing p
data menjadi suatu bentuk yang lebih berguna dan
berarti, berupa suatu informasi.
Informasi (information) adalah hasil dari kegiatan
pengolahan data yang memberikan bentuk yang lebih
berarti dari suatu kejadian.
Sistem pengolahan informasi - SPI (information
processing system) adalah manipulasi data menjadi
suatu bentuk yang lebih berarti,
berarti berupa suatu informasi,
informasi
dengan menggunakan komputer.

10
Siklus Pengolahan Informasi

Storage

Data dan Informasi Program

Data
Informasi
Input Program Prosesor Output

11
Sistem Komputer

g komputer
Agar p p digunakan
dapat g g
untuk mengolah
informasi, harus berbentuk sistem komputer
(computer system).
Sistem komputer adalah kumpulan dari komponen-
komponen
komponen yang tersusun untuk melaksanakan suatu
tujuan tertentu.
Komponen tersebut adalah :
 hardware
 software
f
 firmware

12
Komponen Sistem Komputer

Hardware
Software
D t
Data
User
Prosedur
Komunikasi

13
Pentingnya Memahami Komputer

Menjadi pemrogram yang andal, dengan memahami


sistem komputer dan pengaruhnya pada program
aplikasi
Mempelajari keahlian praktis tentang bagaimana
menghindari error numerik yang terjadi akibat cara
komputer merepresentasikan bilangan
Belajar untuk mengoptimalkan kode C menggunakan
trik yang cerdas dengan mengeksploitasi prosesor dan
system
y memori modern
Belajar untuk mengerti apa yang terjadi dan
mengapa, ketika sistem komputer menjalankan suatu
program
14
Program hello

Program hello merupakan program klasik yang dibuat


ketika pemrogram pertama kali membuat kode
Program hello dimulai dari source program yang
dibuat menggunakan editor dan disimpan sebagai file
teks (umumnya diberi nama hello.c)
 Source program ini merupakan urutan bit, masing-masing
bernilai 0 dan 1, dikelompokkan dalam potongan 8-bit disebut
byte
 Setiap byte merepresentasikan karakter teks program
 Program hello.c disimpan dalam file sebagai urutan byte.

15
Program hello

Program hello dibuat menggunakan program C bahasa


tingkat tinggi agar dapat dibaca dan dimengerti oleh
manusia

Kode program :

1 #include <stdio.h>
2
3 int main()
4 {
5 printf(“hello, world\n”);
6 }

16
Program hello

Agar kode program hello.c dapat berjalan pada


sistem, setiap pernyataan C harus diterjemahkan
menjadi urutan instruksi bahasa mesin tingkat rendah
Instruksi tersebut kemudian dipaketkan menjadi suatu
bentuk disebut executable object program dan disimpan
sebagai file biner
Penerjemahan ini dilakukan dalam empat tahap secara
berurutan, yaitu preprocessor, compiler, assembler,
linker disebut sistem kompilasi
linker,

17
Sistem Kompilasi

Tahap preprocessing
 preprocessor (cpp) memodifikasi program C berdasarkan directive
yang diawali dengan karakter #
 mis.
i #include
#i <stdio.h>
i meminta
i t preprocessor untuk
t k membaca
b
isi file header stdio.h dan menyelipkannya secara langsung pada teks
program
T h
Tahap k
kompilasi
il i
 compiler (ccl) menerjemahkan file teks hello.i menjadi file teks
hello.s yang mengandung bahasa pemrograman assembly. Bahasa
assembly merupakan bahasa yang umum digunakan oleh berbagai
compiler bahasa tingkat tinggi
18
Sistem Kompilasi

Tahap assembly
 assembler (as) menerjemahkan hello.s menjadi instruksi bahasa
mesin. File hello.o merupakan file biner yang merupakan kode
bahasa mesin
Tahap linking
 linker (ld) menggabungkan program hello.o dengan fungsi
f printf
yang berada dalam standar C library. Hasilnya berupa file eksekusi
yang siap dimuat ke memori dan dieksekusi oleh sistem

19
Manfaat Sistem Kompilasi

Sistem kompilasi membantu pemrogram untuk menghasilkan kode


mesin
i yang baik
b ik dan
d efisien
fi i
Mengerti bagaimana sistem kompilasi bekerja dapat lebih
mengoptimalkan kinerja program
 Pemrogram harus
h mengerti dasar
d bahasa
b h assembly
bl dan
d bagaimana
b
compiler menerjemahkan kode-kode program bahasa C menjadi
bahasa assembly
Contoh :
 Apakah pernyataan switch selalu lebih efisien dari urutan if-then-
else ?
 Apakah
p loop
p while lebih efisien dari loopp do ?
 Apakah referensi pointer lebih efisien dari array berindeks
 Mengapa dua loop yang sama fungsinya memiliki waktu eksekusi
berbeda ?

20
Organisasi Perangkat Keras

Untuk mengerti apa yang terjadi pada program hello


ketika dijalankan, kita harus mengerti organisasi
perangkat keras sistem yang digunakan
Secara umum
umum, perangkat keras sistem komputer
tersusun dari :
 Bus
 Devais I/O
 Memory utama
 Prosesor

21
Organisasi Perangkat Keras

Personal Computer

Computer Keyboard,
Processor Memory Devices
Mouse
(active) (passive)
Input Disk
Control
(“brain”) (where (where
programs, programs,
d t
data d t
data
Datapath live when live when
(“brawn”) Output
running) not running)
Display,
Printer
Organisasi Perangkat Keras
register file CPU chip

ALU
system bus memory bus

I/O main
bus interface
bridge memory

I/O bus Expansion


p slots
untuk devais lain
USB graphics Hard disk seperti LAN, dll
controller adapter controller

mouse keyboard monitor


disk 23
Organisasi Perangkat Keras
Bus
 Kumpulan jalur yang membawa byte-byte data dan informasi
antar
t kkomponen
 Data dan informasi di-transfer dalam potongan byte berukuran
tetap yang disebut word (word size)
 Sistem Intel Pentium
Pentium, word size = 4 byte
 Sistem server Intel Itanium, word size = 8 byte
 Sistem embedded, word size = 1 atau 2 byte
Devais I/O
 Koneksi sistem dengan dunia luar
 Contoh devais I/O : keyboard dan mouse sebagai user input,
display sebagai user output
output, disk drive (disk) sebagai penyimpan
data dan program jangka panjang.
 Setiap devais I/O terhubung dengan bus I/O melalui controller
atau adapter
 Controller : chip set dalam devais tersebut atau pada motherboard
 Adapter : card yang dipasang pada slot motherboard
24
Organisasi Perangkat Keras
Memori utama
 Tempat penyimpanan sementara program dan data yang
sedang digunakan ketika prosesor mengeksekusi program tsb
 Secara fisik, memori utama terdiri dari kumpulan chip Dynamic
Random Access Memory (DRAM)
 Secara logika, memori disusun sebagai urutan byte, yang masing-
masing memiliki alamat unik

Prosesor (Central Processing Unit – CPU)


 Mesin yang menginterpretasikan (atau mengeksekusi) instruksi
yang tersimpan dalam memori
 Sejak komputer dinyalakan hingga dimatikan kembali, prosesor
selalu melakukan hal yang sama : membaca instruksi dari memori,
menginterpretasikan bit-bit instruksi, mengeksekusi operasi
sederhana yang direpresentasikan oleh instruksi, mengambil
instruksi berikutnya dari memori, dan seterusnya
25
Organisasi Perangkat Keras

Prosesor
 Operasi prosesor terjadi di antara memori utama, register dan
arithmetic/logic unit (ALU)
 Register
g : devais penyimpan
p y p berukuran kecil dalam chip
p CPU
 ALU : menghitung data dan alamat
 Operasi CPU sederhana :
 Load : menyalin byte atau word dari memori utama ke register
 Store : menyalin byte atau word dari register ke memori utama
 Update : menyalin word dari dua register ke ALU, menjumlahkan
kedua word tersebut dan menyimpan
y p hasilnya y ke register
g
 I/O Read : menyalin byte atau word dari devais I/O ke register
 I/O Write : Menyalin byte atau word dari register ke devais I/O

26
Menjalankan Program hello (1)
register file CPU chip Membaca perintah
y
hello dari keyboard
ALU
system bus memory bus

I/O main
bus interface memory “hello”
bridge

I/O bus Expansion


p slots
untuk devais lain
USB graphics Hard disk seperti LAN, dll
user controller adapter controller
mengetik
“hello” keyboard mouse monitor
disk 27
Menjalankan Program hello (2)
register file CPU chip Memindahkan file
eksekusi dari disk ke
ALU memori utama
system bus memory bus

I/O main “hello, world\n”


bus interface memory kode hello
bridge

I/O bus Expansion


p slots
untuk devais lain
USB graphics Hard disk seperti LAN, dll
controller adapter controller

keyboard mouse monitor File eksekusi hello


disk berada dalam disk 28
Menjalankan Program hello (3)
register file CPU chip Menulis string dari
memori ke display
ALU
system bus memory bus

I/O main “hello, world\n”


bus interface memory kode hello
bridge

I/O bus Expansion


p slots
untuk devais lain
USB graphics Hard disk seperti LAN, dll
controller adapter controller

keyboard mouse monitor


“hello, world”
disk 29
Hirarki Memori
Ukuran semakin kecil, L0:
kecepatan semakin tinggi, register Register pada CPU menyimpan word
harga per bit semakin mahal data yang diambil dari L1 cache
cache.
L1: on-chip L1
cache (SRAM) L1 cache menyimpan baris-baris
cache yang diambil dari L2 cache
memory.
L2: off-chip L2
cache (SRAM) L2 cache menyimpan baris-baris
cache yang diambil dari main
memory

L3: main memory


(DRAM)
Semakin besar, Main memory menyimpan
lambat dan blok-blok data yang
diambil dari hard disk
murah
L4: Penyimpan cadangan lokal
(h d disk)
(hard di k) Hard disk menyimpan
file yang diambil dari
server jaringan jarak
jauh
L5: Penyimpan cadangan jarak jauh
(distributed file systems, Web servers)

30
Cache Memory
Untuk mengatasi kesenjangan antara prosesor dan memori, pada
sistem komputer terdapat penyimpan kecil berkecepatan tinggi
disebut cache memory
 Tempat penyimpanan sementara informasi yang sering diperlukan oleh
prosesor
 L1 cache terdapat dalam chip prosesor, dapat menyimpan puluhan
hingga ribuan byte, kecepatan hampir mendekati kecepatan register
 L2 cache berkapasitas ratusan ribu hingga jutaan byte, terhubung ke
prosesor melalui bus khusus

CPU register file


L1
ALU
cache
cache bus system bus memory bus

I/O main
L2 cache bus interface
bridge memory

31
Virtual Memory

Cara pandang dimana


setiap proses k
kernel
l virtual
i t l memory
memoryy invisible to
menggunakan memori user code
utama secara eksklusif %esp stack

Setiap proses memiliki


cara memandang
memori yang sama, Memory mapped region
disebut ruang alamat forshared libraries
virtual
Ruang alamat
R l virtual
i l the “brk” ptr
tersusun dari : runtime heap (via malloc)

 Program dan data uninitialized data (.bss)


initialized data (.data)
 Heap
program text (.text) Ruang alamat
 Shared library
forbidden virtual proses
 Stack 0 Linux
 Kernel virtual
memo
memory

32
Arsitektur dan Organisasi
p
Komputer
Arsitektur dan Organisasi

a a menjelaskan
Dalam e je as a ssistem
ste komputer,
o pute , suatu
perbedaan seringkali dibuat antara Arsitektur
Komputer dan Organisasi Komputer
Arsitektur Komputer

p
Arsitektur adalah atribut-atribut komputer y g
yang
terlihat oleh pemrogram, atau
atribut-atribut yang memiliki pengaruh langsung
pada
d eksekusi
k k i logika
l ik suatut program.
Contoh atribut arsitektural :
 instruction set,
set
 jumlah bit yang digunakan untuk merepresentasikan
suatu jenis data (mis. bilangan atau karakter),
 mekanisme I/O, dan
 teknik pengalamatan memori.
Organisasi Komputer

Organisasi
O ganisasi komputer
komp te adalah unitnit operasional
ope asional dan
interkoneksinya yang merealisasikan spesifikasi
arsitektural atau
arsitektural,
bagaimana unit arsitektural ini diimplementasikan.
Atribut organisasi merupakan detail perangkat
keras yang tidak terlihat oleh pemrogram, mis :
 sinyal kontrol,
 interface antara komputer dan periferal,
 teknologi memori yang digunakan.
Arsitektur dan Organisasi

Contoh :
Sisi arsitektural :
 apakah
p ada instruksi untuk melakukan proses
p perkalian
p
Sisi organisasi :
 apakah terdapat perangkat keras khusus untuk melakukan
proses perkalian,
perkalian atau menggunakan instruksi penjumlahan
(add instruction) secara berulang.
 Perangkat keras khusus perlu dibuat dengan pertimbangan :
frekuensi penggunaan instruksi perkalian,
perkalian kecepatan masing-
masing
masing metoda perkalian, biaya dan ukuran fisik unit perkalian.
Arsitektur dan Organisasi

y manufaktur komputer
Banyak p menawarkan
berbagai model komputer, yang semuanya
memiliki arsitektur yang sama dengan
organisasi yang berbeda
 Seluruh keluarga Intel x86 memiliki arsitektur dasar
yang sama
 Keluarga IBM System/370 memiliki arsitektur dasar
yang sama
Hal ini memberikan adanya kompatibilitas
kode pada setiap model.
Abstraksi Komputer

Application (Netscape)
Operating
O i
Compiler System
EL3010
Software Assembler (Windows 98)
IInstruction
t ti Set
S t
Hardware Processor Memory I/O system Architecture

Datapath & Control


Digital Design
Circuit Design
transistors

Both Software and Hardware consist of hierarchical layers.


Each lower layer hides the complexity from the layer above
This abstraction principle is the way to cope with complexity
The Big
g Picture

Both hardware and software consist of hierarchical


layers, with each lower layer hiding details from the
level above. This principle of abstraction is the way
both hardware designers and software designers
cope with the complexity of computer systems. One
key interface between the levels of abstraction is the
instruction set architecture: the interface between
the hardware and low-level software. This abstract
interface enables many implementations of varying
cost and performance to run identical software.
software

John L. Hennessy
David A.
A Patterson

40
Materi Perkuliahan

1. Repersentai
p Data dalam Bit dan Byte
y
2. Representasi dan Operasi Integer
3. Representasi dan Operasi Floating Point
4. Pemrograman Bahasa Mesin, Kode Level Mesin
5. Condition Code, Aliran kontrol dan percabangan
6.
6 P
Prosedur,
d St kt Stack
Struktur St k FFrame
7. Struktur Data, Alokasi dan Pengaksesan Array
8
8. Penyimpanan Locality, Hirarki Memori
Teknologi Penyimpanan,
9. Memori Cache
10. Memori Virtual
Referensi

a da E. Bryant
Randal ya t and
a d David
a d O’Hallaron,
O a ao ,
Computer Systems; A Programmers Perspective,
Prentice Hall, 2003
John L. Hennessy and David A. Patterson,
Computer Organization and Design, Morgan
Kaufman
f
William Stalling, Computer Organization and
A hit t
Architecture, Prentice
P ti HallH ll

Anda mungkin juga menyukai