Selasa, 23 Juni 2015

Penjadwalan Proses

Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer. Proses penjadwalan yang akan dibahas disini adalah proses penjadwalan sistem operasiSOLARIS, LINUX, dan WINDOWS XP.
Sasaran atau tujuan utama penjadwalan proses optimasi kinerja menurut kriteria tertentu. dimana kriteria untuk mengukur dan optimasi kerja penjadwalan antara lain :
  • Agar semua pekerjaan memperoleh pelayanan yang adil (firness).
  • Agar pemakaian prosesor dapat dimaksimumkan.
  • Agar waktu tanggap dapat diminimumkan.
  • Agar pemakaian sumber daya seimbang.
  • Turn arround time, waktu sejak program masuk ke system sampai proses selesai.
  • Efesien, proses tetap dalam keadaan sibuk tidak menganggur.
  • Agar terobosan (thoughput) dapat dimaksimumkan.
Terdapat 3 tipe penjadwal berada secara bersama-sama pada sistem operasi yang kompleks, yaitu:
  1. Penjadwal jangka pendek (short term scheduller)
Bertugas menjadwalkan alokasi pemroses di antara proses-proses ready di memori utama Penjadwalan dijalankan setiap terjadi pengalihan proses untuk memilih proses berikutnya yang harus dijalankan.
  1. Penjadwal jangka menengah (medium term scheduller)
Setelah eksekusi selama suatu waktu, proses mungkin menunda sebuah eksekusi karena membuat permintaan layanan masukan/keluaran atau memanggil suatu system call. Proses-proses tertunda tidak dapat membuat suatu kemajuan menuju selesai sampai kondisi-kondisi yang menyebabkan tertunda dihilangkan. Agar ruang memori dapat bermanfaat, maka proses dipindah dari memori utama ke memori sekunder agar tersedia ruang untuk proses-proses lain. Kapasitas memori utama terbatas untuk sejumlah proses aktif. Aktivitas pemindahan proses yang tertunda dari memori utama ke memori sekunder disebut swapping. Proses-proses mempunyai kepentingan kecil saat itu sebagai proses yang tertunda. Tetapi, begitu kondisi yang membuatnya tertunda hilang dan dimasukkan kembali ke memori utama dan ready.
  1. Penjadwal jangka panjang (long term scheduller)
Penjadwal ini bekerja terhadap antrian batch dan memilih batch berikutnya yang harus dieksekusi. Batch biasanya adalah proses-proses dengan penggunaan sumber daya yang intensif (yaitu waktu pemroses, memori, masukan/keluaran), program-program ini berprioritas rendah, digunakan sebagai pengisi (agar pemroses sibuk) selama periode aktivitas job-job interaktif rendah.
PENJADWALAN PROSES SISTEM OPERASI SOLARIS

Company /developerOracle Corporation
Programmed inC
OS familyUnix
Source modelMixed open source / closed source
Initial release1992
Latest stable release10 10/09 / October 8, 2009; 10 months ago
Availablelanguage(s)English
Availableprogramming languages(s)C
Supported platformsSPARCIA-32x86-64,PowerPC (Solaris 2.5.1 only)
Kernel typeMonolithic
Default user interfaceJava Desktop System orCDE
LicenseVarious
Official websiteoracle.com/solaris
Solaris menggunakan penjadwalan berdasarkan prioritas dimana yang mempunyai prioritas yang lebih tinggi dijalankan terlebih dahulu. Informasi tentang penjadwalan kernel thread dapat dilihat dengan ps -elcL. Kernel Solaris adalah fully preemtible, artinya semua thread, termasuk thread yang mendukung aktifitas kernel itu sendiri dapat ditunda untuk menjalankan thread dengan prioritas yang lebih tinggi.

