Wellcome in my blogspot....!!!

-=BLUE BAYYU=-

BLOGSPOT INI BUKAN UNTUK ANAK-ANAK

Jumat, 18 Januari 2013

ANALISIS MANAJEMEN OPERATING SISTEM


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:
  • 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
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)
• Sementa
ra, 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




Diagram Antrian

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

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




Dua 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


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

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

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 :
  • 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:
  • Mengirim perintah ke perangkat I/O agar menyediakan layanan.
  • Menangani interupsi perangakat I/O .
  • Menangani kesalahan pada perangakat I/O.
  • Menyediakan antarmuka ke pengguna.
Pengelolaan perangkat I/O merupakan aspek perancangan sistem operasi yang
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.
·         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.

·         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.
 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.
        
·         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
      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.
        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.

        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.


 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:
  • 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:
  • 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.
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.
III. JENIS MEMORI (MEDIA PENYIMPANAN)
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 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.
  • 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.
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 :
  1. 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
  2. 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
  3. 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
  4. 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.
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 :
  • 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.
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.

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 :
  • 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:
  • 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.