ANALISIS MANAJEMEN OPERATING SISTEM
Analisis manajemen operating sistem
merupakan pembagian bidang-bidang kerja pada sebuah PC yang nantinya akan
memperjelas jalannya perintah yang dimasukan. Sistem Operasi sendiri memiliki 4
komponen utama yang akan dipadukan dengan spesifikasi PC itu sendiri. Manajemen
Operating Sistem antara lain :
Manajemen
Proses
Proses merupakan konsep pokok di
sistem operasi. Terdapat beragam definisi proses diantaranya:
- Proses adalah program yang
sedang dieksekusi.
- Proses merupakan unit kerja
terkecil yang secara individual memiliki sumber daya-sumber daya dan
dijadwalkan oleh sistem operasi
Sebuah proses membutuhkan
beberapa sumber daya untuk menyelesaikan tugasnya. Sumber daya tersebut dapat
berupa CPU time, memori, berkas – berkas, dan perangkat-perangkat I/O.
Sistem operasi menegelola semua proses di sistem dan mengalokasikan sumber
daya ke proses-proses sesuai kebijaksanaan untuk memenuhi sasaran sistem.
Sistem operasi mengalokasikan sumber daya-sumber daya tersebut saat proses itu
diciptakan atau sedang diproses/dijalankan. Ketika proses tersebut berhenti
dijalankan, sistem operasi akan mendapatkan kembali semua sumber daya yang bisa
digunakan kembali.
Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen proses seperti:
Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen proses seperti:
- Menciptakan dan menghapus
proses.
- Menunda atau melanjutkan
proses.
- Menyediakan mekanisme untuk
proses sinkronisasi.
- Menyediakan mekanisme untuk
proses komunikasi.
- Menyediakan mekanisme untuk
penanganan deadlock.
Bagaimana proses direpresentasikan & dikendalikan oleh SO.
– Status proses (process state) yang mencirikan perilaku dari proses.
– Struktur data yang digunakan untuk mengelola (manage) proses.
– Cara SO menggunakan struktur data ini untuk mengendalikan eksekusi proses.
– Contoh: pengelolaan proses pada UNIX SVR4.
Syarat Sistem Operasi
• Tugas Fundamental: Manajemen Proses
• Sistem Operasi harus
– Mengeksekusi banyak proses secara bergantian
– Mengalokasikan sumber daya (resource) bagi proses & melindungi resource setiap proses dari proses lain,
– Membolehkan proses untuk berbagi (share) & bertukar informasi,
– Memungkinkan sinkronisasi antar proses.
Konsep
• Dari awal kuliah, diketahui:
– Platform komputer terdiri dari himpunan sumber daya hardware
– Aplikasi komputer dikembangkan untuk mengerjakan beberapa tugas
– Sangat tidak efisien menulis aplikasi yang secara langsung ditujukan untuk platform hardware tertentu
– SO menyediakan suatu interface untuk digunakan oleh aplikasi
– SO menyediakan suatu representasi sumber daya yang dapat direquest & diakses oleh aplikasi.
SO Mengatur Eksekusi
• Sumber daya dibuat tersedia untuk banyak aplikasi
• Processor di-switch antar banyak aplikasi
• Processor & perangkat I/O dapat digunakan secara efisien
pengertian Proses
• Suatu program dalam (yang sedang di) eksekusi
• Instance dari program yang berjalan pada suatu komputer
• Entitas yang dapat dilewatkan ke & dieksekusi pada suatu processor
• Suatu unit aktifitas yang dicirikan oleh eksekusi serangkaian instruksi, current state (status terkini) & himpunan instruksi sistem terkait (associated).
Elemen Proses (1)
• Suatu proses tersusun dari:
– Kode program (mungkin di-share)
– Sekumpulan data
– Sejumlah atribut yang mendeskripsikan status dari proses tersebut
elemen proses 2
• Selama proses berjalan, ia mempunyai sejumlah elemen, mencakup
– Identifier
– State
– Priority
– Program counter
– Memory pointers
– Context data
– I/O status information
– Accounting information
Process Control Block (PCB)
• Berisi elemen-elemen proses
• Dibuat dan dikelola oleh sistem operasi
•Memberikan dukungan bagi banyak proses
– Status proses (process state) yang mencirikan perilaku dari proses.
– Struktur data yang digunakan untuk mengelola (manage) proses.
– Cara SO menggunakan struktur data ini untuk mengendalikan eksekusi proses.
– Contoh: pengelolaan proses pada UNIX SVR4.
Syarat Sistem Operasi
• Tugas Fundamental: Manajemen Proses
• Sistem Operasi harus
– Mengeksekusi banyak proses secara bergantian
– Mengalokasikan sumber daya (resource) bagi proses & melindungi resource setiap proses dari proses lain,
– Membolehkan proses untuk berbagi (share) & bertukar informasi,
– Memungkinkan sinkronisasi antar proses.
Konsep
• Dari awal kuliah, diketahui:
– Platform komputer terdiri dari himpunan sumber daya hardware
– Aplikasi komputer dikembangkan untuk mengerjakan beberapa tugas
– Sangat tidak efisien menulis aplikasi yang secara langsung ditujukan untuk platform hardware tertentu
– SO menyediakan suatu interface untuk digunakan oleh aplikasi
– SO menyediakan suatu representasi sumber daya yang dapat direquest & diakses oleh aplikasi.
SO Mengatur Eksekusi
• Sumber daya dibuat tersedia untuk banyak aplikasi
• Processor di-switch antar banyak aplikasi
• Processor & perangkat I/O dapat digunakan secara efisien
pengertian Proses
• Suatu program dalam (yang sedang di) eksekusi
• Instance dari program yang berjalan pada suatu komputer
• Entitas yang dapat dilewatkan ke & dieksekusi pada suatu processor
• Suatu unit aktifitas yang dicirikan oleh eksekusi serangkaian instruksi, current state (status terkini) & himpunan instruksi sistem terkait (associated).
Elemen Proses (1)
• Suatu proses tersusun dari:
– Kode program (mungkin di-share)
– Sekumpulan data
– Sejumlah atribut yang mendeskripsikan status dari proses tersebut
elemen proses 2
• Selama proses berjalan, ia mempunyai sejumlah elemen, mencakup
– Identifier
– State
– Priority
– Program counter
– Memory pointers
– Context data
– I/O status information
– Accounting information
Process Control Block (PCB)
• Berisi elemen-elemen proses
• Dibuat dan dikelola oleh sistem operasi
•Memberikan dukungan bagi banyak proses
Trace dari Proses
• Perilaku dari suatu proses diperlihatkan oleh listing deretan instruksi yang dieksekusi
• List ini dinamakan Trace
• Dispatcher merupakan suatu program kecil yang men-switch processor dari satu proses ke proses lainnya
Eksekusi Proses
• Anggap ada 3 proses yang akan dieksekusi
• Semuanya ada di memory (ditambah dispatcher)
• Sementara, abaikan memory virtual.
• Perilaku dari suatu proses diperlihatkan oleh listing deretan instruksi yang dieksekusi
• List ini dinamakan Trace
• Dispatcher merupakan suatu program kecil yang men-switch processor dari satu proses ke proses lainnya
Eksekusi Proses
• Anggap ada 3 proses yang akan dieksekusi
• Semuanya ada di memory (ditambah dispatcher)
• Sementara, abaikan memory virtual.
Trace: Sudut Pandang Proses
• Setiap proses berjalan menuju selesai
Trace: Sudut Pandang Processor
Model Proses Dua Status
• Proses dapat berada pada salah satu dari dua status
– Berjalan (running)
– Not-running
Dan seterusnya … proses dipindahkan oleh dispatcher dari SO ke CPU kemudian kembali ke antrian (Queue) sampai tugas tersebut selesai (lengkap)
Lahir & Matinya Proses
Pembuatan
- Kerja batch baru
- Login interaktif
- Dibuat oleh SO untuk menyediakan layanan
- Ditelurkan oleh proses existing
Penghentian
- Selesai normal
- Memory unavailable
- Error proteksi
- Intervensi Operator atau SO
PEMBUATAN PROSES
• SO membangun suatu struktur data untuk mengelola proses tersebut
• Biasanya, semua proses dibuat oleh SO
– Tetapi SO juga membolehkan proses yang sedang berjalan membuat proses lain
• Aksi ini disebut process spawning
– Proses induk (parent) adalah original, membuat proses anak, ia juga proses
– Proses anak (child) merupakan proses baru
penghentian Proses
• Harus ada cara yang dapat menandakan bahwa suatu proses selesai.
• Indikasi ini dapat berupa:
– Instruksi HALT membangkitkan suatu interupsi alert untuk SO
– Aksi pengguna (seperti log off & keluar dari suatu aplikasi)
– Suatu kesalahan atau error
– Dihentikan oleh proses induk
model lima status
Lahir & Matinya Proses
Pembuatan
- Kerja batch baru
- Login interaktif
- Dibuat oleh SO untuk menyediakan layanan
- Ditelurkan oleh proses existing
Penghentian
- Selesai normal
- Memory unavailable
- Error proteksi
- Intervensi Operator atau SO
PEMBUATAN PROSES
• SO membangun suatu struktur data untuk mengelola proses tersebut
• Biasanya, semua proses dibuat oleh SO
– Tetapi SO juga membolehkan proses yang sedang berjalan membuat proses lain
• Aksi ini disebut process spawning
– Proses induk (parent) adalah original, membuat proses anak, ia juga proses
– Proses anak (child) merupakan proses baru
penghentian Proses
• Harus ada cara yang dapat menandakan bahwa suatu proses selesai.
• Indikasi ini dapat berupa:
– Instruksi HALT membangkitkan suatu interupsi alert untuk SO
– Aksi pengguna (seperti log off & keluar dari suatu aplikasi)
– Suatu kesalahan atau error
– Dihentikan oleh proses induk
model lima status
proses lima status
1. New : Proses baru yg belum diload ke memori utama
2.Ready : Proses yang siap utk dieksekusi
3.Blocked : Proses yg tidak dpt dieksekusi sampai suatu kejadian muncul
4. Running : Proses yg dieksekusi
5. Exit : Proses yg selesai dieksekusi
Menggunakan dua antrian
menggunakan banyak antrian
Proses di suspend
• Processor lebih cepat daripada I/O sehingga semua proses dapat menunggu I/O
– Swap proses demikian ke disk untuk membebaskan lebih banyak memory & menugaskan processor pada lebih banyak proses
• Status Blocked berubah menjadi Suspend ketika proses dialihkan ke disk
• Muncul dua status baru:
– Blocked/Suspend
– Ready/Suspend
Satu status suspend
• Processor lebih cepat daripada I/O sehingga semua proses dapat menunggu I/O
– Swap proses demikian ke disk untuk membebaskan lebih banyak memory & menugaskan processor pada lebih banyak proses
• Status Blocked berubah menjadi Suspend ketika proses dialihkan ke disk
• Muncul dua status baru:
– Blocked/Suspend
– Ready/Suspend
Satu status suspend
Alasan Suspensi Proses
- Swapping : SO harus membebaskan cukup main memory agar suatu proses siap eksekusi.
- Ada Masalah: SO mengira proses menyebabkan suatu masalah.
- Permintaan Pemakai: Misalnya, debugging atau berhubungan dengan pemanfaatan sumber daya.
- Timing: Proses dapat dieksekusi secara periodik (misal, sistem monitoring sistem atau accounting) & boleh di-suspend selama menunggu waktu berikutnya.
- Request Proses Induk : Proses induk berkeinginan men-suspend eksekusi dari suatu turunan untuk menguji atau mengubah proses turunan tersebut atau mengkoordinasikan aktifitas dari berbagai keturunannya.
Proses dan sumber daya
- Swapping : SO harus membebaskan cukup main memory agar suatu proses siap eksekusi.
- Ada Masalah: SO mengira proses menyebabkan suatu masalah.
- Permintaan Pemakai: Misalnya, debugging atau berhubungan dengan pemanfaatan sumber daya.
- Timing: Proses dapat dieksekusi secara periodik (misal, sistem monitoring sistem atau accounting) & boleh di-suspend selama menunggu waktu berikutnya.
- Request Proses Induk : Proses induk berkeinginan men-suspend eksekusi dari suatu turunan untuk menguji atau mengubah proses turunan tersebut atau mengkoordinasikan aktifitas dari berbagai keturunannya.
Proses dan sumber daya
Struktur Kontrol SO
• SO bertanggungjawab mengelola proses & sumber daya sehingga harus mempunyai informasi tentang status terkini (current) dari setiap proses dan sumber daya.
• Tabel (informasi) dibangun untuk setiap entitas yang dikelola sistem operasi
Tabel kontrol SO
• SO bertanggungjawab mengelola proses & sumber daya sehingga harus mempunyai informasi tentang status terkini (current) dari setiap proses dan sumber daya.
• Tabel (informasi) dibangun untuk setiap entitas yang dikelola sistem operasi
Tabel kontrol SO
Tabel memory
• Tabel memory digunakan untuk menjaga track dari memory utama dan sekunder.
• Harus menyertakan informasi ini:
– Alokasi dari main memory kepada proses
– Alokasi dari secondary memory untuk proses
– Atribut proteksi untuk akses dari region memory yang dishare
– Informasi yang diperlukan untuk mengelola virtual memory
• Tabel memory digunakan untuk menjaga track dari memory utama dan sekunder.
• Harus menyertakan informasi ini:
– Alokasi dari main memory kepada proses
– Alokasi dari secondary memory untuk proses
– Atribut proteksi untuk akses dari region memory yang dishare
– Informasi yang diperlukan untuk mengelola virtual memory
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 .
Komponen Sistem Operasi untuk sistem I/O :
Komponen Sistem Operasi untuk sistem I/O :
- Buffer :
menampung sementara data dari/ ke perangkat I/O .
- Spooling: melakukan
penjadwalan pemakaian I/O sistem supaya lebih efisien (antrian
dsb.).
- Menyediakan driver:
untuk dapat melakukan operasi “rinci” (detail) untuk perangkat keras I/O
tertentu.
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:
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.
terluas karena beragamnya peralatan dan begitu banyaknya aplikasi dari peralatanperalatan
itu.
Manajemen I/O mempunyai fungsi, di antaranya:
- Mengirim perintah ke perangkat I/O agar menyediakan layanan.
- Menangani interupsi peralatan I/O
- Menangani kesalahan pada peralatan I/O
- Memberi interface ke pemakai.
Berdasarkan sasaran komunikasi, klasifikasi perangkat I/O dibagi menjadi:
a. Peralatan yang terbaca oleh manusia (Human Readable Machine)
Yaitu, peralatan yang cocok untuk komunikasi dengan user. Contohnya, Video
Display Terminal (VDT) yang terdiri dari layar, keyboard, dan mouse.
b. Peralatan yang terbaca oleh mesin (Machine Readable Machine)
Yaitu peralatan yang cocok untuk komunikasi dengan peralatan elektronik.
Contohnya disk dan tape, sensor, controller.
c. Komunikasi
Yaitu, peralatan yang cocok untuk komunikasi dengan peralatan-peralatan jarak
jauh. Contohnya modem.
Terdapat perbedaan-perbedaan besar antarkelas peralatan tersebut. Bahkan untuk
satu kelas saja terdapat berbedaan sangat besar. Perbedaan-perbedaan pokok antara
lain mengenai:
- Data rate
- Aplikasi
- Kompleksitas pengendalian
- Unit yang ditransfer
- Representasi data
- Kondisi-kondisi kesalahan
· A. Keberagaman yang sangat besar
pada peralatan I/O membuat pendekatan seragam dan
konsisten terhadap I/O baik dari pandangan sistem operasi maupun proses sangat sulit
diperoleh.
Klasifikasi lain yang dapat dilakukan terhadap peralatan I/O adalah berdasarkan unit
transfer yang dilakukan perangkat I/O, yaitu sbb:
1. Perangkat berorientasi blok (block-oriented devices)
Peralatan mentransfer dari dan ke peralatan dengan satuan transfer adalah
satu blok (sekumpulan karakter) yant telah ditentukan.
2. Perangkat berorientasi aliran karakter (character-oriented devices)
Peralatan mentransfer dari dan ke peralatan berupa aliran karakter.
B. Teknik Pengoperasian Perangkat I/O.
Teknik Pengoperasian Perangkat I/O meliputi:
a. Perangkat I/O terprogram (programmed I/O)
Merupakan perangkat I/O komputer yang dikontrol oleh program. Contohnya,
perintah mesin in, out, move.
Perangkat I/O terprogram tidak sesuai, untuk pengalihan data dengan kecepatan tinggi
karena dua alasan yaitu:
1. Memerlukan overhead (ongkos) yang tinggi, karena beberapa perintah program
harus dieksekusi untuk setiap kata data yang dialihkan antara peralatan
eksternal dengan memori utama.
2. Banyak peralatan periferal kecepatan tinggi memiliki mode operasi sinkron,
yaitu pengalihan data dikontrol oleh clock frekuensi tetap, tidak tergantung
CPU.
konsisten terhadap I/O baik dari pandangan sistem operasi maupun proses sangat sulit
diperoleh.
Klasifikasi lain yang dapat dilakukan terhadap peralatan I/O adalah berdasarkan unit
transfer yang dilakukan perangkat I/O, yaitu sbb:
1. Perangkat berorientasi blok (block-oriented devices)
Peralatan mentransfer dari dan ke peralatan dengan satuan transfer adalah
satu blok (sekumpulan karakter) yant telah ditentukan.
2. Perangkat berorientasi aliran karakter (character-oriented devices)
Peralatan mentransfer dari dan ke peralatan berupa aliran karakter.
B. Teknik Pengoperasian Perangkat I/O.
Teknik Pengoperasian Perangkat I/O meliputi:
a. Perangkat I/O terprogram (programmed I/O)
Merupakan perangkat I/O komputer yang dikontrol oleh program. Contohnya,
perintah mesin in, out, move.
Perangkat I/O terprogram tidak sesuai, untuk pengalihan data dengan kecepatan tinggi
karena dua alasan yaitu:
1. Memerlukan overhead (ongkos) yang tinggi, karena beberapa perintah program
harus dieksekusi untuk setiap kata data yang dialihkan antara peralatan
eksternal dengan memori utama.
2. Banyak peralatan periferal kecepatan tinggi memiliki mode operasi sinkron,
yaitu pengalihan data dikontrol oleh clock frekuensi tetap, tidak tergantung
CPU.
· B. Perangkat berkendalikan
interupsi (Interrupt I/O)
Interupsi lebih dari sebuah mekanisme sederhana untuk mengkoordinasi
pengalihan I/O. Konsep interupsi berguna di dalam sistem operasi dan pada
banyak aplikasi kontrol di mana pemrosesan rutin tertentu harus diatur dengan
seksama, relatif peristiwa-peristiwa eksternal.
c. DMA (Direct Memory Address)
Merupakan suatu pendekatan alternatif yang digunakan sebagai unit
pengaturan khusus yang disediakan untuk memungkinkan pengalihan blok data
secara langsung antara peralatan eksternal dan memori utama tanpa intervensi
terus menerus oleh CPU.
Evolusi telah terjadi pada sistem komputer. Evolusi antara lain terjadi
peningkatan kompleksitas dan kecanggihan komponen-komponen sistem
komputer. Evolusi sangat tampak pada fungsi-fungsi I/O, yaitu sbb:
1. pemroses secara langsung mengendalikan peralatan I/O. Teknik ini masih
dilakukan sampai saat ini, yaitu untuk peralatan sederhana yang
dikendalikan mikroprosesor untuk menjadi intelligent device.
2. Peralatan dilengkapi pengendali I/O (I/O controller). Pemroses masih
menggunakan I/O terprogram tanpa interupsi. Pada tahap ini, pemroses tak
perlu memperhatikan rincian-rincian spesifik interface peralatan.
3. Tahap ini sama dengan tahap 2 ditambah fasilitas interupsi. Pemroses tidak
perlu menghabiskan waktu untuk menunggu selesainya operasi I/O. Teknik
ini meningkatkan efisiensi pemroses.
4. Pengendali I/O diberi kendali memori langsung lewat DMA. Pengendali dapat
memindahkan blok data ke atau dari memori tanpa melibatkan pemroses
kecuali di awal dan akhir transfer.
5. Pengendali I/O ditingkatkan menjadi pemroses yang terpisah dengan
instruksi-instruksi khusus yang ditujukan untuk operasi I/O. Pemroses pusat
mengendalikan/memerintahkan pemroses I/O untuk mengeksekusi program
I/O yang terdapat di memori utama.
Pemroses I/O mengambil dan mengeksekusi instruksi-instruksi ini tanpa
intervensi pemroses utama (pusat). Dengan teknik ini dimungkinkan
pemroses pusat menspesifikasikan barisan aktivitas I/O dan hanya
diinterupsi ketika seluruh barisan telah diselesaikan.
6. Pengendali I/O mempunyai memori lokal yang menjadi miliknya dan
komputer juga memiliki memori sendiri. Dengan arsitektur ini, sekumpulan
besar peralatan I/O dapat dikendalikan dengan keterlibatan pemroses
pusat yang minimum.
Arsitektur ini digunakan untuk pengendalian komunikasi dengan terminalterminal
interaksi. Pemroses I/O mengambil alih kebanyakan tugas yang
melibatkan pengendalian terminal.
Evolusi berlangsung terus, jalur yang dilalui oleh evolusi adalah agar fungsifungsi
I/O dapat dilakukan lebih banyak dan lebih banyak lagi tanpa
keterlibatan pemroses pusat. Pemroses pusat yang tidak disibukkan dengan
tugas-tugas yang berhubungan dengan I/O akan meningkatkan kinerja sistem.
Tahap 5 & 6 merupakan tahap perubahan utama, yaitu konsep pengendali I/O
mampu mengeksekusi program sendiri.
Interupsi lebih dari sebuah mekanisme sederhana untuk mengkoordinasi
pengalihan I/O. Konsep interupsi berguna di dalam sistem operasi dan pada
banyak aplikasi kontrol di mana pemrosesan rutin tertentu harus diatur dengan
seksama, relatif peristiwa-peristiwa eksternal.
c. DMA (Direct Memory Address)
Merupakan suatu pendekatan alternatif yang digunakan sebagai unit
pengaturan khusus yang disediakan untuk memungkinkan pengalihan blok data
secara langsung antara peralatan eksternal dan memori utama tanpa intervensi
terus menerus oleh CPU.
Evolusi telah terjadi pada sistem komputer. Evolusi antara lain terjadi
peningkatan kompleksitas dan kecanggihan komponen-komponen sistem
komputer. Evolusi sangat tampak pada fungsi-fungsi I/O, yaitu sbb:
1. pemroses secara langsung mengendalikan peralatan I/O. Teknik ini masih
dilakukan sampai saat ini, yaitu untuk peralatan sederhana yang
dikendalikan mikroprosesor untuk menjadi intelligent device.
2. Peralatan dilengkapi pengendali I/O (I/O controller). Pemroses masih
menggunakan I/O terprogram tanpa interupsi. Pada tahap ini, pemroses tak
perlu memperhatikan rincian-rincian spesifik interface peralatan.
3. Tahap ini sama dengan tahap 2 ditambah fasilitas interupsi. Pemroses tidak
perlu menghabiskan waktu untuk menunggu selesainya operasi I/O. Teknik
ini meningkatkan efisiensi pemroses.
4. Pengendali I/O diberi kendali memori langsung lewat DMA. Pengendali dapat
memindahkan blok data ke atau dari memori tanpa melibatkan pemroses
kecuali di awal dan akhir transfer.
5. Pengendali I/O ditingkatkan menjadi pemroses yang terpisah dengan
instruksi-instruksi khusus yang ditujukan untuk operasi I/O. Pemroses pusat
mengendalikan/memerintahkan pemroses I/O untuk mengeksekusi program
I/O yang terdapat di memori utama.
Pemroses I/O mengambil dan mengeksekusi instruksi-instruksi ini tanpa
intervensi pemroses utama (pusat). Dengan teknik ini dimungkinkan
pemroses pusat menspesifikasikan barisan aktivitas I/O dan hanya
diinterupsi ketika seluruh barisan telah diselesaikan.
6. Pengendali I/O mempunyai memori lokal yang menjadi miliknya dan
komputer juga memiliki memori sendiri. Dengan arsitektur ini, sekumpulan
besar peralatan I/O dapat dikendalikan dengan keterlibatan pemroses
pusat yang minimum.
Arsitektur ini digunakan untuk pengendalian komunikasi dengan terminalterminal
interaksi. Pemroses I/O mengambil alih kebanyakan tugas yang
melibatkan pengendalian terminal.
Evolusi berlangsung terus, jalur yang dilalui oleh evolusi adalah agar fungsifungsi
I/O dapat dilakukan lebih banyak dan lebih banyak lagi tanpa
keterlibatan pemroses pusat. Pemroses pusat yang tidak disibukkan dengan
tugas-tugas yang berhubungan dengan I/O akan meningkatkan kinerja sistem.
Tahap 5 & 6 merupakan tahap perubahan utama, yaitu konsep pengendali I/O
mampu mengeksekusi program sendiri.
·
C. Prinsip-Prinsip Perangkat
I/O
Terdapat dua sasaran perancangan perangkat I/O, yaitu:
a. Efisiensi
Merupakan aspek penting karena operasi I/O karena sering menjadi operasi
yang menimbulkan bottleneck pada sistem komputer/komputasi.
b. Generalitas (Device-independence)
Selain berkaitan dengan simplisitas dan bebas dari kesalahan diharapkan
juga menangani semua gerak peralatan secara beragam. Pernyataan ini
diterapkan dari cara proses-proses memandang peralatan I/O dan cara
sistem operasi mengelola peralatan-peralatan dan operasi-operasi I/O.
Perangkat lunak diorganisasikan sebagai satu barisan lapisan. Lapisan-lapisan
lebih bawah berurusan menyembunyikan kepelikan-kepelikan perangkat
keras. Untuk untuk lapisan-lapisan lebih atas berurusan memberikan
interface yang bagus, bersih, nyaman dan seragam ke pemakai.
Terdapat dua sasaran perancangan perangkat I/O, yaitu:
a. Efisiensi
Merupakan aspek penting karena operasi I/O karena sering menjadi operasi
yang menimbulkan bottleneck pada sistem komputer/komputasi.
b. Generalitas (Device-independence)
Selain berkaitan dengan simplisitas dan bebas dari kesalahan diharapkan
juga menangani semua gerak peralatan secara beragam. Pernyataan ini
diterapkan dari cara proses-proses memandang peralatan I/O dan cara
sistem operasi mengelola peralatan-peralatan dan operasi-operasi I/O.
Perangkat lunak diorganisasikan sebagai satu barisan lapisan. Lapisan-lapisan
lebih bawah berurusan menyembunyikan kepelikan-kepelikan perangkat
keras. Untuk untuk lapisan-lapisan lebih atas berurusan memberikan
interface yang bagus, bersih, nyaman dan seragam ke pemakai.
Masalah-masalah penting yang
terdapat dan harus diselesaikan pada
perancangan manajemen I/O adalah:
1. Penamaan yang seragam (uniform naming)
Nama berkas atau peralatan adalah string atau integer, tidak tergantung
pada peralatan sama sekali.
2. Penanganan kesalahan (error handling)
Umumnya penanganan kesalahan ditangani sedekat mungkin dengan
perangkat keras.
3. Transfer sinkron vs asinkron
Kebanyakan fisik I/O adalah asinkron. Pemroses mulai transfer dan
mengabaikannya untuk melakukan kerja lain sampai interupsi tiba. Programprogram
pemakai sangat lebih mudah ditulis jika operasi-operasi I/O
berorientasi blok. Setelah perintah read, program kemudian secara otomatis
ditunda sampai data tersedia di buffer.
4. Shareable vs dedicated
Beberapa peralatan dapat dipakai bersama seperti disk, tapi ada juga
peralatan yang harus hanya satu pemakai yang dibolehkan memakainya pada
satu saat. Contohnya peralata yang harus dedicated misalnya printer.
1. Penamaan yang seragam (uniform naming)
Nama berkas atau peralatan adalah string atau integer, tidak tergantung
pada peralatan sama sekali.
2. Penanganan kesalahan (error handling)
Umumnya penanganan kesalahan ditangani sedekat mungkin dengan
perangkat keras.
3. Transfer sinkron vs asinkron
Kebanyakan fisik I/O adalah asinkron. Pemroses mulai transfer dan
mengabaikannya untuk melakukan kerja lain sampai interupsi tiba. Programprogram
pemakai sangat lebih mudah ditulis jika operasi-operasi I/O
berorientasi blok. Setelah perintah read, program kemudian secara otomatis
ditunda sampai data tersedia di buffer.
4. Shareable vs dedicated
Beberapa peralatan dapat dipakai bersama seperti disk, tapi ada juga
peralatan yang harus hanya satu pemakai yang dibolehkan memakainya pada
satu saat. Contohnya peralata yang harus dedicated misalnya printer.
·
D. Hirarki Pengelolaan
Perangkat I/O
1. Interrupt Handler
Interupsi adalah suatu peristiwa yang menyebabkan eksekusi satu program
ditundan dan program lain yang dieksekusi. Interrupt adalah sinyal dair
peralatan luar dau permintaan dari program untuk melaksanakan suatu tugas
khusus. Jika interrupt terjadi, maka program dihentikan dahulu untuk
menjalankan rutin interrupt. Ketika program yang sedang berjalan tadi
dihentikan, prosesor menyimpan nilai register yang berisi alamat program ke
stack, dan mulei menjalankan rutin interrupt.
Secara garis besar, kita mengenal dua macam interupsi terhadap prosesor,
yatu interupsi secara langsung dan interupsi melalui polling. Sekalipun
caranya berbeda, akibat dari kedua cara interupsi tersebut sama.
Cara interupsi secara langsung: penghentian prosesor untuk suatu proses
dapat berasal dari berbagai sumber daya di dalam sistem komputer, karena
sumber daya tertentu pada sistem komputer tersebut menginterupsi kerja
prosesor. Karena cara terjadinya interupsi adalah secara langsung dari
sumber daya, maka kita menamakan cara interupsi ini sebagai interupsi
langsung. Banyak interupsi terhadap prosesor di dalam sistem komputer
termasuk ke dalam jenis interupsi langsung.
Cara interupsi polling: selain komputer menunggu sampai diinterupsi oleh
sumber daya komputer, kita mengenal pula cara interupsi sebaliknya. Pada
1. Interrupt Handler
Interupsi adalah suatu peristiwa yang menyebabkan eksekusi satu program
ditundan dan program lain yang dieksekusi. Interrupt adalah sinyal dair
peralatan luar dau permintaan dari program untuk melaksanakan suatu tugas
khusus. Jika interrupt terjadi, maka program dihentikan dahulu untuk
menjalankan rutin interrupt. Ketika program yang sedang berjalan tadi
dihentikan, prosesor menyimpan nilai register yang berisi alamat program ke
stack, dan mulei menjalankan rutin interrupt.
Secara garis besar, kita mengenal dua macam interupsi terhadap prosesor,
yatu interupsi secara langsung dan interupsi melalui polling. Sekalipun
caranya berbeda, akibat dari kedua cara interupsi tersebut sama.
Cara interupsi secara langsung: penghentian prosesor untuk suatu proses
dapat berasal dari berbagai sumber daya di dalam sistem komputer, karena
sumber daya tertentu pada sistem komputer tersebut menginterupsi kerja
prosesor. Karena cara terjadinya interupsi adalah secara langsung dari
sumber daya, maka kita menamakan cara interupsi ini sebagai interupsi
langsung. Banyak interupsi terhadap prosesor di dalam sistem komputer
termasuk ke dalam jenis interupsi langsung.
Cara interupsi polling: selain komputer menunggu sampai diinterupsi oleh
sumber daya komputer, kita mengenal pula cara interupsi sebaliknya. Pada
cara interupsi ini, prakarsa
penghentian kerja prosesor berasal dari prosesor
atau melalui prosesor tsb. Dalam hal ini, secara berkala prosesor akan
bertanya (poll) kepada sejumlah sumber daya. Apakah ada di antara mereka
yang akan memeerlukan prosesor? Jika ada, maka prosesor akan
menghentikan kegiatan semulanya, serta mengalihkan kerjanya ke sumber
daya tersebut. Perbedaan antara interupsi langsung dengan interupsi polling
terletak pada cara mengemukakan interupsi tersebut.
Jenis-Jenis Interupsi
Dilihat dari cara kerja prosesor, tidak semua interupsi itu sama pentingnya
bagi proses yang sedang dilaksanakan oleh kerja prosesor tsb. Kalau sampai
interupsi yang kurang penting ikut menginterupsi kerja prosesor, maka
pelaksanaan proses itu akan menjadi lama. Karena itu biasanya SO membagi
interupsi ke dalam dua jenis, yaitu:
a. Software, yaitu interrupt yang disebabkan oleh software, sering disebut
dengan system call.
b. Hardware
Terjadi karena adanya akse pada perangkat keras, seperti penekanan tombol
keyboard atau menggerakkan mouse.
Selain untuk mengendalikan pengalihan I/O, beberapa kegunaan interupsi
juga antara lain:
1. Pemulihan kesalahan
Komputer menggunakan bermacam-macam teknik untuk memastikan
bahwa semua komponen perangkat keras beroperasi semestinya. Jika
kesalahan terjadi, perangkat keras kontrol mendeteksi kesalahan dan
memberi tahu CPU dengan mengajukan interupsi.
2. Debugging
Penggunaan penting lain dari interupsi adalah sebagai penolong dalam
debugging program. Debugger menggunakan interupsi untuk menyediakan
dua fasilitas penting, yaitu:
- Trace
- Break point.
3. Komunikasi Antarprogram
Perintah interupsi perangkat lunak digunakan oleh sistem operasi
untuk berkomunikasi dengan dan mengontrol eksekusi program lain.
bertanya (poll) kepada sejumlah sumber daya. Apakah ada di antara mereka
yang akan memeerlukan prosesor? Jika ada, maka prosesor akan
menghentikan kegiatan semulanya, serta mengalihkan kerjanya ke sumber
daya tersebut. Perbedaan antara interupsi langsung dengan interupsi polling
terletak pada cara mengemukakan interupsi tersebut.
Jenis-Jenis Interupsi
Dilihat dari cara kerja prosesor, tidak semua interupsi itu sama pentingnya
bagi proses yang sedang dilaksanakan oleh kerja prosesor tsb. Kalau sampai
interupsi yang kurang penting ikut menginterupsi kerja prosesor, maka
pelaksanaan proses itu akan menjadi lama. Karena itu biasanya SO membagi
interupsi ke dalam dua jenis, yaitu:
a. Software, yaitu interrupt yang disebabkan oleh software, sering disebut
dengan system call.
b. Hardware
Terjadi karena adanya akse pada perangkat keras, seperti penekanan tombol
keyboard atau menggerakkan mouse.
Selain untuk mengendalikan pengalihan I/O, beberapa kegunaan interupsi
juga antara lain:
1. Pemulihan kesalahan
Komputer menggunakan bermacam-macam teknik untuk memastikan
bahwa semua komponen perangkat keras beroperasi semestinya. Jika
kesalahan terjadi, perangkat keras kontrol mendeteksi kesalahan dan
memberi tahu CPU dengan mengajukan interupsi.
2. Debugging
Penggunaan penting lain dari interupsi adalah sebagai penolong dalam
debugging program. Debugger menggunakan interupsi untuk menyediakan
dua fasilitas penting, yaitu:
- Trace
- Break point.
3. Komunikasi Antarprogram
Perintah interupsi perangkat lunak digunakan oleh sistem operasi
untuk berkomunikasi dengan dan mengontrol eksekusi program lain.
2. Device Driver
Setiap device driver menangani satu tipe peralatan. Device driver bertugas
menerima permintaan abstrak perangkat lunak device independent di atasnya
dan melakukan layanan sesuai permintaan itu.
Mekanisme kerja device driver
- Menerjemahkan perintah-perintah abstrak menjadi perintah-perintah
konkret.
- Begitu telah dapat ditentukan perintah-perintah yang harus diberikan ke
pengendali, device driver mulai menulis ke register-register pengendali
peralatan.
- Setelah operasi selesai dilakukan peralatan, device driver memeriksa
kesalahan-kesalahan yang terjadi.
- Jika semua berjalan baik, device driver melewatkan data ke perangkat
lunak device independent.
- Device melaporkan informasi status sebagai pelaporan kesalahan ke
pemanggil.
Setiap device driver menangani satu tipe peralatan. Device driver bertugas
menerima permintaan abstrak perangkat lunak device independent di atasnya
dan melakukan layanan sesuai permintaan itu.
Mekanisme kerja device driver
- Menerjemahkan perintah-perintah abstrak menjadi perintah-perintah
konkret.
- Begitu telah dapat ditentukan perintah-perintah yang harus diberikan ke
pengendali, device driver mulai menulis ke register-register pengendali
peralatan.
- Setelah operasi selesai dilakukan peralatan, device driver memeriksa
kesalahan-kesalahan yang terjadi.
- Jika semua berjalan baik, device driver melewatkan data ke perangkat
lunak device independent.
- Device melaporkan informasi status sebagai pelaporan kesalahan ke
pemanggil.
3. Perangkat Lunak Sistem
Operasi Device Independent
Fungsi utama perangkat lunak tingkat ini adalah membentuk fungsi-fungsi I/O
yang berlaku untuk semua peralatan dan memberi interface seragam ke
perangkat lunak tingkat pemakai.
Fungsi-fungsi yang biasa dilakukan antara lain:
- Interface seragam untuk seluruh driver-driver
- Penamaan peralatan
- Proteksi peralatan
- Memberi ukuran blok peralatan agar bersifat device independent
- Melakukan buffering
- Alokasi penyimpanan pada block devices
- Alokasi pelepasan dedicated devices
- Pelaporan kesalahan
4. Buffering I/O
Buffering merupakan teknik untuk melembutkan lonjakan-lonjakan
kebutuhan pengaksesan I/O secara langsung. Buffering adalah cara untuk
meningkatkan efisiensi sistem operasi dan kinerja proses-proses. Terdapat
beragam cara buffering, antara lain:
a. Single Buffering
Teknik ini merupakan buffering paling sederhana. Ketika proses
pemakai memberikan perintah I/O, sistem operasi menyediakan buffer
bagian memori utama sistem untuk operasi.
Untuk peralatan berorientasi blok, transfer masukan dibuat ke buffer sistem.
Ketika transfer selesai, proses memeindahkan blok ke ruang pemakai dan
segera meminta blok lain. Teknik ini disebut reading ahead atau
anticipated input.
Teknik ini dilakukan dengan harapan bahwa blok tersebut akan segera
diperlukan. Untuk banyak tipe komputasi, asumsi ini berlaku. Hanya akhir
barisan pemrosesan maka blok yang dibaca tidak diperlukan.
Pendekatan ini umumnya meningkatkan kecepatan dibanding tanpa
buffering.
b. Double buffering
Peningkatan atas single buffering dapat dibuat dengan mempunyai
dua buffer sistem untuk operasi. Proses dapat transfer ke (atau dari) satu
buffer sementara sistem operasi mengosongkan (atau mengisi) buffer lain.
Double buffering menjamin proses tidak akan menunggu operasi I/O.
Peningkatan atas single buffering diperoleh, namun harus dibayar dengan
kompleksitas yang meningkat.
Fungsi utama perangkat lunak tingkat ini adalah membentuk fungsi-fungsi I/O
yang berlaku untuk semua peralatan dan memberi interface seragam ke
perangkat lunak tingkat pemakai.
Fungsi-fungsi yang biasa dilakukan antara lain:
- Interface seragam untuk seluruh driver-driver
- Penamaan peralatan
- Proteksi peralatan
- Memberi ukuran blok peralatan agar bersifat device independent
- Melakukan buffering
- Alokasi penyimpanan pada block devices
- Alokasi pelepasan dedicated devices
- Pelaporan kesalahan
4. Buffering I/O
Buffering merupakan teknik untuk melembutkan lonjakan-lonjakan
kebutuhan pengaksesan I/O secara langsung. Buffering adalah cara untuk
meningkatkan efisiensi sistem operasi dan kinerja proses-proses. Terdapat
beragam cara buffering, antara lain:
a. Single Buffering
Teknik ini merupakan buffering paling sederhana. Ketika proses
pemakai memberikan perintah I/O, sistem operasi menyediakan buffer
bagian memori utama sistem untuk operasi.
Untuk peralatan berorientasi blok, transfer masukan dibuat ke buffer sistem.
Ketika transfer selesai, proses memeindahkan blok ke ruang pemakai dan
segera meminta blok lain. Teknik ini disebut reading ahead atau
anticipated input.
Teknik ini dilakukan dengan harapan bahwa blok tersebut akan segera
diperlukan. Untuk banyak tipe komputasi, asumsi ini berlaku. Hanya akhir
barisan pemrosesan maka blok yang dibaca tidak diperlukan.
Pendekatan ini umumnya meningkatkan kecepatan dibanding tanpa
buffering.
b. Double buffering
Peningkatan atas single buffering dapat dibuat dengan mempunyai
dua buffer sistem untuk operasi. Proses dapat transfer ke (atau dari) satu
buffer sementara sistem operasi mengosongkan (atau mengisi) buffer lain.
Double buffering menjamin proses tidak akan menunggu operasi I/O.
Peningkatan atas single buffering diperoleh, namun harus dibayar dengan
kompleksitas yang meningkat.
Manajemen
Memori Utama
Memori utama atau lebih dikenal
sebagai memori adalah sebuah array yang besar dari word atau byte, yang
ukurannya mencapai ratusan, ribuan, atau bahkan jutaan. Setiap word atau byte
mempunyai alamat tersendiri. Memori utama berfungsi sebagai tempat penyimpanan
instruksi / data yang akses datanya digunakan oleh CPU dan perangkat I/O .Memori
utama termasuk tempat penyimpanan data yang yang bersifat volatile –
tidak permanen (sementara), artinya data akan hilang jika komputer dimatikan.
Manajemen memori sangat mempengaruhi kinerja komputer. Manajemen memori melakukan tugas penting dan kompleks berkaitan dengan:
Manajemen memori sangat mempengaruhi kinerja komputer. Manajemen memori melakukan tugas penting dan kompleks berkaitan dengan:
- Memori utama sebegai sumber
daya yang harus dialokasikan dan dipakai bersama di antara sejumlah proses
yang aktif, agar dapat memanfaatkan prosesor dan fasilitas input/output
secara efisisen, maka diinginkan memori yang dapat menampung sebanyak mung
kin proses.
- Upaya agar pemrogram atau
proses tidak dibatasi kapasitas memori fisik di sistem komputer (adanya
memori virtual).
Sistem operasi bertanggung jawab
atas aktivitas-aktivitas yang berkaitan dengan manajemen memori seperti:
- Melacak pemakaian memori
(berapa besar dan oleh siapa)
- Mengelola informasi memori
yang dipakai atau tidak dipakai.
- Alokasi dan dealokasi memori
sesuai keperluan.
- Memilih program yang akan
di-load ke memori.
Memori merupakan bagian dari komputer yang berfungsi sebagai tempat
penyimpanan informasi yang harus diatur dan dijaga sebaik-baiknya. Memori
biasanya disebut juga dengan istilah : computer storage, computer memory atau
memory, merupakan piranti komputer yang digunakan sebagai media penyimpan data
dan informasi saat menggunakan komputer. Memory merupakan bagian yang
penting dalam komputer modern dan letaknya di dalam CPU (Central Processing
Unit).
Sebagian besar komputer memiliki hirarki memori yang terdiri atas tiga level, yaitu:
Sebagian besar komputer memiliki hirarki memori yang terdiri atas tiga level, yaitu:
- physical
Register di CPU, berada di level teratas. Informasi yang berada di
register dapat diakses dalam satu clock cycle CPU.
- Primary
Memory (executable memory), berada di level tengah. Contohnya, RAM. Primary
Memory diukur dengan satu byte dalam satu waktu, secara relatif dapat
diakses dengan cepat, dan bersifat volatile (informasi bisa hilang ketika
komputer dimatikan). CPU mengakses memori ini dengan instruksi single load
dan store dalam beberapa clock cycle.
- Secondary
Memory, berada di level bawah. Contohnya, disk atau tape. Secondary Memory
diukur sebagai kumpulan dari bytes (block of bytes), waktu aksesnya
lambat, dan bersifat non-volatile (informasi tetap tersimpan ketika
komputer dimatikan). Memori ini diterapkan di storage device, jadi akses
meliputi aksi oleh driver dan device.
Komputer yang lebih canggih memiliki level yang lebih banyak pada sistem
hirarki memorinya, yaitu cache memory dan bentuk lain dari secondary memory
seperti rotating magnetic memory, optical memory, dan sequntially access
memory. Akan tetapi, masing-masing level ini hanya sebuah penyempurnaan salah
satu dari tiga level dasar yang telah dijelaskan sebelumnya.
Bagian dari sistem operasi yang mengatur hirarki memori disebut dengan memory manager. Di era multiprogramming ini, memory manager digunakan untuk mencegah satu proses dari penulisan dan pembacaan oleh proses lain yang dilokasikan di primary memory, mengatur swapping antara memori utama dan disk ketika memori utama terlalu kecil untuk memegang semua proses.
Bagian dari sistem operasi yang mengatur hirarki memori disebut dengan memory manager. Di era multiprogramming ini, memory manager digunakan untuk mencegah satu proses dari penulisan dan pembacaan oleh proses lain yang dilokasikan di primary memory, mengatur swapping antara memori utama dan disk ketika memori utama terlalu kecil untuk memegang semua proses.
Tujuan dari manajemen ini adalah untuk:
- Meningkatkan
utilitas CPU
- Data dan
instruksi dapat diakses dengan cepat oleh CPU
- Efisiensi
dalam pemakaian memori yang terbatas
- Transfer
dari/ke memori utama ke/dari CPU dapat lebih efisien
II. Penggunaan Memory
Komponen utama dalam sistem komputer adalah Arithmetic Logic Unit (ALU),
Control Circuitry, Storage Space dan piranti Input/Output. Jika tanpa memory,
maka komputer hanya berfungsi sebagai digital signal processing devices,
contohnya kalkulator atau media player. Kemampuan memory untuk menyimpan data,
instruksi dan informasi-lah yang membuat komputer dapat disebut sebagai
general-purpose komputer. Komputer merupakan piranti digital, maka informasi
disajikan dengan sistem bilangan binary. Teks, angka, gambar, sudio dan video
dikonversikan menjadi sekumpulan bilangan binary (binary digit atau disingkat
bit). Sekumpulan bilangan binary dikenal dengan istilah BYTE, dimana 1
byte = 8 bits. Semakin besar ukuran memory-nya maka semakin banyak pula
informasi yang dapat disimpan di dalam komputer (storage devices). Berikut ini
beberapa gambar yang bisa mewakili bagaimana cara informasi disimpan dalam
memory dan bagaimana data ditransfer dari satu bagian ke bagian lainnya.
sebagai contoh untuk pencarian binary dari huruf B. Jadi kalo kita menekan tombol B, maka huruf B itu dikonversikan menjadi bilangan binary 01000010. jadi informasi yang diterima komputer ditransfer dari satu bagian ke bagian lain, misalnya dari Arithmetic Logic unit ke RAM, melalui bus atau electronic pathways yang ada di motherboard.
sebagai contoh untuk pencarian binary dari huruf B. Jadi kalo kita menekan tombol B, maka huruf B itu dikonversikan menjadi bilangan binary 01000010. jadi informasi yang diterima komputer ditransfer dari satu bagian ke bagian lain, misalnya dari Arithmetic Logic unit ke RAM, melalui bus atau electronic pathways yang ada di motherboard.
III. JENIS MEMORI (MEDIA PENYIMPANAN)
Memori merupakan media penyimpanan data pada komputer, yang mana media penyimpanan data dalam computer dibagi menjadi 2 jenis yaitu :
Memori merupakan media penyimpanan data pada komputer, yang mana media penyimpanan data dalam computer dibagi menjadi 2 jenis yaitu :
A. MEMORI INTERNAL
Memori jenis ini dapat diakses secara langsung oleh prosesor. Memori
internal memiliki fungsi sebagai pengingat. Dalam hal ini yang disimpan di
dalam memori utama dapat berupa data atau program. Secara lebih tinci, fungsi
dari memori utama adalah :
Menyimpan data yang berasal dari peranti masukan sampai data dikirim ke ALU (Arithmetic and Logic Unit) untuk diproses
Menyimpan data yang berasal dari peranti masukan sampai data dikirim ke ALU (Arithmetic and Logic Unit) untuk diproses
- Menyimpan
daya hasil pemrosesan ALU senelum dikirimkan ke peranti keluaran
- Menampung
program/instruksi yang berasal dari peranti masukan atau dari peranti
pengingat sekunder
Memori biasa terbagi dibedakan menjadi dua macam: ROM dan Ram. Selain
itu, terdapat pula memori yang disebut cache memory.
a. ROM
ROM (Read-Only-Memory a.k.a firmware) adalah jenis memori yang isinya
tidak hilang ketika tidak mendapat aliran listrik dan pada awalnya isinya hanya
bisa dibaca. ROM pada komputer disediakan oleh vendor komputer dan berisi
program atau data. Di dalam PC, ROM biasa disebut BIOS (Basic Input/Output
System) atau ROM-BIOS. Instruksi dalam BIOS inilah yang akan dijalankan oleh
mikroprosesor ketka komputer mulai dihidupkan. Umumnya proses yang terkandung
dalam BIOS secara berurutan adalah sebagai berikut:
- Memeriksa
isi CMOS.
CMOS (Compmentary Meta-Oxyde Semiconductor) adalah jenis cip yang
memerlukan daya listrik dari baterai. Cip ini berisi memori 64-byte yang isinya
dapat diganti. Pada CMOS inilah berbagai pengaturan dasar komputer dilakukan,
misalnya peranti yang digunakan untuk memuat sistem operasi dan termasuk pula
tanggal dan jam sistem.
- Memuat
penanganan interupsi (interupt handlers) dan pengendali peranti (device
driver).
Penanganan interupsi adalah program kecil yang menjadi penerjemah antara
perangkat keras dan sistem operasi. Sebagai contoh , jika pemakai menekan
tombol keyboard maka isyarat ini dikirimkan melalui penaganan interupsi
keyboard.
Pengendali peranti adalah program yang bertindak sebagai pemberi identitas bagi perangkat keras tertentu (misalnya scanner) sehingga bisa dikenali oleh sistem operasi.
Pengendali peranti adalah program yang bertindak sebagai pemberi identitas bagi perangkat keras tertentu (misalnya scanner) sehingga bisa dikenali oleh sistem operasi.
- Menginisialisasi
register dan manajemen daya listrik
- Melakukan
pengujian perangkat keras (POST atau the power-on self-test) untuk
memastikan bahwa semua perangkat keras dalam keadaan baik
- Menampilkan
pengaturan-pengaturan pada sistem
- Menentukan
peranti yang akan digunakan untuk menjalankan program (ex. : hard disk)
- Mengambil
isi boot sector. Boot sector juga merupakan sebuah program kecil. Oleh
BIOS program ini dimuat ke RAM dan kemudian mikroprosesor akan
mengeksekusi perintah-erintah yang sudah berada dalam RAM tersebut.
Melalui prosedur di atas inilah, kemudian sistem operasi (windows,
linux, solaris, dll) dimuat.
Selain ROM, terdapat pula cip yang disebut PROM, EPROM dan EEPROM.
PROM (Progammable Read-Only-Memory)
Jika isi ROM ditentukan oleh vendor, PROM dijual dalam keadaan kosong dan kemudian dapat diisi dengan program oleh pemakai. Setelah diisi dengan program, isi PROM tak bisa dihapus.
EPROM (Erasable Programmable Read-Only-Memory)
Berbeda dengan PROM, isi EPROM dapat dihapus setelah diprogram. Penghapusan dilakukan dengan menggunakan sinar ultraviolet.
EEPROM (Electrically Erasable Programmable Read-Only0Memory)
EEPROM dapat menyimpan data secara permanen, tetapi isinya masih bisa dihapus secara elektris melalui program. Salah satu jenis EEPROM adalah Flash Memory. Flash Memory biasa digunakan pada kamera digital, konsol video game, dan cip BIOS.
Selain ROM, terdapat pula cip yang disebut PROM, EPROM dan EEPROM.
PROM (Progammable Read-Only-Memory)
Jika isi ROM ditentukan oleh vendor, PROM dijual dalam keadaan kosong dan kemudian dapat diisi dengan program oleh pemakai. Setelah diisi dengan program, isi PROM tak bisa dihapus.
EPROM (Erasable Programmable Read-Only-Memory)
Berbeda dengan PROM, isi EPROM dapat dihapus setelah diprogram. Penghapusan dilakukan dengan menggunakan sinar ultraviolet.
EEPROM (Electrically Erasable Programmable Read-Only0Memory)
EEPROM dapat menyimpan data secara permanen, tetapi isinya masih bisa dihapus secara elektris melalui program. Salah satu jenis EEPROM adalah Flash Memory. Flash Memory biasa digunakan pada kamera digital, konsol video game, dan cip BIOS.
b. RAM
RAM (Random-Access Memory) adalah jenis memori yang isinya dapat
diganti-ganti selama komputer sihidupkan dan bersifat volatile. Selain itu, RAM
mempunyai sifat yakni dapat menyimpan dan mengambil data dengan sangat cepat.
Tipe RAM pada PC bermacam; antara lain DRAM, SDRAM, SRAM, RDRAM, dan EDO RAM.
DRAM (Dynamic RAM) adalah jenis RAM yang secara berkala harus disegarkan oleh CPU agar data yang terkandung di dalamnya tidak hilang.
EDO RAM (Extended Data Out RAM) adalah jenis memori yang digunakan pada sistem yang menggunakan Pentium. Cocok untuk yang memiliki bus denagan kecepatan sampai 66 MHz.
SDRAM (Sychronous Dynamic RAM) adalah jenis RAM yang merupakan kelanjutan dari DRAM namun telah disnkronisasi oleh clock sistem dan memiliki kecepatan lebih tinggi daripada DRAM. Cocok untuk sistem dengan bus yang memiliki kecepatan sampai 100 MHz.
SRAM (Static RAM) adalah jenis memori yang tidak memerlukan penyegaran oleh CPU agar data yang terdapat di dalamnya tetap tersimpan dengan baik. RAM jenis ini memiliki kecepatan lebih tinggi daripada DRAM.
RDRAM (Rambus Dynamic RAM) adalah jenis memori yang lebih cepat dan lebih mahal daripada SDRAM. Memori ini biasa digunakan pada sistem yang menggunakan Pentium 4.
Jenis RAM yang terdapat di pasaran :
Tipe RAM pada PC bermacam; antara lain DRAM, SDRAM, SRAM, RDRAM, dan EDO RAM.
DRAM (Dynamic RAM) adalah jenis RAM yang secara berkala harus disegarkan oleh CPU agar data yang terkandung di dalamnya tidak hilang.
EDO RAM (Extended Data Out RAM) adalah jenis memori yang digunakan pada sistem yang menggunakan Pentium. Cocok untuk yang memiliki bus denagan kecepatan sampai 66 MHz.
SDRAM (Sychronous Dynamic RAM) adalah jenis RAM yang merupakan kelanjutan dari DRAM namun telah disnkronisasi oleh clock sistem dan memiliki kecepatan lebih tinggi daripada DRAM. Cocok untuk sistem dengan bus yang memiliki kecepatan sampai 100 MHz.
SRAM (Static RAM) adalah jenis memori yang tidak memerlukan penyegaran oleh CPU agar data yang terdapat di dalamnya tetap tersimpan dengan baik. RAM jenis ini memiliki kecepatan lebih tinggi daripada DRAM.
RDRAM (Rambus Dynamic RAM) adalah jenis memori yang lebih cepat dan lebih mahal daripada SDRAM. Memori ini biasa digunakan pada sistem yang menggunakan Pentium 4.
Jenis RAM yang terdapat di pasaran :
- SIMM
(Single in-line memory module) – Mempunyai kapasitas 30 atau 72 pin.
Memori SIMM 30 pin untuk kegunaan PC zaman 80286 hingga 80486 dan
beroperasi pada 16 bit. Memory 72 pin banyak digunakan untuk PC berasaskan
Pentium dan beroperasi pada 32 bit. Kecepatan dirujuk mengikuti istilah ns
(nano second) seperti 80ns, 70ns, 60ns dan sebagainya. Semakin kecil
nilainya maka kecepatan lebih tinggi. DRAM (dynamic RAM) dan EDO RAM
(extended data-out RAM) menggunakan SIMM. DRAM menyimpan bit didalam suatu
sel penyimpanan (storage sell) sebagai suatu nilai elektrik (electrical
charge) yang harus di-refesh beratus-ratus kali setiap saat untuk
menetapkan (retain) data. EDO RAM sejenis DRAM lebih cepat, EDO memakan
waktu dalam output data, dimana ia memakan waktu di antara CPU dan RAM.
Memori jenis ini tidak lagi digunakan pada komputer akhir-akhir ini.
ex: SIMM 30 PIN SIMM 72 PIN
- DIMM (dual
in-line memory module) – Berkapasitas 168 pin, kedua belah modul memori
ini aktif, setiap permukaan adalah 84 pin. Ini berbeda daripada SIMM yang
hanya berfungsi pada sebelah modul saja. Mensuport 64 bit penghantaran
data. SDRAM (synchronous DRAM) menggunakan DIMM. Merupakan penganti dari
DRAM, FPM (fast page memory) dan EDO. SDRAM pengatur (synchronizes) memori
supaya sama dengan CPU clock untuk pemindahan data yang lebih cepat.
Terdapat dalam dua kecepatan yaitu 100MHz (PC100) dan 133MHz (PC133). DIMM
168 PIN
- DDR SDRAM
(double-data-rate SDRAM) – Ciri-ciri DDR SDRAM sama dengan SDRAM, tetapi
pemindahan data (data transfer) mendekati kecepatan sistem jam (system clock)
dan ini secara teori meningktkan kecepatan SDRAM. Dahulu digunakan sebagai
memori untuk card terpisah tetapi pada saat ini pabrik komputer membuatnya
pada modul memori untuk motherboard sebagai satu jalan alternatif untuk
pengganti SDRAM yang mempunyai 184 pin dan terdapat dalam tiga kecpatan
yaitu 266MHz, 333MHz dan 400MHz. DIMM 184PIN
- DRDRAM
(direct Rambus DRAM) – Dulu dikenali sebagai RDRAM. Adalah sejenis SDRAM
yang dibuat oleh Rambus. DRDRAM digunakan untuk CPU dari Intel yang
berkecepatan tinggi. Pemindahan data sama seperti DDR SDRAM tetapi
mempunyai dua saluran data untuk meningkatkan kemampuan. Juga dikenali
sebagai PC800 yang kerkelajuan 400MHz. Beroperasi dalam bentuk 16 bit
bukan 64 bit. Pada saat ini terdapat DRDRAM berkecepatan 1066MHz yang
dikenal dengan RIMM (Rambus inline memory module). DRDRAM model RIMM 4200
32-bit menghantar 4.2gb setiap saat pada kecepatan 1066MHZ.
c. CACHE MEMORY
Memori berkapasitas terbatas, memori ini berkecepatan tinggi dan lebih
mahal dibandingkan memory utama. Berada diantara memori utama dan register
pemroses, berfungsi agar pemroses tidak langsung mengacu kepada memori utama
tetapi di cache memory yang kecepatan aksesnya yang lebih tinggi, metode
menggunakan cache memory ini akan meningkatkan kinerja sistem.
Cache memory adalah tipe RAM tercepat yang ada, dan digunakan oleh CPU, hard drive, dan beberapa komponen lainnya. Seperti halnya RAM, lebih banyak cache memory adalah lebih baik, akan tetapi biasanya cache pada CPU dan hard drive tidak dapat diupgrade menjadi lebih banyak. Contoh yang dapat dilihat misalnya adalah pada CPU Pentium II terdapat 512 KiloByte cache, dan pada hard drive IBM 9LZX SCSI terdapat 4 MegaBytes cache. Seperti halnya RAM, pada umumnya data akan dilewatkan dulu pada cache memory sebelum menuju komponen yang akan menggunakannya (misalnya CPU). Selain itu cache memory menyimpan pula sementara data untuk akses cepat. Kecepatan cache memory juga menjadi unsur yang penting. Sebagai contoh, CPU Pentium II memilki cache sebesar 12 k, dan CPU Celeron memiliki cache sebesar 128 k, akan tetapi cache pada Pentium II berjalan pada 1/2 kali kecepatan CPU, sementara cache pada Celeron berjalan dengan kecepatan sama dengan kecepatan CPU. Hal ini merupakan tradeoff yang membuat kecepatan Celeron dalam hal-hal tertentu kadang-kadang malah bisa mengalahkan Pentium II.
Cache memory adalah tipe RAM tercepat yang ada, dan digunakan oleh CPU, hard drive, dan beberapa komponen lainnya. Seperti halnya RAM, lebih banyak cache memory adalah lebih baik, akan tetapi biasanya cache pada CPU dan hard drive tidak dapat diupgrade menjadi lebih banyak. Contoh yang dapat dilihat misalnya adalah pada CPU Pentium II terdapat 512 KiloByte cache, dan pada hard drive IBM 9LZX SCSI terdapat 4 MegaBytes cache. Seperti halnya RAM, pada umumnya data akan dilewatkan dulu pada cache memory sebelum menuju komponen yang akan menggunakannya (misalnya CPU). Selain itu cache memory menyimpan pula sementara data untuk akses cepat. Kecepatan cache memory juga menjadi unsur yang penting. Sebagai contoh, CPU Pentium II memilki cache sebesar 12 k, dan CPU Celeron memiliki cache sebesar 128 k, akan tetapi cache pada Pentium II berjalan pada 1/2 kali kecepatan CPU, sementara cache pada Celeron berjalan dengan kecepatan sama dengan kecepatan CPU. Hal ini merupakan tradeoff yang membuat kecepatan Celeron dalam hal-hal tertentu kadang-kadang malah bisa mengalahkan Pentium II.
B. MEMORI EKSTERNAL
Merupakan memori tambahan yang berfungsi untuk menyimpan data atau
program.Contoh: Hardisk, Floppy Disk dllHubungan antara Chace Memori, Memori
Utama dan Memori eksternal dapat di lihat pada gambar berikut :
Konsep dasar memori eksternal adalah :
Konsep dasar memori eksternal adalah :
- Menyimpan
data bersifat tetap (non volatile), baik pada saat komputer aktif atau
tidak.
Memori eksternal biasa disebut juga memori eksternal yaitu perangkat
keras untuk melakukan operasi penulisan, pembacaan dan penyimpanan data, di
luar memori utama.
Memori eksternal mempunyai dua tujuan utama yaitu sebagai penyimpan permanen untuk membantu fungsi RAM dan yang untuk mendapatkan memori murah yang berkapasitas tinggi bagi penggunaan jangka panjang.
Memori eksternal mempunyai dua tujuan utama yaitu sebagai penyimpan permanen untuk membantu fungsi RAM dan yang untuk mendapatkan memori murah yang berkapasitas tinggi bagi penggunaan jangka panjang.
BERBAGAI JENIS MEMORY EKSTERNAL
1. Berdasarkan Jenis Akses Data
Berdasarkan jenis aksesnya memori eksternal dikelompokkan menjadi dua
jenis yaitu :
a. DASD (Direct Access Storage Device) di mana ia mempunyai akses
langsung terhadap data.
Contoh :
- Magnetik
(floppy disk, hard disk).
- Removeable
hard disk (Zip disk, Flash disk).
- Optical
Disk.
b. SASD (Sequential Access Storage Device) : Akses data secara tidak
langsung (berurutan), seperti pita magnetik.
2. Berdasarkan Karakteristik Bahan
Berdasarkan karakteristik bahan pembuatannya, memori eksternal digolongkan menjadi beberapa kelompok sebagai berikut:
a. Punched Card atau kartu berlubang
Merupakan kartu kecil berisi lubang-lubang yang menggambarkan berbagai instruksi atau data. Kartu ini dibaca melalui puch card reader yang sudah tidak digunakan lagi sejak tahun 1979.
b. Magnetic Disk
Magnetic Disk merupakan disk yang terbuat dari bahan yang bersifat magnetik, Contoh : floppy dan harddisk.
c. Optical Disk
Optical disk terbuat dari bahan-bahan optik, seperti dari resin (polycarbonate) dan dilapisi permukaan yang sangat reflektif seperti alumunium. Contoh : CD dan DVD
d. Magnetic Tape
Sedangkan magnetik tape, terbuat dari bahan yang bersifat magnetik tetapi berbentuk pita, seperti halnya pita kaset tape recorder.
2. Berdasarkan Karakteristik Bahan
Berdasarkan karakteristik bahan pembuatannya, memori eksternal digolongkan menjadi beberapa kelompok sebagai berikut:
a. Punched Card atau kartu berlubang
Merupakan kartu kecil berisi lubang-lubang yang menggambarkan berbagai instruksi atau data. Kartu ini dibaca melalui puch card reader yang sudah tidak digunakan lagi sejak tahun 1979.
b. Magnetic Disk
Magnetic Disk merupakan disk yang terbuat dari bahan yang bersifat magnetik, Contoh : floppy dan harddisk.
c. Optical Disk
Optical disk terbuat dari bahan-bahan optik, seperti dari resin (polycarbonate) dan dilapisi permukaan yang sangat reflektif seperti alumunium. Contoh : CD dan DVD
d. Magnetic Tape
Sedangkan magnetik tape, terbuat dari bahan yang bersifat magnetik tetapi berbentuk pita, seperti halnya pita kaset tape recorder.
Manajemen
Berkas
Berkas adalah kumpulan informasi
yang berhubungan, sesuai dengan tujuan pembuat berkas tersebut. Umumnya berkas
merepresentasikan program dan data. Berkas dapat mempunyai struktur yang
bersifat hirarkis (direktori, volume, dll.). Sistem operasi mengimplementasikan
konsep abstrak dari berkas dengan mengatur media penyimpanan massa, misalanya tapes
dan disk
Sistem operasi bertanggung jawab dalam aktivitas yang berhubungan dengan manajemen berkas :
Sistem operasi bertanggung jawab dalam aktivitas yang berhubungan dengan manajemen berkas :
- Pembuatan dan penghapusan
berkas.
- Pembuatan dan penghapusan
direktori.
- Mendukung manipulasi berkas
dan direktori.
- Memetakan berkas ke
penyimpanan sekunder.
- Mem- back up berkas
ke media penyimpanan yang permanen (non-volatile).
Dari komponen diatas tentu saja kinerja Operating Sistem sendiri harus
ditunjang komponen lainnya, antara lain :
Manajemen
Penyimpanan Sekunder
Data yang disimpan dalam memori
utama bersifat sementara dan jumlahnya sangat kecil. Oleh karena itu, untuk
meyimpan keseluruhan data dan program komputer dibutuhkan penyimpanan sekunder
yang bersifat permanen dan mampu menampung banyak data, sebagai back up
dari memori utama. Contoh dari penyimpanan sekunder adalah hard-disk,
disket, dll.
Sistem operasi bertanggung-jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen penyimpanan sekunder seperti:
Sistem operasi bertanggung-jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen penyimpanan sekunder seperti:
- Manajemen ruang kososng
- Alokasi penyimpanan
- Penjadwalan disk
Sistem Proteksi
Proteksi mengacu pada mekanisme
untuk mengontrol akses yang dilakukan oleh program, prosesor atau pengguna ke
sistem sumber daya. Mekanisme proteksi harus:
- Membedakan antara penggunaan
yang sudah diberi izin dan yang belum.
- Menspesifikasi kontrol untuk
dibebankan/ ditugaskan
- Menyediakan alat untuk
pemberlakuan sistem.
Jaringan
Sistem
terdistribusi adalah sekumpulan prosesor yang tidak berbagi memori, atau clock.
Tiap prosesor mempunyai memori dan clock tersendiri. Prosesor-prosesor
tersebu terhubung melalui jaringan komunikasi. Sistem terdistribusi menyediakan
akses pengguna ke bermacam sumber daya sistem. Akses tersebut menyebabkan
peningkatan kecepatan komputasi dan meningkatkan kemampuan penyediaan data.
Command-Interpreter
System
Sistem Operasi menunggu instruksi
dari pengguna (command driven). Program yang membaca instruksi dan
mengartikan control statements umumnya disebut: control-card
interpreter,command-line interpreter dan terkadang dikenal sebagai shell.
Command-Interpreter System sangat bervariasi dari satu sistem operasi ke
sistem operasi yang lain dan disesuaikan dengan tujuan dan teknologi perangkat I/O
yang ada. Contohnya: CLI, Windows, Pen-based (touch), dan lain-lain.