Gambar penjadwalan solaris
Solaris mengenal 170 prioritas yang berbeda, 0-169. Terbagi dalam 4 kelas penjadwalan yang berbeda:
  1. Real time (RT). Thread di kelas RT memiliki prioritas yang tetap dengan waktu kuantum yang tetap juga. Thread ini memiliki prioritas yang tinggi berkisar antara 100-159. Hal inilah yang membuat proses waktu nyata memiliki response time yang cepat. Proses waktu nyata akan dijalankan sebelum proses-proses dari kelas yang lain dijalankan sehingga dapat menghentikan proses di system class. Pada umumnya, hanya sedikit proses yang merupakan real time class.
  2. System (SYS). Solaris menggunakan system class untuk menjalankan kernel proses, seperti penjadwalan dan paging daemonThreads di kelas ini adalah “bound” threads, berarti bahwa mereka akan dijalankan sampai mereka di blok atau prosesnya sudah selesai. Prioritas untuk SYS threads berkisar 60-99. Sekali dibangun, prioritas dari sistem proses tidak dapat dirubah. System classdialokasikan untuk kernel useuser proses berjalan di kernel mode bukan di system class).
  3. Time Sharing (TS). Time sharing class merupakan default class untuk proses dan kernel thread yang bersesuaian. Time slices masing-masing proses dibagi berdasarkan prioritasnya. Dalam hal ini, prioritas berbanding terbalik dengan time slices-nya. Untuk proses yang prioritasnya tinggi mempunyai time-slices yang pendek, dan sebaliknya proses dengan prioritas yang rendah mempunyai time slices yang lebih panjang. Besar prioritasnya berada antara 0-59. Proses yang interaktif berada di prioritas yang tinggi sedangkan proses CPU-bound mempunyai prioritas yang rendah. Aturan penjadwalan seperti ini memberikan response time yang baik untuk proses yang interaktif, dan troughput yang baik untuk proses CPU-bound.
  4. Interactive (IA). Kelas Interaktif menggunakan aturan yang sama dengan aturan dengan kelas kelas time sharing, tetapi kelas ini memberikan prioritas yang tinggi untuk aplikasi jendela ( windowing application) sehingga menghasilkan performance yang lebih baik. Seperti TS, range IA berkisar 0-59.
Tabel . Solaris dispatch table for interactive and time sharing threads
PriorityTime quantumTime quantum expiredreturn from sleep
0200050
5200050
10160051
15160551
201201052
251201552
30802053
35802554
40403055
45403556
50404058
55404558
59204959
Keterangan:
  1. Priority: prioritas berdasarkan kelas untuk time sharing dan interactive class. Nomor yang lebih tinggi menunjukkan prioritas yang lebih tinggi.
  1. Time quantum: waktu kuantum untuk setiap prioritas. Dapat diketahui bahwa fungsi waktu kuantum berbanding terbalik dengan prioritasnya.
  1. Time quantum expired: Prioritas terbaru untuk thread yang telah habis time slices-nya tanpa diblok. Dapat dilihat dari tabel bahwa thread yang CPU-boundtetap mempunyai prioritas yang rendah.
  1. Return from sleep: Prioritas thread yang kembali dari sleeping(misalnya menunggu dari M/K). Seperti yang terlihat dari tabel ketika M/K berada di waiting thread, prioritasnya berada antara 50-59, hal ini menyebabkan response time yang baik untuk proses yang interaktif.
  1. Fixed Priority (FX). Thread di kelas fixed priority memiliki range prioritas (0-59) yang sama seperti di time-sharing class; tetapi, prioritas mereka tidak akan berubah.
  2. Fair Share Scheduler (FSS). Thread yang diatur oleh FSS dijadwalkan berdasar pembagian sumber daya dari CPU yang tersedia dan dialokasikan untuk himpunan proses-proses (yang dikenal sebagai project). FS juga berkisar 0-59. FSS and FX baru mulai diimplementasikan di Solaris 9.
