1 Tinjau Ulang Sistem Komputer
Overview
Sebelum memulai mempelajari sistem operasi penting bagi kita untuk mengetahui komponen-komponen yang menjadi bagian dari sebuah sistem komputer disertai cara kerjanya. Hal ini disebabkan nantinya sistem operasi bekerja untuk mengatur komponen-komponen tersebut dan menyembunyikan kerumitannya bagi pengembang aplikasi dan para pengguna akhir sistem operasi.
Tujuan
1. 2.
1.1
Mahasiswa mengetahui komponen-komponen yang membangun sebuah sistem komputer. Mahasiswa mengetahui bagaimana komponen-komponen itu bekerja dan saling bekerja sama untuk memenuhi kebutuhan aplikasi dan pengguna akhir.
Pendahuluan
Sebuah sistem operasi memberikan segala layanan yang mengeksploitasi sumberdaya yang dibutuhkan satu atau lebih proses kepada pengguna. Sumberdaya tersebut berkaitan erat dengan sistem komputer. Hal ini dikarenakan sistem operasi mengatur komponen-komponen pendukung sistem komputer seperti memori, I/O modul ataupun I/O device dan komponen pembentuk lainnya sehingga terselenggaranya ekseskusi proses dan menyembunyikan kerumitan pengaturan perangkat keras dari pengguna dan pembuat aplikasi. Hal tersebut menyebabkan perlunya memahami
bagaimana sistem komputer bekerja untuk mengetahui bagaimana sistem operasi melaksanakan tugasnya.
1.2
Elemen Dasar Komputer
Pada level atas, sebuah komputer terdiri dari empat komponen. Komponenkomponen ini saling berinteraksi untuk menghasilkan fungsi dari tujuan sistem komputer yaitu eksekusi program atau komputasi. Keempat komponen atau elemen struktur utama yaitu: 1. Prosesor Prosesor berfungsi mengendalikan operasi komputer dan melakukan fungsi pemrosesan data. Prosesor terdiri dari: a. Aritmetic Logic Unit (ALU), bagian untuk komputasi yang berhubungan dengan aritmatika dan logika b. Control Unit (CU), sebagai pengendali utama operasi yang dilaksanakan. Register, berfungsi sebagai memori yang sangat cepat yang biasanya digunakan sebagai tempat operan-operan suatu operasi yang akan dilaksanakan. Register membantu pelaksanan operasi yang dilakukan oleh prosesor. 2. Memori Utama Memori berfungsi menyimpan data dan program. Memori utama biasanya volatile, yaitu tidak dapat mempertahankan data dan program yang disimpan begitu sumber daya energi listrik dihentikan 3. Modul I/O Modul I/O atau perangkat masukan/keluaran berfungsi memindahkan data antara komputer dan lingkungan eksternalnya. Lingkungan eksternal dapat diantarmuka/interface oleh beragam peralatan eksternal seperti: media penyimpan sekunder, peralatan komunikasi dan sebagainya. 4. Intekoneksi antar Komponen Interkoneksi dalam hal ini adalah struktur dan mekanisme yang diperlukan untuk menghubungkan antara ketiga komponen, yaitu: proses, memori utama dan peralatan input-output.
1.3
Prosesor
Prosesor berfungsi mengendalikan operasi komputer dan melakukan pemrosesan data. Prosesor mengambil instruksi yang dikodekan secara biner dari main memori, mendekode instruksi menjadi aksi-aksi sederhana dan melaksanakan aksi-aksi ini. Prosesor terdiri dari tiga komponen yaitu:
-
CU (Control unit), berfungsi mengendalikan operasi yang dilaksanakan. ALU (Arithmetic logic unit), berfungsi melaksanakan operasi aritmatika dan logika. Register, berfungsi sebagai memori yang sangat cepat yang biasanya digunakan sebagai tempat operan-operan suatu operasi yang akan dilaksanakan.
Operasi-operasi yang terdapat pada komputer terdiri dari tiga tipe, yaitu: Operasi aritmatika, seperti penambahan, pengurangan, dan sebagainya. - Operasi logika, seperti OR, AND, X-OR dan sebagainya. Operasi pengendalian, seperti operasi pencabangan, loncat, dan sebagainya -
1.4
Register
Di dalam prosesor terdapat sekumpulan register yang berfungsi sebagai memori yang sangat cepat dan kecil kapasitasnya. Register-register dikategorikan menjadi dua, yaitu: 1.
Register yang terlihat pemakai, terdiri dari dua jenis yaitu: Register data dan register alamat. Register untuk kendali dan status terdiri dari, Register untuk alamat dan buffer, register untuk eksekusi instruksi, dan register untuk informasi status. 1.4.1 Register Data Register dapat diberi nilai untuk beragam keperluan pemakai. Register data terdiri dari dua macam, yaitu: General purpose register dan Special purpose register. 1.4.2 Register Alamat Register ini berisi alamat data atau instruksi di memori utama atau berisi bagian alamat yang digunakan dalam penghitungan alamat lengkap. Contoh register ini antara lain: Register indeks, Register penunjuk segmen, Register penunjuk stack, dan Register penanda. 1.4.3 Register untuk Alamat dan Buffer Register untuk Alamat dan Buffer terdiri dari: -
MAR (Memory Address Register), digunakan untuk mencatat alamat memori yang akan diakses (read/write).
MBR (Memory Buffer Register), digunakan untuk menapung data yang akan dituliskan ke memori yang alamatnya ditunjuk oleh MAR. I/O AR (I/O Address Register), digunakan untuk menampung data yang akan dituliskan ke port yang alamatnya ditunjuk oleh I/O AR -
1.4.4
Register untuk Eksekusi Instruksi Register untuk Eksekusi Instruksi terdiri dari: -
PC (Program Counter), mencatat alamat memori dimana instruksi yang terdapat di dalamnya akan dieksekusi. IR (instruction Register), menampung instruksi yang akan dilaksanakan.
1.4.5
Register untuk Informasi Status Register ini dapat berupa satu register atau kumpulan register. Register atau kumpulan register ini disebut PSW (Program Status Word). PSW biasanya berisi kode-kode kondisi pemroses ditambah informasi-informasi status lainnya
1.5
Memori
Memori berfungsi untuk menyimpan data dan program. Berdasarkan kecepatan aksesnya dapat dibuat hirarki memori, sebagai berikut: Tercepat
Register Chace Memory Main Memory Disk Chace Magnetic Disk Terlambat Magnetic tape Optical disk Tabel 1-1 Hirarki memori berdasarkan kecepatan Setiap kali prosesor melakukan eksekusi, pemroses harus membaca instruksi dari memori utama. Agar eksekusi dapat dilakukan secara cepat maka harus diusahakan instruksi tersedia di memori pada hirarki berkecepatan akses lebih tinggi. Kecepatan eksekusi ini akan meningkatkan kinerja sistem. Untuk itu terdapat konsep memori dua level, yaitu ditampung dulu sementara di memori pada hirarki lebih tinggi.
Konsep ini diimplementasikan antara lain berupa: - Chace memory, memori berkapasitas terbatas, berkecepatan tinggi yang lebih mahal daripada memori utama. Chace memori ada di antara memori utama dan register pemroses, berfungsi agar pemroses tidak langsung mengacu memori utama agar kinerja dapat ditingkatkan. Buffering, bagian memori utama yang dialokasikan untuk menampung data yang akan ditransfer dari atau ke penyimpan sekunder. Buffering dapat mengurangi frekuensi pengaksesan ke perangkat penyimpan sekunder sehingga meningkatkan kinerja sistem
1.6
Modul I/O
Klasifikasi perangkat I/O berdasarkan aliran datanya dapat dibagi dua, antara lain: 1.
2.
Block Oriented Device, peralatan ini menyimpan informasi sebagai blok-blok berukuran tetap. Ciri utama peralatan ini adalah dimungkinkan membaca atau menulis blok-blok secara indenpenden dengan cara direct access. Contoh peralatan antara lain: disk, optical disk, tape dan sebagainya. Character Stream Oriented Device, peralatan ini mengantarkan atau menerima aliran karakter tanpa peduli dengan suatu struktur blok. Contoh peralatan ini antara lain: terminal, line printer, interface jaringan, dan lain-lain.
Terdapat tiga teknik cara berhubungan perangkat I/O yaitu: 1. Programmed I/O Pada saat perangkat I/O menangani permintaan perangkat menset bit status pada register status perangkat. Perangkat tidak memberitahu ke prosesor bila tugas telah selesai. Prosesor harus selalu melakukan cek secara periodik terhadap register status perangkat dan melakukan tindakan-tindakan berdasarkan status yang dibaca. 2. Interrupt Driven I/O Teknik I/O dikendalikan instruksi mempunyai mekanisme kerja perangkat I/O sebagai berikut: -
Prosesor memberi instruksi ke perangkat I/O lalu melanjutkan kerja yang lainnya. Perangkat I/O akan menginstruksi untuk minta layanan saat perangkat telah siap transfer data dengan prosesor
Saat menerima instruksi dari hardware (Hardware yang siap melakukan transfer data), prosesor kemudian segera eksekusi transfer data. Dengan ini prosesor tidak disibukkan menunggui dan menjaga perangkat I/O untuk memeriksa status perangkat. -
3. Direct Memory Access Interrupt Driven I/O lebih efisien dari programmed I/O, tapi masih memerlukan intervensi aktif prosesor untuk transfer data antara memori dan buffer I/O. I/O dikendalikan interupsi (Interrupt Driven I/O) mempunyai dua kelemahan yaitu: - Rate Transfer I/O dibatasi kecepatan menguji dan melayanan operasi peralatan. - Prosesor terikat ketat dalam mengelola transfer I/O, sejumlah instruksi harus dieksekusi untuk tiap transfer I/O. Ketika data besar dipindahkan teknik yang lebih efisien diperlukan agar tidak menyibukkan prosesor, sehingga prosesor dapat melakukan kerja lain. DMA berfungsi membebaskan prosesor menunggui transfer data perangkat I/O. Saat prosesor ingin baca/tulis data, prosesor memrintahkan DMA dengan mengirim informasi-informasi berikut: -
Read/write Alamat perangkat I/O Awal lokasi memori yang ditulis/dibaca Jumlah byte yang ditulis/dibaca
Setelah mengirim informasi ke DMA, prosesor dapat melakukan kerja lain. Prosesor mendelegasikan operasi I/O ke DMA. DMA mentransfer seluruh data yang diminta secara langsung dari memori tanpa melewati prosesor. Ketika transfer data selesai, DMA mengirim sinyal interupsi ke prosesor. Prosesor hanya dilibatkan pada awal dan akhir tranfer data perangkat I/O. Operasi transfer anatara perangkat dan memori utama dilakukan sepenuhnya oleh DMA. DMA yang menangani akses disk, dilakukan oleh DMA controller yang lepas dari prosesor dan hanya melakukan interupsi bila operasi telah diselesaikan.
1.7
Interkoneksi antar Komponen
Interkoneksi antar komponen disebut bus. Bus terdiri dari 3 macam, yaitu: - Address Bus, Bus yag mengirim alamat lokasi memori atau port yang ingin ditulis/dibaca. Jumlah lokasi memori yang dapat dialamati CPU ditentukan oleh jumlah jalur alamat.Jika CPU memilki N jalur alamat maka dapat secara langsung mengalamati 2N lokasi memori. - Data Bus, Bus data ini Bidirectional berarti dapat baca dan kirim dari/ke memori atau port. Bus data berhubungan dengan transfer ata pembacaan data dari/ke memori dengan peralatan-peralatan. Control Bus, Bus yang digunakan CPU dengan dikirimi sinyal untuk memerintahkan memori atau port I/O.
1.8
Eksekusi Instruksi
1.8.1 Mekanisme Eksekusi Tahap Pemrosesan instruksi berisi 2 tahap yaitu: a. b.
Fetch, Prosesor membaca instruksi dari memori Execute, Prosesor mengeksekusi instruksi
Eksekusi program berisi pengulangan proses fetch dan execute. Eksekusi instruksi (Tahap Execute) dapat melibatkan beberapa operasi lebih dasar dan bergantung pada sifat instruksi itu. Proses satu instruksi disebut satu siklus instruksi (instruction cycle). Siklus Eksekusi instruksi dpat dilihat pada gambar 1-1 START
Fetch Insruksi
Fetch Cycle
Eksekusi Instruksi
HALT
Execute Cycle
Gambar 1-1 Siklus Eksekusi instruksi
1.8.2 Mode Eksekusi Instruksi Prosesor mempunyai beragam mode eksekusi, biasanya dikaitkan dengan program Sistem Operasi dan program pemakai. Instruksi-instruksi tertentu hanya dapat dieksekusi dalam suatu mode yang berkewenangan lebih tinggi.
Mode dengan kewenangan rendah biasa disebut user mode karena program pemakai biasa dieksekusi dalam mode ini. Mode dengan kewenangan tinggi disebut system mode, control mode, supervisor mode atau kernel mode, karena biasanya rutin-rutin sistem atau kendali atau kernel dieksekusi dengan mode ini
Rangkuman
Sebuah sistem operasi memberikan segala layanan yang mengeksploitasi sumberdaya yang dibutuhkan satu atau lebih proses kepada pengguna. Sumberdaya tersebut berkaitan erat dengan sistem komputer. Hal ini dikarenakan sistem operasi mengatur komponen-komponen pendukung sistem komputer seperti memori, I/O modul ataupun I/O device dan komponen pembentuk lainnya sehingga terselenggaranya ekseskusi proses dan menyembunyikan kerumitan pengaturan perangkat keras dari pengguna dan pembuat aplikasi. sebuah komputer terdiri dari empat komponen. Komponenkomponen ini saling berinteraksi untuk menghasilkan fungsi dari tujuan sistem komputer yaitu eksekusi program atau komputasi. Keempat komponen atau elemen struktur utama yaitu prosesor, memori, modul I/O dan interkoneksi antar computer. Prosesor berfungsi mengendalikan operasi komputer dan melakukan pemrosesan data. Di dalam prosesor terdapat sekumpulan register yang berfungsi sebagai memori yang sangat cepat dan kecil kapasitasnya. Memori berfungsi untuk menyimpan data dan program. Maka dapat disimpulkan bahwa computer tidak dapat berdiri sendiri tetapi terdapat suatu bagian yang saling bergantung dan saling bekerja sama sehingga komputer akan berjalan dengan sebenarnya
Soal Latihan
1. 2. 3. 4. 5. 6. 7. 8.
Sebutkan dan jelaskan bagian dari computer Fungsi dari memori dan prosesor Apa perbedaan dari memori dan register Jelaskan Klasifikasi perangkat I/O berdasarkan aliran datanya Sebutkan dan jelaskan tiga teknik cara berhubungan perangkat I/O Fungsi dari DMA Gambarkan bagian utama dari computer yang terdiri dari empat komponen yang sangat penting bagi computer Sebutkan dan jelaskan tahap pemrosesan instruksi