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.

Senin, 30 Januari 2012

ARSITEKTUR SISTEM MEMORI



I. TEKNOLOGI DAN BIAYA SISTEM MEMORI
Ada 2 teknologi yang mendominasi industri memori sentral dan memori utama, yaitu :

a.       Memori Magnetic Core (tahun 1960)
Sel penyimpanan yang ada dalam memori inti dibuat dari elemen besi yang berbentuk donat yang disebut magnetic core (inti magnetis) atau hanya disebut core saja.
Para pembuat(pabrikan) yang membuat core ini menyusun core plane bersama dengan sirkuit lain yang diperlukan, menjadi memori banks(bank memori).

b.      Memori Solid State
Komputer yang pertama diproduksi untuk tujuan komersil adaalah UNIVAC dimana :
·   CPU nya menggunakan teknologi vacuum tube (tabung hampa udara) dan menjalankan aritmatika decimal.
·   Memori utamanya 1000 word (setiap word besarnya 60 bit dan menyimpan 12 karakter 5 bit)

II. ORGANISASI MEMORI
  • Salah satunya adalah menggunakan Inteleaving dimana tujuannya adalah untuk meningkatkan kecepatan pengaksesan system penyimpanan yang besar.
  • Sistem penyimpanan yang besar terdiri atas beberapa bank memori independent yang diakses oleh CPU dan peralatan I/O melalui pengontrolan port memori
Contoh : Cross bar switch

Sistem penyimpanan menggunakan Interleave High Order
  • Setiap bank (penyimpanan) berisi blok alamat yang berurutan.
  • Setiap peralatan, termasuk CPU, menggunakan bank memori yang berbeda untuk program dan datanya, maka semua bank dapat mentransfer data secara serentak.

Sistem penyimpanan menggunakan Interleave Low Order
  • Alamat yang berurutan berada dalam bank yang terpisah, sehingga setiap peralatan perlu mengakses semua bank selagi menjalankan programnya atau mentransfer data.
Contohnya : suatu siklus memori lebih lama daripada waktu siklus CPU.
  • Apabila word yang berurutan berada dalam bank yang berbeda, maka system penyimpanan bila dilengkapi dengan putaran yang cocok dapat melengkapi akses memori yang berurutan, dengan kata lain setelah CPU meminta untuk mengakses word pertama yang disimpan dalam salah satu bank, maka ia dapat bergerak ke bank kedua dan mengawali akses word kedua sementara penyimpanan tetap mendapatkan kembali word pertama sementara penyimpanan tetap mendapatkan kembali word pertama.Pada CPU kembali ke bank pertama, system penyimpanan diharapkan telah menyelesaikan mengakses word pertama dan telah siap mengakses lagi.
  • Banyak komputer berkinerja tinggi menggunakan Inteleave Low Order
III. JENIS MEMORI
a. Memory Read Only (ROM)
  • Peralatan memori yang dapat dibaca namun tidak dapat ditulis oleh CPU