Seperti yang telah diketahui, setiap kelas penjadwalan mempunyai himpunan dari prioritas-prioritas. Tetapi, penjadwal mengubah class-specific priorities menjadi global priorities kemudian memilih threaddengan prioritas paling tinggi untuk dijalankan. Thread yang dipilih tersebut jalan di CPU sampai thread tersebut (1) di- block, (2) habis time slices-nya, atau (3) dihentikan oleh thread dengan prioritas yang lebih tinggi. Jika ada beberapa thread dengan prioritas yang sama, penjadwal akan menggunakan Round-Robin queue. Seperti yang pernah dijelaskan sebelumnya, Solaris terdahulu menggunakan many-to-many model tetapi solaris 9 berubah menggunakan one-to-one model.
PENJADWALAN PROSES SISTEM OPERASI LINUX

Company /developerLinus Torvalds and many others
Programmed inAssemblyC
OS familyUnix-like
Working stateCurrent
Source modelFree and open source software
Latest stable release2.6.35.3 (August 20, 2010; 3 days ago)[1] [+/−]
Latest unstable release2.6.36-rc2 (August 23, 2010; 0 days ago)[2][+/−]
Marketing targetDesktops, servers, embedded devices
Availablelanguage(s)Multi-lingual
Availableprogramming languages(s)AssemblyCC++
Supported platformsIA-32MIPSx86-64SPARC,DEC AlphaItaniumPowerPC,ARMm68kPA-RISCs390,SuperHM32R and more
Kernel typeMonolithic
UserlandGNU and others
Default user interfaceGraphical (X Window System)
LicenseVarious including GNU General Public LicenseBSD LicenseApache LicenseMIT License, and others[3]
Officialwebsitehttp://www.kernel.org
Mulai di versi 2.5, Kernel linux dapat berjalan di berbagai algoritma penjadwalan UNIX tradisional. Dua masalah dengan penjadwal UNIX tradisional adalah tidak disediakannya dukungan yang cukup untuk SMP (symmetric multiprocessor) sistem dan tidak diperhitungkan dengan baik jumlah tasks pada sistem yang berkembang. Dalam versi 2.5, penjadwal memeriksa dengan teliti hal tersebut, dan sekarang kernel juga menyajikan algoritma penjadwalan yang dapat run dalam waktu yang konstan tidak tergantung dari jumlah tasks dalam sistem. Penjadwal yang baru juga menyediakan peningkatan dukungan untuk SMP, termasuk processor affinity dan load balancing, sebaik dalam menyediakan keadilan dan dukungan terhadap interactive tasks.
Penjadwal linux adalah preemptive, algoritmanya berdasarkan prioritas dengan dua range prioritas yang terpisah: real-time range dari 0-99 dan nice value berkisar dari 100-140. Dua range ini dipetakan menjadi global priority scheme dimana nilai yang lebih rendah memiliki prioritas yang lebih tinggi. Tidak seperti penjadwal yang lain, Linux menetapkan prioritas yang lebih tinggi memiliki waktu kuantum yang lebih panjang dan prioritas yang lebih rendah memiliki waktu kuantum yang lebih pendek.
Linux mengimplementasikan real time scheduling seperti yang didefinisikan oleh POSIX 1.b: First Come First Served dan Round Robin. Sistem waktu nyata( real time)diberikan untuk task yang prioritasnya tetap. Sedangkan task yang lainnya memiliki prioritas yang dinamis berdasakan nice values ditambah atau dikurangi dengan 5. Interaktifitas sebuah task menentukan apakah nilai 5 tersebut akan ditambah atau dikurangi dari nice value. Task yang lebih interaktif mempunyai ciri khas memiliki sleep times yang lebih lama dan karena itu maka ditambah dengan -5, karena penjadwal lebih menyukaiinteractive task. Hasil dari pendekatan ini akan membuat prioritas untuk interactive task lebih tinggi. Sebaliknya, task dengan sleep time yang lebih pendek biasanya lebih CPU-bound jadi prioritasnya lebih rendah.

