Struktur Sistem Komputer
Tidak ada suatu ketentuan khusus tentang bagaimana seharusnya struktur sistem sebuah komputer. Setiap ahli dan desainer arsitektur komputer memiliki pandangannya masing-masing. Akan tetapi, untuk mempermudah kita memahami detail dari sistem operasi di bab-bab berikutnya, kita perlu memiliki pengetahuan umum tentang struktur sistem komputer.
Struktur Komputer
Struktur sebuah sistem komputer dapat dibagi menjadi:
- Sistem Operasi Komputer
- Struktur I/O
- Struktur Penyimpanan
- Storage Hierarchy
- Proteksi Perangkat Keras.
Sistem Operasi Komputer
Secara umum, sistem komputer terdiri atas CPU dan sejumlah device (perangkat) 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 (kemampuan mengerja-kan lebih dari satu tugas dalam waktu yang sama) 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.
Arsitektur Umum Komputer
Pada sistem komputer yang lebih maju, arsitekturnya lebih kompleks. Untuk meningkatkan performa, digunakan beberapa buah bus . Tiap bus merupakan jalur data antara beberapa device (alat) yang berbeda. Dengan cara ini RAM, Prosesor, GPU (Graphics Processing Unit) (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 (menjebatani). 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 .
Arsitektur PC Modern
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 bertipeEEPROM(Electrically Erasable Programmable Read Only Memory), yaitu memori non-volatile (tak terhapus jika power dimatikan) yang dapat ditulis dan dihapus dengan pulsa elektronik.
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 (perangkap) yaitu interrupt khusus yang dihasilkan oleh software karena adanya masalah atau permintaan terhadap layanan sistem operasi. Trap ini juga sering disebut sebagai exception (pengecualian). 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 alamat-alamat 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 (tumpukan) bersama-sama dengan informasi state (bagian) saat itu.
Secara umum sebuah sistem komputer terdiri atas :1. hardware
2. software
3. brainware
Ketiganya merupakan syarat mutlak untuk menjalankan sebuah sistem komputer.Ketiganya saling terkait satu sama lain (lihat gambar 3 di bawah ini).
Sistem Komputer
Sebuah sistem operasi merupakan program yang bertindak sebagai perantara antara pengguna (user) komputer dengan hardware (perangkat keras) komputer. Tujuan dari sistem operasi adalah untuk menyediakan lingkungan dimana user dapat mengeksekusi program yang diinginkan dengan efisien.
Sebuah sistem operasi sama halnya dengan sebuah pemerintahan. Komponen-komponen seperti hardware, software, dan data. Sistem operasi menyediakan kemudahan untuk menggunakan berbagai sumberdaya dalam sebuah operasi. Sama halnya dengan sebuah pemerintahan, sistem operasi tidak bekerja sendirian. Sistem operasi harus menyediakan sebuah lingkungan yang didalamnya terdapat berbagai program untuk menyelesaikan berbagai pekerjaan.
Sistem operasi dapat dipandang sebagai pengontrol sumberdaya yang ada. Sebuah sistem komputer memiliki berbagai sumberdaya (hardware dan software) yang dibutuhkan untuk menyelesaikan berbagai masalah: CPU time, ruang memori, ruang penyimpanan file, perangkat I/O (input/output), dan lain sebagainya.
Sistem operasi bertindak sebagai manajer bagi semua sumberdaya ini dan mengalokasikannya pada program dan user tertentu untuk melakukan berbagai tugas (task). Dengan demikian ada peluang terjadinya konflik permintaan sumberdaya, sistem operasi harus mengambil keputusan, request (permintaan) sumberdaya mana yang harus dilayani untuk menjaga efisiensi operasi komputer.
Pandangan lain terhadap sebuah sistem operasi terfokus pada kebutuhan pengendalian (control) program. Control program mengendalikan eksekusi program user untuk mencegah error dan penggunaan yang tidak efisien, khususnya pengoperasian dan pengendalian perangkat I/O.
Tujuan utama sebuah sistem operasi adalah untuk kenyamanan user. Sistem operasi ada untuk lebih memudahkan user mengoperasikan komputer dibanding tanpa sistem operasi. Tujuan lainnya adalah untuk mengefisienkan operasi sistem komputer.
Struktur I/O
Setelah proses I/O dimulai, kendali akan kembali ke user program saat proses I/O selesai (Synchronous).Instruksi wait menyebabkan CPU idle sampai interrupt berikutnya. Akan terjadi Wait loop (untuk menunggu akses berikutnya).Paling banyak satu proses I/O yang berjalan dalam satu waktu.
System call permintaan pada sistem operasi untuk mengizinkan user menunggu sampai I/O selesai.Device-status table mengandung data masukkan untuk tiap I/O device (perangkat) yang menjelaskan tipe, alamat, dan keadaannya.Sistem operasi memeriksa I/O device untuk mengetahui keadaan device dan mengubah tabel untuk memasukkan interrupt.Jika I/O device mengirim/mengambil data ke/dari memory hal ini dikenal dengan nama (Direct Memory Access) DMA.
Direct Memory Access
Digunakan untuk I/O device yang dapat memindahkan data dengan kecepatan tinggi (mendekati frekuensi bus memori). Device controller memindahkan data dalam blok-blok dari buffer (penyangga) langsung ke memory utama atau sebaliknya tanpa campur tangan prosesor. Interrupt hanya terjadi tiap blok bukan tiap word atau byte data. Seluruh proses DMA dikendalikan oleh sebuah controller bernama DMA Controller (DMAC).
DMA Controller mengirimkan atau menerima signal dari memori dan I/O device. Prosesor hanya mengirimkan alamat awal data, tujuan data, panjang data ke DMA Controller .Interrupt pada prosesor hanya terjadi saat proses transfer selesai. Hak terhadap penggunaan bus memory yang diperlukan DMA controller didapatkan dengan bantuan bus arbiter yang dalam PC sekarang berupa chipset Northbridge .
Metode arbitrasi adalah metode pengaturan dari penggunaan bus, dan dapat dibedakan atas :1. Tersentralisasi : menggunakan arbiter sebagai pengatur sentral.
2. Terdistribusi : setiap bus memiliki access control logic.
Bus
Suatu jalur transfer data yang menghubungkan setiap device pada komputer. Hanya ada satu buah device yang boleh mengirimkan data melewati sebuah bus, akan tetapi boleh lebih dari satu device yang membaca data bus tersebut.
Terdiri dari dua buah model :- Synchronous bus
- Asynchronous bus
Synchronous bus di mana digunakan dengan bantuan clock tetapi berkecepatan tinggi, tapi hanya untuk device berkecepatan tinggi juga;
Asynchronous bus digunakan dengan sistem handshake (handshaking itu mgkin sprti remote assistance ) tetapi berkecepatan rendah, dapat digunakan untuk berbagai macam device .
Struktur Storage
Hal penting yang perlu diingat adalah program adalah bagian dari data.
Tempat penyimpanan data antara lain :- Register
- Cache Memory
- Random Access Memory (RAM) - Main Memory
- Extension Memory
Register
Tempat penyimpanan beberapa buah data volatile yang akan diolah langsung di prosesor yang berkecepatan sangat tinggi. Register ini berada di dalam prosesor dengan jumlah yang sangat terbatas karena fungsinya sebagai tempat perhitungan/komputasi data.
Cache Memory
Tempat penyimpanan sementara ( volatile ) sejumlah kecil data untuk meningkatkan kecepatan pengambilan atau penyimpanan data di memori oleh prosesor yang berkecepatan tinggi.
Dahulu cache disimpan di luar prosesor dan dapat ditambahkan. Misalnya pipeline burst cache yang biasa ada di komputer awal tahun 90-an. Akan tetapi seiring menurunnya biaya produksi die atau wafer dan untuk meningkatkan kinerja, cache ditanamkan di prosesor. Memori ini biasanya dibuat berdasarkan desain static memory.
Random Access Memory (RAM) - Main Memory
Tempat penyimpanan sementara sejumlah data volatile yang dapat diakses langsung oleh prosesor. Pengertian langsung di sini berarti prosesor dapat mengetahui alamat data yang ada di memori secara langsung. Sekarang, RAM dapat diperoleh dengan harga yang cukup murah dangan kinerja yang bahkan dapat melewati cache pada komputer yang lebih lama.
Extension Memory
Tambahan memory yang digunakan untuk membantu proses-proses dalam komputer, biasanya berupa buffer. Peranan tambahan memori ini sering dilupakan akan tetapi sangat penting artinya untuk efisiensi.
Biasanya tambahan memori ini memberi gambaran kasar kemampuan dari perangkat tersebut, sebagai contoh misalnya jumlah VGA memory, soundcard memory.
Secondary Storage
Media penyimpanan data yang non-volatile yang dapat berupa Flash Drive, Optical Disc, Magnetic Disk, Magnetic Tape. Media ini biasanya daya tampungnya cukup besar dengan harga yang relatif murah. Portability-nya juga relatif lebih tinggi.
Hirarki Storage
- Dasar susunan sistem storage adalah kecepatan, biaya, sifat volatilitas.
- Caching menyalin informasi ke storage media yang lebih cepat;
- Main memory dapat dilihat sebagai cache terakhir untuk secondary storage.
- Menggunakan memory berkecepatan tinggi untuk memegang data yang diakses terakhir.
- Dibutuhkan cache management policy.
- Cache juga memperkenalkan tingkat lain di hirarki storage.
- Hal ini memerlukan data untuk disimpan bersama-sama di lebih dari satu level agar tetap konsisten.
Proteksi Perangkat Keras
Dual Mode Operation
Membagi sumber daya sistem yang memerlukan sistem operasi untuk menjamin bahwa program yang salah tidak menyebabkan program lain berjalan salah juga.
Menyediakan dukungan hardware untuk membedakan minimal dua mode operasi yaitu:- User Mode - Eksekusi dikendalikan oleh user;
- Monitor/Kernel/System Mode - Eksekusi dikendalikan oleh sistem operasi.
Instruksi tertentu hanya berjalan di mode ini (Privileged Instruction). Ditambahkan sebuah bit penanda operasi. Jika terjadi interrupt, maka hardware berpindah ke monitor mode.
I/O Protection
Semua instruksi I/O umumnya Privileged Instruction (kecuali pada DOS, dan program tertentu). Harus menjamin user program tidak dapat mengambil alih kontrol komputer di monitor mode.
Memory Protection
Harus menyediakan perlindungan terhadap memori minimal untuk interrupt vector dan interrupt service routine . Ditambahkan dua register yang menentukan di mana alamat legal sebuah program boleh mengakses, yaitu :
- Base register- Limit register
Base register untuk menyimpan alamat awal yang legal. Limit register untuk menyimpan ukuran memori yang boleh diakses Memori di luar jangkauan dilindungi.
CPU Protection
Timer melakukan interrupt setelah perioda waktu tertentu untuk menjamin kontrol sistem operasi. Timer diturunkan setiap clock. Ketika timer mencapai nol, sebuah Interrupt terjadi. Timer biasanya digunakan untuk mengimplementasikan pembagian waktu. Timer dapat juga digunakan untuk menghitung waktu sekarang walaupun fungsinya sekarang ini sudah digantikan Real Time Clock (RTC). System Clock Timer terpisah dari Pencacah Waktu). Timer sekarang secara hardware lebih dikenal sebagai System Timer/ CPU Timer. Load Timer juga Privileged Instruction .
Proteksi memory
Sebagai contoh sebuah pengguna dibatasi mempunyai base register 300040 dan mempunyai limit register 120900 maka pengguna hanya diperbolehkan menggunakan alamat memori fisik antara 300040 hingga 420940 saja.Display=tampilan
Driver=sopir
Chace= chace adalah tempat menyembunyikan atau tempat menyimpan sementara.
Sumber : ozhora97.blogspot.co.id