Contoh : Switch Mekanis (computer menggunakannya untuk menyimpan konstansta yang digunakan untuk menentukan konfigurasi system(jumlah memori utama).
  • PROM (Programming Read Only Memory) adalah ROM yang diprogram oleh pabrik pembuatnya dan kita tidak bisa mengubah isinya.
  • EPROM (Erasable PROM) adalah ROM yang dapat dihapus dengan menggunakan sinar ultraviolet dan kemudian deprogram kembali.
  • EAROM(Electrically Alterable ROM) ROM yang dapat deprogram oleh computer dengan menggunakan operasi arus tinggi (high current) khusus, digunakan untuk menyimpan informasi yang jarang sekali berubah, contohnya : informasi konfigurasi.

b.      Memory Read / Write
Memori Read/Write dapat diklasifikasikan menurut sifat pengoperasiannya adalah :

1.      Sifat Fisik

v  Statis lawan Dinamis

Static RAM (SRAM)
·   Untuk setiap word apabila telah ditulis tidak perlu lagi dialamatkan atau dimanipulasi untuk menyimpan nilainya.
·   Tidak perlu penyegaran
·   Dibentuk dari flip-flop yang nmeggunakan arus kecil untuk memelihara logikanya.
·   Digunakan untuk register CPU dan peralatan penyimpanan berkecepatan tinggi.
·   Merupakan sirkuit memori semikonduktor yang cepat dan mahal.

Dynamic RAM (DRAM)
·   Dibentuk dari kapasitor (peralatan yang digunakan untuk menyimpan muatan listrik) dan transistor
·   Menggunakan sirkuit pembangkit
·   Waktu siklusnya 2 kali access time (waktu access baca) yaitu waktu yang dibutuhkan untuk memanggil kembali data dari peralatan.
·   Perlu penyegaran


v  Volatil lawan Non-Volatil

Memori Volatile
Membutuhkan sumber daya yang terus menerus untuk menyimpan nilainya. Contoh : RAM Static dan Dynamic


Memori Non Volatile
Tidak membutuhkan sumber daya yang terus menerus untuk menyimpan nilainya.
Contoh : ROM


v  Read Destruktif lawan Read Non-Destruktif

Memori Read Destruktif
·   Apabila dalam proses membaca word memori tersebut juga menghancurkan nilainnya.
·   Mempunyai 2 fase operasi yaitu read cycle dan restore cycle
·   Selama akses baca system penyimpan pertama kali akan membaca word dan selama akses tulis system penyimpanan pertama kali akan membaca word, yang mengakibatkan waku akses baca akan lebih pendek daripada waktu tulis.
   Contoh : DRAM

Memori Read Non-Destruktif
·   Dalam proses membaca word, memori tersebut tidak dapat dihancurkan.
·   Contohnya : SRAM dan ROM

v  Removable lawan Permanen

Memori Removable
·   Memori yang elemen aktifnya dapat dikeluarkan dari hardware system.
·   Contoh : disket.

Memori Non Removable
·   Memori yang elemen aktifnya tidak dapat dikeluarkan dari hardware system.
·   Contoh : RAM dan hard disk

2.      Organisasi Logis
  • Teralamatkan (addressed)
Memori yang menggunakan alamat untuk menentukan sel yang dibaca dan ditulis.
  • Asosiatif
Memori yang menggunakan isi dari bagian word untuk menentukan sel yang dibaca atau ditulis
  • Akses Urut
Memori yang menggunakan piya magnetis untuk mengakses data secara urut.

3.      Memori Archival
  • Memori non volatile yang dapat menyimpan banyak data dengan biaya yang sangat sedikit dan dalam jangka waktu yang lama.Contoh : Tape(Pita), Disk dan Disk Optis
  • Disk Optis menyimpan data dengan mengubah secara internal sifat reflektif dari bidang kecil yang ada pada disk dan membaca data dengan cara mendeteksi secara visual yang telah diubah.
  • WORM Memori (Word Once Read Many Times) ideal untuk menyimpan archival, karena bila sekali telah ditulis ia secara fungsional menjadi ROM.

IV. SISTEM MEMORI UTAMA
  • Tahun 1960-an para programmer system mengembangkan system pengoperasian multiprogramming, yang memanfaatkan atau menggunakan memori utama yang sangat besar.
  • Komputer yang hanya mempunyai satu system memori utama dikatakan mempunyai one-level strorage system(system penyimpanan tingkat satu)
  • Komputer yang mempunyai memori virtual menggunakan multilevel storage system (system penyimpanan bertingkat)
  • Penyimpanan multilevel mempunyai memori sentral(internal) yaitu memori utama dan register CPU sebagai primary memory dan peralatan penyimpanan eksternal seperti hardisk dan disket sebagai secondary memory memori sekunder.

V. RELOKASI PROGRAM DAN PROTEKSI MEMORI
  • Multiprogramming adalah cara yang tepat untuk meningkatkan kegunaan CPU dengan cara memungkinkan beberapa tugas berada dalam memori pada waktu yang bersamaan.
  • Berhasilnya multiprogramming ditentukan antara lain oleh :
o   Relokasi Program
-          Dengan cara menmpatkan program dimana saja dalam memori
-          Initial Program Relocation (Relokasi Program Awal) adalah proses merelokasi program tempat system pengoperasian pertama kali.
-          Dynamic Program Relocation (Relokasi Program Dinamis) adalah system pengoperasian dapat memindahkan program dari suatu tempat ke tempat yang lain dalam memori utama setelah program dijalankan.
o   Proteksi Program
-          Mencegah suatu program mengakses memori yang telah diberikan oleh system pengoperasian ke program yang lain.
-          Contoh relokasi program dan proteksi adalah IBM System/360 dan CDC 6600
-          IBM System/360
§  Menggunakan Register Base untuk merelokasi program
§  Menggunakan relokasi program awal
§  Menggunakan key-controlled memory protection untuk proteksi memori.
-          CDC 6600
§  Mempunyai register khusus yaitu Relocation Address (RA/Register Alamat Relokasi) untuk merelokasi program.
§  Menggunakan relokasi program awal





VI. MEMORI CACHE
·   Buffer berkecepatan tinggi yang digunakan untuk menyimpan data yang diakses pada saat itu dan data yang berdekatan dalam memori utama.
·   Memori akses random (RAM) berkecepatan tinggi yang ditempatkan diantara system memori dan pemakaiannya untuk mengurangi waktu akses efektif dari system memori.
·   Dengan memasukan memori chace antara peralatan cepat dan system memori yang lebih lambat, perancangan ini dapat memberikan system memori yang cepat.
·   Kegunaan Memori Cache adalah :
w Program cenderung menjalankan instruksi yang berurutan, menyebabkan instruksi tersebut berada didekat lokasi memori.
w Program biasanya mempunyai simpul untuk tempat menjalankan kelompok instruksi secara berulang-ulang.
w Compiler menyimpan array dalam blok lokasi memori yang bersebelahan.
w Compiler biasanya menempatkan item data yang tidak berhubungan didalam segmen data.
·   Cache terdiri dari sejumlah cache entries(entry cache) dan setiap entri cache terdiri dari 2 yaitu
o   Memori Cache
§  merupakan SRAM berkecepatan tinggi
§  data yang disimpan merupakan kopi dari data memori utama yang terpilih pada saat itu atau data yang baru disimpan yang belum berada didalam memori.
o   Address Tag (Tag Alamat)
§  Menunjukan alamat fisik data yang ada dalam memori utama dan beberapa informasi valid

·   Cara kerja Cache adalah :
    • Ketika CPU mengakses memori maka system penyimpanan akan mengirim alamat fisik ke cache
    • Membandingkan alamat fisik tersebut dengan semua tag alamat untuk mengetahui apakah ia menyimpan kopi dari sebuah data.
    • Cache HIT adalah situasi yang terjadi ketika peralatan meminta akses memori ke word yang telah ada didalam memori cache tersebut secara cepat megembalikan item data yang diminta.
    • Cache MISS adalah situasi yang terjadi ketika peralatan meminta akses ke data yang tidak berada dalam cache, cache akan menjemput item tersebut dari memori, dimana hal ini mebutuhkan waktu yang lebih lama dari cache hit.
    • Jika cache tidak menyimpan data, maka akan terjadi cache miss dan cache akan menyampaikan alamat ke system memori utama untuk membaca.
    • Jika data yang dating dari memori utama, maka CPU atau cache akan menyimpan kopinya dengan diberi tag alamat yang tepat.



·   Ada 2 sebab mengapa cache bekerja dengan baik :
§  Cache beroperasi secara paralel dengan CPU
- Word tambahan yang dimuatkan setelah terjadi cache miss tidak akan mengganggu kinerja CPU.
§  Prinsip Lokalitas Referensi
- CPU akan meminta data baru
·   Setiap cache mempunyai dua sub system yaitu :
§  Tag Subsystem
- Menyimpan alamat dan menentukan apakah ada kesesesuaian data yang diminta.
§  Memory subsistem
-    Menyimpan dan mengantarkan data.

  • Memori Cache menggunakan teknik pemetaan yang berbeda untuk memetakan alamat memori ke dalam alamat lokalnya, yaitu :
§  Cache Asosiatif
-    Disebut juga Fully Associative Cache.
-    Menyimpan tagnya di dalam memori asosiatif atau memori yang ekuivalen secara fungsional
-    Cache dapat menempatkan sembarang jalur refill selama akses memori
-    Membandingkan alamat yang ada dengan semua alamat yang disimpan
§  Direct Mapped Cache (Cache yang dipetakan langsung)
-    Membagi memory utama menjadi K kolom dengan N refill line per kolomnya
§  Set Cache Asosiatif
-    Mengkombinasikan organisasi asosiatif dan direct (langsung)
-    Mengorganisir memori utama dan memorinya sendiri menjadi kolom jalur refil N
§  Sector Mapped Cache (Cache yang dipetakan sector)
-    Merupakan modifikasi dari cache asosiatif
-    Jalur refill memori utama dan cache dikelompokan menjadi sector yang disebut row(baris)

VI. MEMORI VIRTUAL
  • Ada 2 teknik yang digunakan memori virtual utnuk memetakan alamat efektif kedalam alamat fisik yaitu :

§  Paging
-    Adalah teknik yang berorientasi hardware untuk mengelola memori fisik
-    Menggunakan paging agar program besar dapat berjalan pada komputer yang mempunyai fisik kecil.
-    Hardware memori virtual membagi alamat logis menjadi 2 yaitu virtual page number dan word offset.
-    Membagi alamat logis dan memori menjadi page yang berukuran tertentu.

§  Segmentasi
-    Adalah teknik yang berorientasi pada struktur logis dari suatu program.
-    Membagi alamat logis dan memori menjadi page yang ukuran berubah-ubah.
-    Segmen yang berisi kode prosedur disebut kode segmen dan yang berisi data disebut data segmen

Perbedaan Paging dengan Segmentasi adalah :
§  Paging berorientasi pada hardware dan segmentasi pada struktur logis dari suatu program.
§  Segmen cenderung jauh lebih besar dari paging.
§  Segmen mempunyai jangkauan ukuran page dan page hanya mempunyai satu ukuran tertentu untuk suatu system tertentu.
§  Dalam segmentasi seluruh program tidak perlu dibuat sebagai modul tunggal untuk diisikan ke dalam memori sebagai sebuah unit
§  Dalam segmentasi, alamat logis mempunyai 2 bagian, yaitu segement number dan byte offset.

VII. MASALAH DESIGN MEMORI
  • Kecepatan Memori lawan kecepatan CPU :
§ Awal tahun 1960 – 1980, kecepatan memori dan CPU meningkat, namun rasio keseluruhan antara keduanya relatif.
§ Pada era ini kecepatan memori biasanya kurang lebih 10 kali lebih lambat dari kecepatan CPU.
§ CDC:6600, 7600, CRAY 1 dan CRAY X-MP untuk super komputer waktu akses memorinya 10 sampai 14 waktu siklus CPU.
§ VAX 11/780, 8600 dan 8700 untuk mini computer waktu akses memorinya 4 sampai 7 kali siklus CPU
§ Pertengahan tahun 1980, kecepatan CPU jauh lebih meningkat hingga 50 kali kecepatan memori, contoh CRAY
§ Keuntungan dari perubahan ini adalah :
§ Memori besar umumnya memerlukan hardware khusus untuk mendeteksi dan mengoreksi kesalahan, yang menambah waktu akses memori efektif.

Perkembangan Hardware & Processor

Hardware Komputer
Secara ringkas maka sistem komputer terdiri atas tiga bagian penting yaitu
1. CPU ( Central Processing Unit )/Processor
2. Memory ( RAM dan ROM )
3. Input/Output.
Secara sederhana Blok Diagramnya dapat dilihat pada gambar 1.
Gambar 1. Diagram Blok Sistem Komputer
Dimana bagian CPU/Processor, Memori dan Port I/O terletak (terpasang) pada Mother Board, selanjutnya akan diperinci bagian-bagian dari Komputer tersebut :
1. Central Processing Unit / Processor
Merupakan bagian utama dari komputer karena processor berfungsi untuk mengatur semua aktifitas yang ada pada komputer. Satuan kecepatan dari processor adalah MHz (Mega Hertz) atau GHz(1000 MegaHertz), dimana semakin besar nilainya semakin cepat proses eksekusi pada komputer.
2. Memori
Memori berfungsi untuk menyimpan data dan program. Memori beraneka tipe dari yang tercepat aksesnya sampai yang terlambat. Berdasarkan kecepatan aksesnya dapat dibuat hirarki memori seperti pada table berikut.
Selain menyatakan hubungan kecepatan, hirarki tersebut juga menyatakan hubungan–hubungan lain, yaitu :
Hubungan Harga : Semakin kebawah adalah harganya semakin murah. (Harga dihitung berdasarkan rupiah per bit data disimpan).
Hubungan Kapasitas : Semakin keatas umumnya kapasitasnya semakin terbatas.
Hubungan frekuensi pengaksesan : Semakin keatas semakin tinggi frekuensi pengaksesan.
Setiap kali pemroses melakukan eksekusi, pemroses harus membaca instruksi dari memori utama. Agara intruksi dapat dilakukan secara cepat maka harus diusahakan instruksi tersedia di memori pada hirarki berkecepatan akses lebih tinggi. Kecepatan eksekusi ini akan meningkatkan kinerja system. Untuk itu terdapat konsep memori dua level, yaitu ditampung dulu sementara di memori pada hirarki lebih tinggi.
2.1 Register Memori
Merupakan jenis memori dimana kecepatan akses yang paling cepat, Memori ini terdapat pada CPU/Processor.
Contoh : Register Data, Register Alamat, Stack Pointer Register, Memory Addresss Register, I/O Address register, Instruction Register , dll.
2.2 Cache Memori
Memori berkapasitas terbatas, berkecepatan tinggi yang lebih mahal daripada memori utama. Cache memory ini ada diantara memori utama dan register pemroses, berfungsi agar pemroses tidak langsung mengacu pada memori utama agar kinerja dapat ditingkatkan.
Cache Memory ini ada dua macam yaitu :
1. Cache Memory yang terdapat pada internal Processor , chace memory jenis ini kecepatan aksesnya sangat tinggi, dan harganya sangat mahal. Hal ini bisa terlihat pada Processor yang berharga mahal seperti P4,P3,AMD-Athlon dll, semakin tinggi kapasitas L1, L2 Chace memori maka semakin mahal dan semakin cepat Processor.
2.  Chace Memory yang terdapat diluar Processor, yaitu berada pada MotherBoard, memori jenis ini kecepatan aksesnya sangat tinggi, meskipun tidak secepat chache memori jenis pertama ( yang ada pada internal Processor). Semakin besar kapasitasnya maka semakin mahal dan cepat. Hal ini bisa kita lihat pada Motherboard dengan beraneka ragam kapasitas chace memory yaitu 256kb, 512kb, 1Mb, 2Mb dll.

2.3. Memori Utama
Memori yang berfungsi untuk menyimpan data dan program. Jenis Memori Utama :
1. ROM ( Read Only memory) yaitu memory yang hanya bisa dibaca saja datanya atau programnya. Pada PC, ROM terdapat pada BIOS ( Basic Input Output System) yang terdapat pada Mother Board yang berfungsi untuk men-setting peripheral yang ada pada system.
Contoh: AMIBIOS, AWARD BIOS, dll
ROM untuk BIOS terdapat beragamjenis diantaranya jenis Flash EEPROM BIOS yang memiliki kemampuan untuk dapat diganti programnya dengan software yang disediakan oleh perusahhan pembuat Mother Board, yang umumnya penggantian tersebut untuk peningkatan unjuk kerja dari peripheral yang ada di Mother Board.
2. RAM (Random Acces Memory) yang memiliki kemampuan untuk dirubah data atau program yang tersimpan didalamnya.
Ada bebrapa jenis RAM yang ada dipasaran saat ini :
  • SRAM
  • EDORAM
  • SDRAM
  • DDRAM
  • RDRAM
  • VGRAM
  • Dll.
Pada memori jenis RAM dikenal istilah BUS SPEED, seperti PC66, PC100, PC 133, PC200, PC 400 dll yang artinya adalah kecepatan aliran data atau program pada memori dimana semakin besar nilai BUS SPEED, maka semakin cepat akses terhadap memori tersebut.
2.4 Memori Sekunder
Merupakan memori tambahan yang berfungsi untuk menyimpan data atau program. Contoh: Hardisk, Floppy Disk dll
Hubungan antara Chace Memori, Memori Utama dan Memori Sekunder dapat dijelaskan dengan gambar 2 berikut :
Gambar 2. Hubungan antara Chace memory, Memori Utama dan Memori Sekunder.
3. Input/Output Unit
Input/Output Unit merupakan bagian dari komputer untuk menerima data maupun mengeluarkan/menampilkan data setelah diproses oleh Processor. Untuk mempermudah pembahasan tentang Input/Output unit, akan dijelaskan dalam dua bagian, yaitu :
  • Port I/O
  • Peripheral I/O
3.1 Port I/O
Port I/O merupakan Port atau Gerbang atau tempat dipasangnya conector dari peralatan I/O. Dimana setiap port I/O dibawah kontrol dari Processor.
1.   Port Paralel (LPT1 atau LPT2)
Merupakan port bagi peralatan yang bekerja dengan transmisi data secara parallel. Contoh peralatan yang menggunakan port ini adalah : Printer, Scanner dll.
2.  Port Serial (Com1, Com2 )
Merupakan port bagi peralatan yang bekerja dengan transmisi data secara serial. Contoh peralatan yang menggunakan port ini adalah : Mouse, Modem , dll.
3.   Port AT / PS2
Port ini umumnya digunakan untuk masukan dari Keyboard, Mouse.
4.  USB Port
USB Port (Universal Serial Bus ) Port merupakan Port Serial universal bagi peralatan yang bekerja dengan transmisi data secara serial. Contoh Perlatan yang menggunakan USB port : Camera Digital
5.  Port VGA
Merupakan port yang berhubungan langsung dengan monitor. Port VGA didapatkan dari pemasangan VGA Card.
6.  Port Audio
Merupakan port yang berhubungan langsung dengan peralatan audio seperti Tape, Radio, Speaker, Microphone, dll.
Gambar 3. Port-Port pada Mother Board
3.2 Peripheral I/O
Peripheral adalah sesuatu yang mengacu ke peralatan external yang dihubungkan dengan komputer.
Peripheral komputer dapat dibagi ke dalam dua kategori berdasarkan fungsi. Kategori pertama terdiri atas peralatan yang melaksanakan operasi input dan output, kategori ini meliputi keyboard, trackball, mouse, printer, dan display video. Kategori kedua terdiri atas peralatan yang diutamakan pada penyimpan data sekunder, yang mana penyimpan utamanya disediakan oleh memori utama komputer.Ada banyak sekali peralatan penyimpan, seperti disk magnetic, optical disk, magnetic tapes, yang mampu untuk menyimpan data yang besar.
4. Perkembangan Hardware Komputer
Perkembangan teknologi elektronik yang paling pesat dan banyak dipakai dibanyak bidang dalam menyelasaikan pekerjaan maupun untuk memperolah informasi tidak lain adalah komputer. Perkembangan komputer ini diakibatkan oleh perkembangan mikroprosesor (processor) sebagai otak dalam menangani keseluruhan dari kerja komputer.
4.1 Perkembangan Mikroprosesor Intel dan Personal Computer(PC)
Sesuai dengan waktu evolusi generasi-generasi prosesor yang baru bermunculan dengan perfomance yang lebih canggih, baik dari segi kualitas maupun kerumitannya.
Perkembangan tipe prosesor :
  • XT 8086 – 8088
  • AT 286, AT 386, AT 486
  • Pentium I : AT 80586 dengan 50 Mhz, 70 Mhz, 90 Mhz, 100 Mhz, 133 Mhz
  • Pentium II : 266 Mhz., 300 Mhz, 350 Mhz, 400 Mhz, 450 Mhz.
  • Pentium III : 500 Mhz, 550 Mhz, 600 Mhz, 650 Mhz, 700 Mhz.
  • Dan generasi terbaru sekarang Pentium IV
4.2 Processor selain Intel dan perkembangannya
Pangsa pasar yang menggiurkan untuk teknologi Komputer di Indonesia menyebabkan processor yang ada di Pasar tidak hanya produk Intel Co. tetapi Perusahaan lain seperti AMD ( Advanced Micro Device ) serta Cyrix juga mengeluarkan beberapa jenis Processor yang berusaha mengimbangi produk-produk dari Intel.
Produk-Produk dari AMD antara lain :
AMD K-5, AMD K-6, AMD K6-2, AMD K6-3, AMD K-7, AMD Duron, AMD Athlon. Dimana produk-produk AMD ini ternyata beberapa dan belakangan ini berhasil melampaui kemampuan dari produk-produk Intel.
Selain AMD, Processor merk lain yang beredar dipasaran Indonesia adalah processor merk Cyrix yaitu Cyrix 6×86, M-II, dan M-III, tetapi sayangnya Processor merk Cyrix ini tidak seberhasil AMD untuk membuat processor tandingan bagi Intel.

Hubungan Cache Memory, Main Memory, dan Processor

Cache memory adalah memori berbasis SRAM berukuran kecil dan berkecepatan tinggi yang dikendalikan secara otomatis oleh hardware. Cache Memory ini berisi salinan dari memori utama atau Main Memory. Main Memory sendiri biasanya berbasis DRAM karena kelebihannya mengenai harga dan ukuran memori. DRAM sendiri biasanya lebih lambat.

Hubungan CPU, Cache Memory, dan Main Memory terlihat pada bagan (Klik untuk memperbesar gambar)
Pada saat CPU membaca sebuah word memori, maka dilakukan pemeriksaan untuk mengetahui apakah word tersebut berada dalam cache memori. Bila ada dalam cache memori maka dilakukan pengiriman ke CPU, dan bila tidak, maka akan dicari dalam memori utama,selanjutnya blok yang berisi sejumlah word tersebut dikirim ke cache memori dan word yang diminta CPU dikirimkan ke CPU dari cache memori
Lebih mudahnya dengan urutan seperti ini dan alur dibawah ini:
1. CPU membaca word memori
2. Periksa di Cache Memory,
2.1a Jika ada akan dikirim ke CPU
2.1b Jika tidak ada akan dicari ke Memory Utama
2.2b Dikirim ke Cache Memory lalu dikirim ke CPU

Hubungan Alur Pembacaan Cache Memory (Klik untuk memperbesar gambar)
Dengan begitu, dapat kita tahu bahwa dengan adanya Cache Memory, pencarian data (word) lebih efisien, mengingat bahwa Cache Memory membuat salinannya sehingga lebih cepat diakses processor. Namun walau Cache Memory ini cepat, bukan berarti Cache Memory ini dapat menggantikan Main Memory, karena Cache Memory hanya memiliki memori yang kecil, sedangkan Main Memory memiliki kelebihan dalam memorinnya yang lebih besar. Dengan begitu, Cache Memory dan Main Memory bersifat melengkapi dan menyempurnakan satu sama lain sehingga proses pemanggilan dan pemanggilan data oleh CPU lebih efisien

Rabu, 11 Januari 2012

Sistem Komputer

1. Sistem Komputer
a. Pengertian Sistem
Sistem berasal dari bahasa Latin (systema) dan bahasa Yunani
(sustema) adalah suatu kesatuan yang terdiri komponen atau eleven yang
dihubungkan bersama untuk memudahkan aliran informasi, materi atau
energi. Sistem juga merupakan kesatuan bagian-bagian yang saling
berhubungan yang berada dalam suatu wilayah serta memiliki item-item
penggerak.
b. Pengertian Komputer
Komputer adalah alat yang dipakai untuk mengolah data menurut
prosedur yang telah dirumuskan. Kata komputer semula dipergunakan
untuk menggambarkan orang yang perkerjaannya melakukan perhitungan
aritmatika, dengan atau tanpa alat bantu, tetapi arti kata ini kemudian
dipindahkan kepada mesin itu sendiri.
c. Pengertian Sistem Komputer
Sistem Komputer adalah elemen-elemen yang terkait untuk
menjalankan suatu aktifitas dengan menggunakan komputer. Elemen dari
sistem komputer terdiri dari manusianya (brainware), perangkat unak
(software), set instruksi (instruction set), dan perangkat keras hardware).
Dengan demikian komponen tersebut merupakan elemen yang
terlibat dalam suatu sistem komputer. Tentu saja hardware tidak berarti
apa-apa jika tidak ada salah satu dari dua lainnya (software dan
brainware). Contoh sederhananya, siapa yang akan menghidupkan
komputer jika tidak ada manusia. Atau akan menjalankan perintah apa
komputer tersebut jika tidak ada softwarenya.
Arsitektur Von Neumann menggambarkan komputer dengan
empat bagian utama: Unit Aritmatika dan Logis (ALU), unit kontrol,
memori, dan alat masukan dan hasil (secara kolektif dinamakan I/O).
Bagian ini dihubungkan oleh berkas kawat, "bus".
d. Komponen-komponen Komputer
Komponen – komponen dalam sistem komputer terbagi 3, yang
tidak bisa terpisahkan yaitu :
1. Hardware ( Perangkat Keras )
• Processing Device
• Input Device
• Output Device
• Storage Device
2. Software ( Perangkat Lunak )
• Operating System
• Application Program
• Language Program
3. Brainware ( Orang Yang MengoperasikanKomputer )
1. Hardware ( Perangkat Keras )
Perangkat yang dapat kita lihat dan dapat kita sentuh secara
fisik, seperti perangkat perangkat masukan, perangkat pemroses,
maupun perangkat keluaran. Peralatan ini umumnya cukup
canggih. Dia dapat bekerja berdasarkan perintah yang ada padanya,
yang disebut juga dengan instruction set tadi. Dengan adanya
perintah yang dimengerti oleh mesin tersebut, maka perintah
tersebut melakukan berbagai aktifitas kepada mesin yang
dimengerti oleh mesin tersebut sehingga mesin bisa bekerja
berdasarkan susunan perintah yang didapatkan olehnya.
• Processing Device (CPU)
CPU ( Central Processing Unit ) berperanan untuk
memproses arahan, melaksanakan pengiraan dan
menguruskan laluan informasi menerusi system komputer.
Unit atau peranti pemprosesan juga akan berkomunikasi
dengan peranti input , output dan storan bagi melaksanakan
arahan-arahan berkaitan.
Dalam komputer-komputer modern, kedua unit ini
terletak dalam satu sirkuit terpadu (IC - Integrated Circuit),
yang biasanya disebut CPU (Central Processing Unit). CPU
memiliki fungsi adalah program-program yang disimpan
dalam memori utama dengan cara mengambil instruksiinstruksi,
menguji instruksi tersebut dan mengeksekusinya
satu persatu sesuai perintah. Pandangan sederhananya adalah
operasi pembacaan instruksi (fetch) dan operasi pelaksanaan
instruksi ( execute ). CPU memiliki dua bagian utama, yaitu :
1. ALU ( Arithmetic Logic Unit )
Unit Aritmatika dan Logika, atau Arithmetic Logic
Unit (ALU), adalah alat yang melakukan semua operasi
aritmatika dengan dasar penjumlahan sehingga sirkuit
elektronik yang digunakan disebut adder juga 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 ( ) ALU juga
dapat melakukan pelaksanaan arimatika (pengurangan,
penambahan dan semacamnya), pelaksanaan logis ( AND,
OR, NOT ), dan pelaksanaan perbandingan
(membandingkan dua slot dengan kesetaraan).
2. CU ( Control Unit )
Unit control, mengatur dan mengendalikan semua
peralatan yang ada pada sistem komputer, kapan alat
input menerima data dan kapan data diolah serta kapan
ditampilkan pada alat output. Mengartikan instruksiinstruksi
dari program komputer. Membawa data dari alat
input ke memori utama. Mengambil data dari memori
utama untuk diolah. Mengirim instruksi ke ALU jika ada
instruksi untuk perhitungan aritmatika atau perbandingan
logika. Membawa hasil pengolahan data kembali ke
memori utama lagi untuk disimpan, dan pada saatnya
akan disajikan ke alat output.
Selain itu CPU juga memiliki beberapa alat
penyimpanan yang berukuran kecil yang disebut dengan
Register yang memiliki fungsi Alat penyimpanan kecil
dgn kecepatan akses cukup tinggi, yg digunakan untuk
menyimpan data dan instruksi yang sedang diproses,
sementara data dan instruksi lainnya yang menunggu
giliran untuk diproses, masih disimpan di dalam memori
utama.
Banyak register dalam CPU, masing-masing sesuai
dengan fungsinya yaitu :
1. Instruction Register ( IR )
Digunakan untuk menyimpan instruksi yang
sedang diproses.
2. Program Counter ( PC )
Digunakan untuk menyimpan alamat lokasi dari
memori utama yang berisi instruksi yang sedang
diproses. Selama pemrosesan instruksi, isi PC diubah
menjadi alamat dari memori utama yang berisi
instruksi berikutnya.
3. General Purpose Register
Punya kegunaan umum yang berhubungan
dengan data yang sedang diproses. Contoh, yg
digunakan untuk menampung data disebut operand
register, untuk menampung hasil disebut accumulator.
4. Memory Data Register ( MDR )
Digunakan untuk menampung data atau
instruksi hasil pengiriman dari memori utama ke CPU
atau menampung data yg akan direkam ke memori
utama, hasil pengolahan oleh CPU.
5. Memory Address Register
Digunakan untuk menampung alamat data atau
instruksi pada memori utama yg akan diambil atau yg
akan diletakkan.
Selain register, beberapa CPU menggunakan
suatu cache memory yang mempunyai kecepatan
sangat tinggi, agar kerja CPU lebih efisien. Tanpa
cache memory, CPU akan menunggu sampai data/
instruksi diterima dari memori utama, atau menunggu
hasil pengolahan selesai dikirim ke memori utama,
baru proses selanjutnya bisa dilakukan. Padahal
proses dari memori utama lebih lambat dibanding
kecepatan register sehingga akan banyak waktu
terbuang. Dengan adanya cache memory, sejumlah
blok informasi pada memori utama dipindahkan ke
cache memory dan selanjutnya CPU akan selalu
berhubungan dengan cache memory.
• Input and Output Device
I/O membolehkan komputer mendapatkan informasi
dari dunia luar, dan menaruh hasil kerjanya di sana, dapat
berbentuk fisik (hardcopy) atau non fisik (softcopy). Ada
berbagai macam alat I/O, dari yang akrab keyboard, monitor
dan disk drive, ke yang lebih tidak biasa seperti webcam
(kamera web, printer, scanner, dan sebagainya.
Yang dimiliki oleh semua alat masukan biasa ialah
bahwa mereka meng-encode (mengubah) informasi dari suatu
macam ke dalam data yang bisa diolah lebih lanjut oleh
sistem komputer igital. Alat output, men-decode data ke
dalam informasi yang bisa dimengerti oleh pemakai
komputer.
1. Input Device
Input Device adalah perangkat keras komputer yang
berfungsi sebagai alat untuk memasukan data atau
perintah ke dalam komputer. Alat-alatnya adalah :
• Keyboard
• Pointing Device
Mouse
Touch screen
Digitizer Grapich Tablet
• Scanner
• Microphone
2. Output Device
Output Device adalah perangkat keras komputer yang
berfungsi untuk menampilkan keluaran sebagai hasil
pengolahan data. Keluaran dapat berupa hard-copy (ke
kertas), soft-copy (ke monitor), ataupun berupa suara.
Alatnya antara lain adalah :
• Monitor
• Printer
• Speaker
• Storage Device
Register CPU berukuran kecil sehingga tidak dapat
menyimpan semua informasi, maka CPU harus dilengkapi
dengan alat penyimpan berkapasitas lebih besar yaitu memori
utama. Terbagi menjadi dua yaitu :
1. Internal Storage
Adalah media penyimpanan yang terdapat didalam
komputer yaitu :
• RAM ( Random Access Memory )
Untuk menyimpan program yang kita olah untuk
sementara waktu. Dapat diakses secara acak ( dapat
diisi/ditulis, diambil, atau dihapus isinya ). Struktur
RAM terbagi menjadi empat bagian utama, yaitu:
1. Input Storage
Digunakan untuk menampung input yang
dimasukkan melalui alat input.
2. Program Storage
Digunakan untuk menyimpan semua
instruksi-instruksi program yang akan diakses.
3. Working Storage
Digunakan untuk menyimpan data yang
akan diolah dan hasil pengolahan.
4. Output Storge
Digunakan untuk menampung hasil akhir
dari pengolahan data yang akan ditampilkan ke
alat output.
• ROM ( Read Only Memori )
Memori yang hanya bisa dibaca dan berguna
sebagai penyedia informasi pada saat komputer pertama
kali dinyalakan. Hanya dapat dibaca, tidak bisa mengisi
sesuatu ke dalam ROM, sudah diisi oleh pabrik
pembuatnya. Berupa sistem operasi yg terdiri dari
program pokok, seperti program untuk mengatur
penampilan karakter di layar, pengisian tombol kunci
papan ketik untuk keperluan kontrol tertentu, dan
bootstrap program. Program bootstrap diperlukan pada
saat pertama kali sistem komputer diaktifkan (booting),
yang dapat berupa cold booting atau warm booting.
Dimungkinkan untuk merubah isi ROM, dengan cara
memprogram kembali, yaitu :
1. PROM (Programmable Read Only Memory), yg
hanya dapat diprogram satu kali.
2. EPROM (Erasable Programmable Read Only
Memory), dapat dihapus dgn sinar ultraviolet, dapat
diprogram kembali berulang-ulang.
3. EEPROM (Electrically Erasable Programmable
Read Only Memory), dapat dihapus secara
elektronik dan dapat diprogram kembali.
2. External Storage
Perangkat keras untuk melakukan operasi penulisan,
pembacaan & penyimpanan data, di luar komponen utama,
yaitu :
• Floppy Disk
• Hard Disk
• CD Room
• DVD
2. Software ( Perangkat Lunak )
Rangkaian prosedur dan dokumentasi program yang
berfungsi menyelesaikan masalah yang dikehendaki. Merupakan
data elektronik yang disimpan sedemikian rupa oleh komputer itu
sendiri, data yang disimpan ini dapat berupa program atau instruksi
yang akan dijalankan oleh perintah, maupun catatan-catatan yang
diperlukan oleh komputer untuk menjalankan perintah yang
dijalankannya.
• Operating System
Sistem operasi atau operating system ialah Program
dasar pada komputer yang menghubungkan pengguna dengan
hardware komputerPerangkat lunak yang dihubungkan
dengan pelaksanaan program dan koordinasi dari aktivitas
sistem komputer. Ada beberapa macam system operasi
diantaranya adalah :
Linux
Windows
Mac OS
Tugas sistem operasi termasuk (tetapi tidak hanya)
mengurus penjalanan program di atasnya, koordinasi Input,
Output, pemrosesan, memori, serta penginstalan dan
pembuangan software.
Sistem operasi, menentukan program yang mana
dijalankan, kapan, dan alat yang mana (seperti memori atau
I/O) yang mereka gunakan. Sistem operasi juga memberikan
servis kepada program lain, seperti kode (driver) yang
membolehkan programer untuk menulis program untuk suatu
mesin tanpa perlu mengetahui detail dari semua alat
elektronik yang terhubung.
• Application Program
Yaitu program komputer yang siap digunakan atau
disebut juga program siap pakai. Program paket digunakan
untuk aplikasi bisnis secara umum, aplikasi khusus dibidang
industri, aplikasi untuk meningkatkan produktifitas organisasi
ayau perusahaan dan aplikasi untuk produktifitas perorangan.
Contoh :
Microsoft Word
Microsoft Excel
CorelDraw X4
Dll
• Language Program
Language Program atau bahasa pemrograman adalah
bahasa yang digunakan oleh manusia untuk berkomunikasi
dengan komputer, karena komputer memiliki bahasa sendiri
maka komputer tidak akan merespon selain menggunakan
bahasa
Pemrograman, seperti :Bahasa komputer yang
digunakan untuk menulis instruksi-instruksi program untuk
melakukan suatu pekerjaan yang dilakukan oleh programer,
seperti :
Visual basic
Turbo pascal
Delphi
3. Brainware
Brainware adalah orang yang mengoperasikan sebuah
komputer, karena jika tidak ada orang yang mengoperasikan maka
tidak akan dapat digunakan.
2. Operasi Sistem Komputer
Secara umum, sistem komputer terdiri atas CPU dan sejumlah device
controller yang terhubung melalui sebuah bus yang menyediakan akses ke
memori. Umumnya, setiap device controller bertanggung jawab atas sebuah
hardware spesisfik. Setiap device dan CPU dapat beroperasi secara konkuren
untuk mendapatkan akses ke memori. Adanya beberapa hardware ini dapat
menyebabkan masalah sinkronisasi. Karena itu untuk mencegahnya sebuah
memory controller ditambahkan untuk sinkronisasi akses memori.
Pada sistem komputer yang lebih maju, arsitekturnya lebih kompleks.
Untuk meningkatkan performa, digunakan beberapa buah bus . Tiap bus
merupakan jalur data antara beberapa device yang berbeda. Dengan cara ini RAM,
Prosesor, GPU (VGA AGP) dihubungkan oleh bus utama berkecepatan tinggi
yang lebih dikenal dengan nama FSB (Front Side Bus) . Sementara perangkat lain
yang lebih lambat dihubungkan oleh bus yang berkecepatan lebih rendah yang
terhubung dengan bus lain yang lebih cepat sampai ke bus utama. Untuk
komunikasi antar bus ini digunakan sebuah bridge .
Tanggung jawab sinkronisasi bus yang secara tak langsung juga
mempengaruhi sinkronisasi memori dilakukan oleh sebuah bus controller atau
dikenal sebagai bus master . Bus master akan mengendalikan aliran data hingga
pada satu waktu, bus hanya berisi data dari satu buah device .
Pada prakteknya bridge dan bus master ini disatukan dalam sebuah chipset
.Jika komputer dinyalakan, yang dikenal dengan nama booting, komputer akan
menjalankan bootstrap program yaitu sebuah program sederhana yang disimpan
dalam ROM yang berbentuk chip CMOS (Complementary Metal Oxide
Semiconductor) . Chip CMOS modern biasanya bertipe EEPROM(Electrically
Erasable Programmable Read Only Memory), yaitu memori non-volatile (tak
terhapus jika power dimatikan) yang dapat ditulis dan dihapus dengan pulsa
elektronik. Lalu bootsrap program ini lebih dikenal sebagai BIOS (Basic Input
Output System) .
Bootstrap program utama, yang biasanya terletak di Motherboard akan
memeriksa hardware-hardware utama dan melakukan inisialisasi terhadap
program dalam hardware yang dikenal dengan nama firmware .
Bootstrap program utama kemudian akan mencari dan meload kernel
sistem operasi ke memori lalu dilanjutkan dengan inisialisasi sistem operasi.Dari
sini program sistem operasi akan menunggu kejadian tertentu. Kejadian ini akan
menentukan apa yang akan dilakukan sistem operasi berikutnya ( event-driven ).
Kejadian ini pada komputer modern biasanya ditandai dengan munculnya
interrupt dari software atau hardware, sehingga Sistem Operasi ini disebut
Interrupt-driven. Interrupt dari hardware biasanya dikirimkan melalui suatu signal
tertentu, sedangkan software mengirim interrupt dengan cara menjalankan system
call atau juga dikenal dengan istilah monitor call . System/Monitor call ini akan
menyebabkan trap yaitu interrupt khusus yang dihasilkan oleh software karena
adanya masalah atau permintaan terhadap layanan sistem operasi. Trap ini juga
sering disebut sebagai exception .
Setiap interrupt terjadi, sekumpulan kode yang dikenal sebagai ISR
(Interrupt Service Routine) akan menentukan tindakan yang akan diambil. Untuk
menentukan tindakan yang harus dilakukan, dapat dilakukan dengan dua cara
yaitu polling yang membuat komputer memeriksa satu demi satu perangkat yang
ada untuk menyelidiki sumber interrupt dan dengan cara menggunakan alamatalamat
ISR yang disimpan dalam array yang dikenal sebagai interrupt vector di
mana sistem akan memeriksa Interrupt Vector setiap kali interrupt terjadi.
Arsitektur interrupt harus mampu untuk menyimpan alamat instruksi yang
di- interrupt . Pada komputer lama, alamat ini disimpan di tempat tertentu yang
tetap, sedangkan pada komputer baru, alamat itu disimpan di stack bersama-sama
dengan informasi state saat itu.
BAB III PENUTUP
Sistem Komputer adalah elemen-elemen yang terkait untuk menjalankan
suatu aktifitas dengan menggunakan komputer. Elemen dari sistem komputer
terdiri dari manusianya (brainware), perangkat lunak (software), set instruksi
(instruction set), dan perangkat keras (hardware).
Komponen – komponen dalam sistem komputer terbagi 3, yang tidak bisa
terpisahkan yaitu :
1. Hardware ( Perangkat Keras )
• Processing Device
• Input Device
• Output Device
• Storage Device
2. Software ( Perangkat Lunak )
• Operating System
• Application Program
• Language Program
3. Brainware ( Orang Yang MengoperasikanKomputer )
Adanya beberapa hardware ini dapat menyebabkan masalah sinkronisasi.
Karena itu dalam operasi sistem komputer untuk mencegahnya sebuah memory
controller ditambahkan untuk sinkronisasi akses memori. Untuk meningkatkan
performa, digunakan beberapa buah bus . Tiap bus merupakan jalur data antara
beberapa device yang berbeda. Jika komputer dinyalakan Bootstrap program
utama akan memeriksa hardware-hardware utama. Pada komputer modern
biasanya ditandai dengan munculnya interrupt dari software atau hardware,
sehingga Sistem Operasi ini disebut Interrupt-driven.
Demikian yang bisa kami simpulkan, semoga makalah ini bermanfaat bagi
masyarakat pada umumnya dan mahasiswa pada umumnya. Apabila makalah ini
terdapat kekurangan maupun kesalahan dalam penulisan/pembahasan kami
mengucapkan mohon maaf.

Selasa, 03 Januari 2012

Mengenal BIOS (Basic Input Output System)

  Dalam dunia komputer, BIOS atau Basic Input-Output System, adalah suatu kode software yang ditanam di dalam suatu sistem komputer yang memiliki fungsi utama untuk memberi informasi visual pada saat komputer dinyalakan, memberi akses ke keyboard dan juga memberi akses komunikasi secara low-level diantara komponen hardware, seperti untuk meload sistem operasi dari storage ke RAM. BIOS dapat disebut sebagai miniatur dan suatu sistem operasi yang dikhususkan untuk komunikasi low-level pada hardware. BIOS biasanya ditulis dalam bahasa assembly atau mesin yang mana bahasa ini biasanya spesifik kepada suatu prosesor tertentu.
Istilah BIOS ini pertama kali muncul pada sistem operasi CP/M, sebagian dari dari CP/M diload ketika saat booting dan berhubungan dengan hardware. (Mesin CP/M biasanya memiliki boot loader sederhana di dalam ROM). Sebagian besar dari versi DOS memiliki suatu file yang bernama IBMBIO.COm atau IO.SYS yang bisa dikatakan sebagai analogi dari BIOS disk pada CP/M.
Bagaimana BIOS booting?
BIOS menjalankan flash memory onboard ketika komputer dinyalakan dan dia akan menginisialisasi chipset dan juga subsistem dari memori. Selanjutnya, dia akan mendekompres dirinya sendiri dari flash memory tadi untuk kemudian menuju ke memori utama dan mulai dieksekusi dari sana. Kode PC BIOS biasanya juga berisi semacam diagnosa untuk memastikan kondisi dari komponen hardware yang sifatnya penting, seperti misalnya keyboard, disk drive, I/O ports dan lain sebagainya. BIOS memastikan apakah alat-alat tersebut bisa berfungsi dengan baik dan diinisialisasi dengan benar. Hampir semua implementasi BIOS dapat mengeksekusi suatu program setup melalui CMOS memory. Memori ini menyimpan konfigurasi yang dapat diatur oleh user (seperti time, date dan juga informasi detail mengenai hardisk dan lain sebagainya) dan bisa diakses oleh BIOS.
Pada implementasi BIOS yang modern, seseorang dapat memilih apa yang dibooting pertama kali, seperti CD, hardisk, floppy disk, flash keydrive dan lain sebagainya. Ini sangat berguna ketika Anda ingin menginstall suatu sistem operasi atau juga melakukan booting dari CD-ROM. Bahkan Anda juga bisa melakukan booting dari media USB.
Beberapa sistem BIOS membolehkan user untuk memilih sistem operasi yang ingin diload (misalnya load OS lain dari hardisk yang berbeda dalam satu PC), meskipun cara ini sekarang lebih sering dihandle oleh fase berikutnya atau yang sering dikenal dengan tool boot loader.
BIOS sebagai suatu firmware
BIOS terkadang disebut sebagai firmware karena merupakan bagian integral dari suatu sistem hardware.Sebelum 1990, BIOS berada dalam chip ROM dan tidak bisa diubah. Seiring dengan semakin kompleksnya sistem dan juga kebutuhan akan “bisa diupgrade” maka sekarang BIOS firmware disimpan di dalam EEPROM atau flash memory device yang dapat dengan mudah diupgrade isinya oleh user. Sementara itu, kesalahan dalam proses upgrade dari BIOS akan menyebabkan sistem komputer tidak akan bisa diakses. Untuk mencegah BIOS corruption, maka beberapa motherboard yang baru memiliki backup BIOS (“Dual BIOS” boards). Meskipun demikian, banyak BIOS yang memiliki “boot block” dimana bagian ini adalah bagian dari ROM yang berjalan pada saat pertama kali dan tetap tidak bisa diupdate. Kode dalam boot block ini akan memastikan sisa BIOS block lainnya melalui prosedur checksum, hash dan lain sebagainya, sebelum loncat ke block tersebut. Jika boot block mendeteksi adanya kerusakan atau corruption, maka dia akan melakukan booting melalui floppy disk sehingga user dapat melakukan flashing lagi dengan image yang lebih bagus. Beberapa pembuat hardware seringkali mengeluarkan update BIOS untuk mengupdate dan upgrade produk mereka dan juga menghilangkan bug yang ada.
Firmware pada card adapter
Suatu sistem komputer dapat berisi beberapa chip BIOS. Sebagai tambahan dari boot BIOS yang fungsi utamanya untuk mengakses komponen fundamental dari komputer, maka plug-in adapter card seperti SCSI atau USB hardisk adapter atau network card dapat memiliki BIOS sendiri dan merupakan komplemen atau pengganti dari kode BIOS untuk komponen tersebut.
Untuk mencari ekspansi ROM memori yang sudah dimapping selama proses booting, implementasi BIOS dari PC menscan memori real dari alamat 0xC8000 sampai 0xF0000 dalam batas 2 kilobyte mencari suatu signature 0×55 0xaa, yang mana diikuti dengan suatu byte yang mengindikasikan sejumlah 512 byte block dari expansion memory yang menduduki memori real. BIOS kemudian loncat ke offset setelah size byte, dimana pada titik tersebut kode dari expansion ROM mengambil alih dan menggunakan service BIOS untuk memberikan user sebuah configuration interface, meregister interrupt vector yang digunakan oleh aplikasi setelah booting, atau menampilkan informasi diagnosa.
Pada sistem UNIX, ada suatu utility dimana Anda dapat melakukan dump terhadap software BIOS firmware. Anda bisa dapatkan pada alamat http://www.linuks.mine.nu/ree/
Spesifikasi BIOS boot
Jika expansion ROM ingin merubah cara dari suatu sistem melakukan booting (misalnya saja boot dari jaringan atau SCSI adapter dimana BIOS tidak memiliki drivernya), maka dia dapat menggunakan BIOS Boot Specification (BBS) API untuk meregisterkan kemampuan tambahannya. Sesaat setelah expansion ROM sudah teregister menggunakan BBS API, maka pengguna akan dapat memilih berbagai macam pilihan booting dari user interface BIOS. Hal ini yang menyebabkan mengapa kebanyakan implementasi BIOS yang compliant dengan BBS, tidak akan membolehkan pengguna untuk masuk ke dalam BIOS user interface sampai expansion ROM selesai dalam mengeksekusi dan meregister dirinya sendiri dengan API BBS.
Terima kasih.