Gambar . Hubungan antara prioritas dan waktu kuantum
Task yang berjalan memenuhi syarat untuk dieksekusi oleh CPU selama time slice-nya masih ada. Ketika sebuah task telah kehabisan time slice-nya, maka task tersebut akan expired dan tidak memenuhi syarat untuk dieksekusi lagi sampai semua task yang lain sudah habis waktu kuantumnya. Kernel mengatur daftar semua task yang berjalan di runqueue data structure. Karena dukungan Linux untuk SMP, setiap prossesor mengatur runqueue mereka sendiri dan penjadwalan yang bebas. Setiap runqueue terdiri dari dua array prioritas – active dan expiredActive array terdiri dari semua task yang mempunyai sisa waktu time slices, dan expired array terdiri dari task yang telah berakhir. Setiap array prioritas ini memiliki daftar task indexed berdasakan prioritasnya. Penjadwal memilih task dengan prioritas paling tinggi di active array untuk dieksekusi dalam CPU. Di mesin multiprossesor, ini berarti setiap prossesor menjadwalkan prioritas paling tinggi dalam runqueue structuremasing-masing. Ketika semua tasktelah habis time slices-nya (dimana, active array-nya sudah kosong), dua array prioritas bertukar; expired array menjadi active array, dan sebaliknya.

Gambar . Daftar task indexed berdasarkan prioritas
Penghitungan ulang dari task yang memiliki prioritas yang dinamis berlangsung ketika task telah menyelesaikan waktu kuantumnya dan akan dipindahkan ke expired array. Jadi, ketika ada dua larik ( array) ditukar, semua task di array aktif yang baru ditentukan prioritasnya yang baru dan disesuaikan juga time slices-nya.
PENJADWALAN PROSES SISTEM OPERASI WINDOWS XP 

DeveloperMicrosoft Corporation
Release dateRTM: August 24, 2001
Retail: October 25, 2001 (info)
Current version5.1.2600.5512 Service Pack 3 (x86 SP3) (21 April 2008; 2 years ago) (info)
Source modelClosed sourceShared source[1]
LicenseMicrosoft-EULA
Kernel typeHybrid
Update methodWindows Update
Platform supportIA-32x86-64IA-64
WebsiteWindows XP: Homepage
Windows XP menggunakan algoritma, prioritas penjadwalan quantum-based berbasis reemptive priority scheduling .
Gambar Proses Pada Windows Xp
Threads dijadwalkan dalam proses, Karena prioritas preemptive algoritma diimplementasikan dengan beberapa queue, dapat dianggap sebagai algoritma multiple feedback-queue . Namun, masing-masing Threads biasanya terbatas pada kelompok kecil dari 5 level prioritas,
Preemption dapat terjadi karena salah satu dari 4 alasan:
    • thread menjadi prioritas lebih tinggi-siap
    • thread berakhir
    • kuantum habis waktu
    • thread melakukan panggilan sistem pemblokiran, seperti untuk I / O, dalam hal ini meninggalkan keadaan ready menjadi keadaan menunggu.
Gambar Quatum pada windows XP
32 tingkat prioritas digunakan, di mana prioritas 31 merupakan prioritas tertinggi dan prioritas 0 adalah prioritas terendah
    • memori manajemen thread: prioritas 0
    • variabel kelas prioritas (1-15)
    • real-time kelas prioritas (16-31)
  • Threads di kelas real-time telah tetap prioritasnya.
  • Threads yang berjalan selalu dengan tingkat prioritas tertinggi.
  • Jika tidak ada thread yang ready, Threads idle dijalankan.
  • Ketika waktu quantum thread habis, prioritasnya diturunkan, tetapi prioritasnya tidak pernah diturunkan terlalu jauh.
Ketika Threads menjadi ready setelah keadaan menunggu, maka diberikan prioritas tertinggi setiap threads dari proses yang terkait dengan program yang saat ini pengguna gunakan diberikan prioritas lebih .

Sumber : http://ryan532.blogspot.com/2014/11/penjadwalan-proses-pada-sistem-operasi.html

Manajemen Proses Sistem Operasi

     Proses adalah sebuah program yang sedang dieksekusi. Sedangkan program adalah kumpulan instruksi yang ditulis ke dalam bahasa yang dimengerti sistem operasi. Sebuah proses membutuhkan sejumlah sumber daya untuk menyelesaikan tugasnya. Sumber daya tersebut dapat berupa CPU time, alamat memori, berkas-berkas, dan perangkat-perangkat M/K (masukkan-keluaran). Sistem operasi mengalokasikan sumber daya-sumber daya tersebut saat proses itu diciptakan atau sedang diproses/dijalankan. Ketika proses tersebut berhenti dijalankan, sistem operasi akan mengambil kembali semua sumber daya agar bisa digunakan kembali oleh proses lainnya.
Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen proses seperti:
      Membuat dan menghapus proses pengguna dan sistem proses
Sistem operasi bertugas mengalokasikan sumber daya yang dibutuhkan oleh sebuah proses dan kemudian mengambil sumber daya itu kembali setelah proses tersebut selesai agar dapat digunakan untuk proses lainnya.
      Menunda atau melanjutkan proses
Sistem operasi akan mengatur proses apa yang harus dijalankan terlebih dahulu berdasarkan berdasarkan prioritas dari proses-proses yang ada. Apa bila terjadi 2 atau lebih proses yang mengantri untuk dijalankan, sistem operasi akan mendahulukan proses yang memiliki prioritas paling besar.
      Menyediakan mekanisme untuk proses sinkronisasi 
Sistem operasi akan mengatur jalannya beberapa proses yang dieksekusi bersamaan. Tujuannya adalah menghindarkan terjadinya inkonsistensi data karena pengaksesan data yang sama, juga untuk mengatur urutan jalannya proses agar setiap proses berjalan dengan lancar.
  • Menyediakan mekanisme untuk proses komunikasi 
Sistem operasi menyediakan mekanisme agar beberapa proses dapat saling berinteraksi dan berkomunikasi (contohnya berbagi sumber daya antar proses) satu sama lain tanpa menyebabkan terganggunya proses lainnya.
  • Menyediakan mekanisme untuk penanganan deadlock 
Deadlock adalah suatu keadaan dimana sistem seperti terhenti karena setiap proses memiliki sumber daya yang tidak bisa dibagi dan menunggu untuk mendapatkan sumber daya yang sedang dimiliki oleh proses lain. Saling menunggu inilah yang disebut deadlock(kebuntuan). Sistem operasi harus bisa mencegah, menghindari, dan mendeteksi adanya deadlock. Jikadeadlock terjadi, sistem operasi juga harus dapat memulihkan kondisi sistemnya.

Manajemen memori utama
Sistem operasi memiliki tugas untuk mengatur bagian memori yang sedang digunakan dan mengalokasikan jumlah dan alamat memori yang diperlukan, baik untuk program yang akan berjalan maupun untuk sistem operasi itu sendiri. Tujuan dari manajemen memori utama adalah agar utilitas CPU meningkat dan untuk meningkatkan efisiensi pemakaian memori.
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 M/K. Memori utama termasuk tempat penyimpanan data yang yang bersifat volatile(tidak permanen), yaitu data akan hilang kalau komputer dimatikan.
Sistem komputer modern memiliki sistem hirarki memori, artinya memori yang ada di komputer disusun dengan tingkatan kecepatan dan kapasitas yang berbeda. Memori yang memiliki kecepatan sama dengan kecepatan prosesor memiliki kapasitas yang kecil, berkisar hanya dari ratusan KB hingga 4 MB dengan harga yang sangat mahal. Sedangkan memori utama yang kecepatannya jauh di bawah kecepatan prosesor memiliki kapasitas yang lebih besar, berkisar dari 128 MB hingga 4 GB dengan harga yang jauh lebih murah. Sistem hirarki memori ini memiliki tujuan agar kinerja komputer yang maksimal bisa didapat dengan harga yang terjangkau.
Sistem operasibertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen mempri seperti:
  • Menjaga track dari memori yang sedang digunakan dan siapa yang menggunaknnya.
  • Memilih program yang akan di-load ke memori.
  • Mengalokasikan dan meng-dealokasikan ruang memori sesuai kebutuhan.

Manajemen memori sekunder
Penyimpanan sekunder ( secondary storage) adalah sarana penyimpanan yang berada satu tingkat di bawah memori utama sebuah komputer dalam hirarki memori. Tidak seperti memori utama komputer, penyimpanan sekunder tidak memiliki hubungan langsung dengan prosesor melalui bus, sehingga harus melewati M/K.
Sarana penyimpanan sekunder memiliki ciri-ciri umum sebagai berikut:
  • Non volatile(tahan lama)
Walaupun komputer dimatikan, data-data yang disimpan di sarana penyimpanan sekunder tidak hilang. Data disimpan dalam piringan-piringan magnetik.
  • Tidak berhubungan langsung dengan bus CPU
Dalam struktur organisasi komputer modern, sarana penyimpanan sekunder terhubung dengan northbridgeNorthbridge yang menghubungkan sarana penyimpanan sekunder pada M/K dengan bus CPU.
  • Lambat
Data yang berada di sarana penyimpanan sekunder memiliki waktu yang lebih lama untuk diakses ( read/write) dibandingkan dengan mengakses di memori utama. Selain disebabkan oleh bandwidth bus yang lebih rendah, hal ini juga dikarenakan adanya mekanisme perputaran head dan piringan magnetik yang memakan waktu.
  • Harganya murah
Perbandingan harga yang dibayar oleh pengguna per byte data jauh lebih murah dibandingkan dengan harga memori utama.
Sarana penyimpanan sekunder memiliki fungsi-fungsi sebagai berikut:
  • Menyimpan berkas secara permanen
Data atau berkas diletakkan secara fisik pada piringan magnet dari disk, yang tidak hilang walaupun komputer dimatikan ( non volatile).
  • Menyimpan program yang belum dieksekusi prosesor
Jika sebuah program ingin dieksekusi oleh prosesor, program tersebut dibaca dari disk, lalu diletakkan di memori utama komputer untuk selanjutnya dieksekusi oleh prosesor menjadi proses.

  • Memori virtual
Adalah mekanisme sistem operasi untuk menjadikan beberapa ruang kosong dari disk menjadi alamat-alamat memori virtual, sehingga prosesor bisa menggunakan memorivirtual ini seolah-olah sebagai memori utama. Akan tetapi, karena letaknya di penyimpanan sekunder, akses prosesor ke memori virtual menjadi jauh lebih lambat dan menghambat kinerja komputer.

Sistem operasi memiliki peran penting dalam manajemen penyimpanan sekunder. Tujuan penting dari manajemen ini adalah untuk keamanan, efisiensi, dan optimalisasi penggunaan sarana penyimpanan sekunder.

Manajemen file
File atau berkas adalah representasi program dan data yang berupa kumpulan informasi yang saling berhubungan dan disimpan di perangkat penyimpanan. Sistem berkas ini sangatlah penting, karena informasi atau data yang disimpan dalam berkas adalah sesuatu yang sangat berharga bagi pengguna. Sistem operasi harus dapat melakukan operasi-operasi pada berkas, seperti membuka, membaca, menulis, dan menyimpan berkas tersebut pada sarana penyimpanan sekunder. Oleh karena itu, sistem operasi harus dapat melakukan operasi berkas dengan baik.
Sistem operasi memberikan tanggapan terahadap manajemen file untuk aktivitas-aktivitas sebagai berikut:
  • Pembuatan dan penghapusan file/berkas.
  • Penghapusan dan pembuatan direktori.
  • Mendukung manipulasi file/berkas dan direktori.
  • Memetakkan berkas ke secondary storage.
  • Mem-backup file/berkas kemedia penyimpanan yang permanen (non-volatile).

Manajemen input-output I/O atau masukkan-keluaran M/K
Pekerjaan utama yang paling sering dilakukan oleh sistem komputer selain melakukan komputasi adalah Masukan/Keluaran (M/K). Dalam kenyataannya, waktu yang digunakan untuk komputasi lebih sedikit dibandingkan waktu untuk M/K. Ditambah lagi dengan banyaknya variasi perangkat M/K sehingga membuat manajemen M/K menjadi komponen yang penting bagi sebuah sistem operasi. Sistem operasi juga sering disebut device manager, karena sistem operasi mengatur berbagai macam perangkat ( device). Contohnya: user menggunakan operasi yang sama untuk membaca berkas padahard-disk, CD-ROM, flashdisk, floppy disk, dll.
Fungsi-fungsi sistem operasi untuk sistem M/K:
  • Penyanggaan ( buffering)
Menampung data sementara dari/ke perangkat M/K.
  • Penjadwalan ( scheduling)
Melakukan penjadualan pemakaian M/K sistem supaya lebih efisien.
  • Spooling
Meletakkan suatu pekerjaan program pada penyangga, agar setiap perangkat dapat mengaksesnya saat perangkat tersebut siap.
  • Menyediakan driver perangkat yang umum
Driver digunakan agar sistem operasi dapat memberi perintah untuk melakukan operasi pada perangkat keras M/K yang umum, seperti optical drive, media penyimpanan sekunder, dan layar monitor.
  • Menyediakan driver perangkat yang khusus
Driver digunakan agar sistem operasi dapat memberi perintah untuk melakukan operasi pada perangkat keras M/K tertentu, seperti kartu suara, kartu grafis, danmotherboard.

Jaringan (sistem terdistribusi)
Dukungan terhadap komunikasi data antar perangkat komputer mutlak diperlukan. Pada model sistem terdistribusi, dimana sistem operasi mengatur mekanisme penjadualan pengguna resource komputer dalam jaringan, maka sekumpulan prosesor yang tidak terbagi memori atau clock diatur oleh sistem operasi komputer host untuk pengguna prosesor dan alokasi tempat penyimpanan serta mekanisme pendistribusian data maupun proses yang dilakukan.
Tiap prosesor mempunyai memori sendiri, prosesor-prosesor tersebut terhubung melalui jaringan komunikasi, sistem terdistribusi menyediakan akses pengguna ke bermacam sumber daya sistem. Akses tersebut menyebabkan:
  • Computation speed-up (proses komputasi semakin cepat).
  • Increased data availability (peningkapan ketersediaan data).
  • Enhanced reliability (peningkapan kemampuan)

Sistem proteksi
Proteksi adalah mekanisme sistem operasi untuk mengontrol akses terhadap beberapa objek yang diproteksi dalam sistem operasi. Objek-objek tersebut bisa berupa perangkat keras (seperti CPU, memori, disk, printer, dll) atau perangkat lunak (seperti program, proses, berkas, basis data, dll). Di beberapa sistem, proteksi dilakukan oleh sebuah program yang bernama reference monitor. Setiap kali ada pengaksesan sumber daya PC yang diproteksi, sistem pertama kali akan menanyakan reference monitor tentang keabsahan akses tersebut. Reference monitor kemudian akan menentukan keputusan apakah akses tersebut diperbolehkan atau ditolak.
Secara sederhana, mekanisme proteksi dapat digambarkan dengan konsep domainDomain adalah himpunan yang berisi pasangan objek dan hak akses. Masing-masing pasangan domain berisi sebuah objek dan beberapa akses operasi (seperti read, write, execute) yang dapat dilakukan terhadap objek tersebut. Dalam setiap waktu, setiap proses berjalan dalam beberapa domain proteksi. Hal itu berarti terdapat beberapa objek yang dapat diakses oleh proses tersebut, dan operasi-operasi apa yang boleh dilakukan oleh proses terhadap objek tersebut. Proses juga bisa berpindah dari domain ke domain lain dalam eksekusi.

sumber : https://rambingmeilytha.wordpress.com/2014/05/29/tugas-makalah-sistem-operasi/