Labels

Saturday, January 26, 2013

TUGAS 2 SISTEM OPERASI


a. Batch
Batch sistem yaitu tugas yang dikerjakan dalam satu rangkaian atau mengumpulkan job dalam satu angkatan lalu di eksekusi secara berurutan. 

b. Multiprogramming
Multiprogramming yaitu kegiatan menjalankan beberapa program pada memori pada satu waktu. Dengan multiprogramming, beberapa tugas disimpan dalam memori dalam satu waktu. CPU digunakan secara bergantian sehingga mengurangi total waktu yang dibutuhkan untuk menyelesaikan tugas-tugas tersebut.

c. Time Sharing
Time Sharing adalah sebuah pembagian sumber daya yang ada pada komputer dengan cara multiprogramming dan multitasking. Dengan time sharing pengguna dapat berinteraksi secara bersamaan dengan menggunakan satu komputer.

d. Multiprocessor
Multiprocessor adalah sistem komputer dengan dua atau lebih CPU identik yang membagi akses secara penuh kepada RAM

e. Sistem terdistribusi
Sistem terdistibusi merupakan sebuah sistem yang komponennya berada pada jaringan komputer. Komponen tersebut saling berkomunikasi & melakukan koordinasi hanya dengan pengiriman pesan (message passing). Dengan kata lain sistem ini melibatkan lebih dari satu komputer dalam suatu infrastruktur jaringan baik local,internet bahkan wireless.

f. Cluster
Cluster adalah kumpulan sektor media penyimpanan yang digunakan oleh sistem operasi sebagai sebuah kesatuan, yang dapat digunakan untuk menyimpan informasi di dalam berkas atau direktoriCluster dimaksudkan untuk menghemat dalam melakukan manajemen terhadap struktur data di dalam hard disk, sehingga sistem berkas tidak akan mengalokasikan sektor disk fisik, tetapi sekumpulan sektor yang saling berdekatan.

g. Real Time
Suatu sistem dikatakan real time jika dia tidak hanya mengutamakan ketepatan pelaksanaan instruksi/tugas, tapi juga interval waktu tugas tersebut dilakukan. Dengan kata lain, sistem real time adalah sistem yang menggunakan deadline, yaitu pekerjaan harus selesai jangka waktu tertentu. 

h. Handheld
Handheld computer adalah komputer yang cukup kecil sehingga dapat digenggam (hand-held) dan dapat dibawa dengan mudah. Komputer genggam ini dapat bekerja dengan fungsi yang hampir sama dengan komputer biasa. Meskipun sangat mudah untuk dibawa, komputer genggam tidak dapat menggantikan komputer biasa (PC) karena hanya memiliki keyboard dan layar yang lebih kecil. Namun kebanyakan handheld yang kita jumpai saat ini sudah menggunakan sistem touchscreen 

Perbedaan Single programming dan Multi programming
Pada sistem single programming, satu processor mengerjakan satu program yang ada di memori utama, sedangkan pada sistem multiprogramming, satu processor dapat mengerjakan banyak program yang ada di memori utama.

Perbedaan Asymmetric Multiprocessing dan Symmetric Multiprocessing
Dalam Asymmetric Multiprocessing satu prosesor menjadi master dan prosesor lainnya sebagai slave. Master Processor bertugas untuk menjadwalkan dan mengalokasikan proses yang akan dijalankan oleh Slave Processors.
Sedangkan pada symmetric Multiprocessing, setiap prosesor menjadwalkan diri sendiri. Setiap prosesor memeriksa ready queue dan memilih proses yang akan dieksekusi. Penjadwalan terlaksana dengan menjadwalkan setiap prosesor untuk memeriksa antrian dan memilih suatu proses untuk dieksekusi.
asymmetric multiprocessing

symmetric multiprocessing

Perbedaan sistem paralel dan sistem terdistribusi
Pada sistem paralel tiap processor dapat menggunakan memori atau clock bersama-sama, sedangkan pada sistem terdistribusi kumpulan processor tidak dapat digunakan secara bersamaan.

Perbedaan sistem terdistribusi dan sistem terklaster
Sistem terdistribusi mendistribusikan komputasi di antara beberapa processor. Processor berkomunikasi dengan processor lain melalui saluran komunikasi, misalnya bus kecepatan tinggi atau saluran telepon. Sedangkan sistem terklaster adalah pengembangan dari sistem terdistribusi. Perbedaan sistem terklaster dengan sistem terdistribusi adalah pada sistem terklaster memungkinkan dua atau lebih sistem untuk membagi penyimpan sekunder (storage) bersama-sama. Sistem terklaster mempunyai kehandalan sistem yang tinggi seperti pada sistem terdistribusi.

Symmetric dan asymmetric clustering Symmetric clustering yaitu sebuah sistem dimana semua host menjalankan aplikasi, sedangkan asymmetric clustering yaitu satu server menjalankan aplikasi sementara server lainnya standby.

Thursday, January 24, 2013

EVOLUSI SISTEM OPERASI


Evolusi dari sebuah sistem operasi berawal dari sistem serial processing, simple batch, multipogrammed, dan time-sharing.
Serial Processing
Programmer berinteraksi secara langsung dengan hardware komputer karena belum ada Sistem Operasi. Komputer ini dijalankan dengan perangkat yang terdiri dari display light, toggle switch, dan beberapa jenis alat inputan. 
Sistem awal ini menunjukan 2 masalah utama, yaitu:
  • Scheduling: User bisa mendapatkan masalah dan tidak bisa menyelesaikannya, tetapi dipaksa untuk berhenti sebelum menyelesaikan masalahnya.
  • Setup Time: Sebuah program yang dipanggil Job, dapat terlibat memuat compiler ditambah high-level language program (source code) ke dalam memory. Menyimpan program yang sudah dicompile (object program) dan memuat serta menghubungkan object program dengan fungsi umum. Mode operasi ini bisa diistilahkan sebagai Serial Processing
Sebuah program yang dipanggil Job, dapat terlibat memuat compiler ditambah high-level language program (source code) ke dalam memori. Menyimpan program yang sudah di compile (object program) dan memuat serta menghubungkan object program dengan fungsi umum. Mode operasi ini bisa diistilahkan sebagai Serial Processing.
Simple Batch Systems
Ide utama di balik skema simple batch-processing adalah penggunaan bagian dari perangkat lunak yang dikenal sebagai monitor. Dengan jenis OS ini, pengguna tidak lagi memiliki akses langsung ke prosesor. Sebaliknya, pengguna menyerahkan Job pada kartu atau tape ke komputer operator, yang memaketkan Job bersama-sama secara berurutan dan menempatkan seluruh paket pada perangkat input, untuk digunakan oleh monitor. Setiap program akan dibangun untuk kembali ke monitor bila itu selesai mengolah, di mana titik monitor secara otomatis mulai memuat program berikutnya.
Proteksi Memori: saat pengguna menjalankan program, tidak boleh mengubah area yang ada di monitor.
  • Timer: Digunakan untuk mencegah sebuah job dari memonopoli sistem.
  • Privileged Instruction: Level instruksi mesin yang pasti mempunyai hak istimewa dan hanya bisa dijalankan oleh monitor.
  • Interuppts: Komputer awal tidak bisa melakukan ini.
  • User Mode: Kondisi dimana pada saat program user (Job) sedang dikesekusi oleh prosesor sehingga protected memory dan privileged instructions tidak bisa diakses
  • Kernel Mode: kondisi pada saat program monitor (OS)sedang dieksekusi oleh prosesor dan protected memory dan privileged instructions boleh diakses.
  • Apabila Overheat: User bisa mendapatkan masalah dan tidak bisa menyelesaikannya, tetapi dipaksa untuk berhenti sebelum menyelesaikan masalahnya.
Dukungan Hardware Bagi Model Monitor:
  • Proteksi Memori: saat pengguna menjalankan program, tidak boleh mengubah area yang ada di monitor.
  • Timer: Digunakan untuk mencegah sebuah job dari memonopoli sistem.
  • Privileged Instruction: Level instruksi mesin yang pasti mempunyai hak istimewa dan hanya bisa dijalankan oleh monitor.
  • Interuppts: Komputer awal tidak bisa melakukan ini.

Mode Pada Simple Batch Systems:
  • User Mode: Kondisi dimana pada saat program user (Job) sedang dikesekusi oleh prosesor sehingga protected memory dan privileged instructions tidak bisa diakses
  • Kernel Mode: kondisi pada saat program monitor (OS)sedang dieksekusi oleh prosesor dan protected memory dan privileged instructions boleh diakses.

 Kekurangan Simple Batch System:
Apabila overheat:
  • Sebagian lokasi memori ditempati oleh monitor
  • Sebagian prosesor digunakan untuk mengeksekusi monitor.
  • Waktu prosesor belum termanfaatkan secara maksimal karena prosesor sering idle (menganggur) karena I/O device jauh lebih lambat dibanding prosesor.

Multiprogrammed Batch Systems
Multiprogramming Batch systems ada tipe OS modern yaitu OS yang sudah mendukung multiprogramming atau yang biasa disebut multitasking. Tujuan dari OS ini adalah untuk utilisasi prosesor.
UniprogrammingProsesor harus menunggu instruksi i/o selesai sebelum bekerja lagi.
Multiprogramming Ketika satu Job perlu menunggu i/o, prosesor dapat berpindah ke job lain.
Seperti dengan sistem batch sederhana, sistem batch multiprogramming harus bergantung pada perangkat keras komputer tertentu Fitur tambahan yang paling penting yang berguna untuk multiprogramming adalah perangkat keras yang mendukung I/O interupsi dan DMA (akses memori langsung) Dengan interrupt-driven I/O atau DMA, prosesor dapat mengeluarkan perintah I/O untuk satu Job dan dilanjutkan dengan pelaksanaan Job lain sementara I/O dilakukan oleh controller. Saat perangkat operasi I/O selesai, prosesor terganggu dan kontrol akan diteruskan ke program interrupt penanganan di OS. kemudian akan melewati kontrol ke Job lain. Sistem Operasi Multiprogramming cukup canggih dibandingkan dengan program tunggal, atau Sistem uniprogramming. Untuk memiliki beberapa Job yang siap untuk menjalankan, Job harus disimpan dalam memori utama, dan memerlukan beberapa bentuk manajemen memori. Selain itu, jika beberapa Job siap untuk berjalan, prosesor harus memutuskan mana yang akan dijalankan ,keputusan ini membutuhkan algoritma untuk penjadwalan.
 Time-Sharing systems
Dalam kasus yang terakhir, teknik ini disebut time-sharing, karena waktu prosesor dibagi di antara beberapa pengguna. Dalam sistem time-sharing, beberapa pengguna secara bersamaan mengakses sistem melalui terminal, dengan interleaving OS pelaksanaan setiap program pengguna dalam ledakan pendek atau kuantum komputasi. Jadi, jika ada n pengguna aktif meminta layanan pada satu waktu, setiap pengguna hanya akan melihat pada 1 / n rata-rata kapasitas komputer yang efektif, tidak termasuk OS overhead. Namun, mengingat waktu reaksi manusia relatif lambat, respon waktu pada sistem yang dirancang harus sama dengan komputer khusus.
Timbulnya gagasan ini disebabkan karena komputer telah dapat digunakan untuk melakukan multiprogramming dan pada saat itu (sekitar tahun 1960) komputer sangatlah mahal dan berukuran besar sehingga tidak memungkinkan apabila satu user memiliki satu komputer.


STRUKTUR DASAR SISTEM OPERASI



1.      Sistem monolitik (monolithic system)
   Sistem operasi sebagai kumpulan prosedur dimana prosedur dapat saling dipanggil oleh prosedur lain di sistem bila diperlukan. Kernel berisi semua layanan yang disediakan sistem operasi untuk pemakai. Sistem operasi ditulis sebagai sekumpulan prosedur (a collection of procedures), yang dapat dipanggil setiap saat oleh pemakai saat dibutuhkan.

   Kelemahan :
·          Pengujian dan penghilangan kesalahan sulit karena tidak dapat dipisahkan dan dilokalisasi.
·          Sulit dalam menyediakan fasilitas pengamanan.
·          Merupakan pemborosan bila setiap komputer harus menjalankan kernel monolitik sangat besar sementara sebenarnya tidak memerlukan seluruh  layanan yang disediakan kernel.
·          Tidak fleksibel.
·          Kesalahan pemograman satu bagian dari kernel menyebabkan matinya seluruh sistem.

   Keunggulan :
·          Layanan dapat dilakukan sangat cepat karena terdapat di satu ruang alamat.

Kebanyakan UNIX sampai saat ini berstruktur monolitik. Meskipun monolitik yaitu seluruh komponen/subsistem sistem operasi terdapat di satu ruang alamat tetapi secara rancangan adalah berlapis. Rancangan adalah berlapis yaitu secara logik satu komponen/subsistem merupakan lapisan lebih bawah dibanding lainnya dan menyediakan layanan-layanan untuk lapisan-lapisan lebih atas. Komponen-komponen tersebut kemudia dikompilasi dan dikaitkan  (di-link) menjadi satu ruang alamat. Untuk mempermudah dalam pengembangan terutama pengujian dan fleksibilitas, kebanyakan UNIX saat ini menggunakan konsep kernel loadable modules,yaitu:
   · Bagian-bagian kernel terpenting berada di memori utama secara tetap.
   · Bagian-bagian esensi lain berupa modul yang dapat ditambahkan ke kernel saat diperlukan dan dicabut begitu tidak digunakan lagi di waktu jalan (run time).

2.      Sistem lapis (layered system)
   Sistem operasi dibentuk secara hirarki berdasar lapisan-lapisan, dimana lapisan-lapisan bawa memberi layanan lapisan lebih atas. Struktur berlapis dimaksudkan untuk mengurangi kompleksitas rancangan dan implementasi sistem operasi. Tiap lapisan mempunyai fungsional dan antarmuka masukan-keluaran antara dua lapisan bersebelahan yang terdefinisi bagus.

   Lapis-lapis dalam sistem operasi ada 6 lapis, yaitu :
   · Lapis 5 - The operator
     Berfungsi untuk pemakai operator.
   · Lapis 4 - User programs
     Berfungsi untuk aplikasi program pemakai.
   · Lapis 3 - I/O management
     Berfungsi untuk menyederhanakan akses I/O pada level atas.
   · Lapis 2 - Communication operators
     Berfungsi untuk mengatur komunikasi antar proses.
   · Lapis 1 -Memory and drum management
     Berfungsi untuk mengatur alokasi ruang memori atau drum magnetic.
   · Lapis 0 -Processor allocation and multiprogramming
Berfungsi untuk mengatur alokasi pemroses dan switching, multiprogramming dan pengaturan prosessor.

Keunggulan :
Memiliki semua keunggulan rancangan modular, yaitu sistem dibagi menjadi beberapa modul dan tiap modul dirancang secara independen. Tiap lapisan dapat dirancang, dikode dan diuji secara independen. Pendekatan berlapis menyederhanakan rancangan, spesifikasi dan implementasi sistem operasi.

Kelemahan :
Fungsi-fungsi sistem operasi harus diberikan ke tiap lapisan secara hati-hati.

3.      Virtual machines
Awalnya struktur ini membuat seolah-olah pemakai mempunyai seluruh komputer dengan simulasi atas pemroses yang digunakan. Sistem operasi melakukan simulasi mesin nyata. Mesin hasil simulasi digunakan pemakai, mesin maya merupakan tiruan seratus persen atas mesin nyata. Semua pemakai diberi iluasi mempunyai satu mesain yang sama-sama canggih.
Pendekatan ini memberikan fleksibilitas tinggi sampai memungkinkan sistem operasi-sistem operasi berbeda dapat dijalankan dimesin-mesin maya berbeda. Implementasi yang efisien merupakan masalah sulit karena sistem menjadi besar dan kompleks. Teknik ini mulanya digunakan pada IBM S/370. VM/370 menyediakan mesin maya untuk tiap pemakai. Bila pemakai log (masuk) sistem, VM/370 menciptakan satu mesin maya baru untuk pemakai itu.
Teknik ini berkembang menjadi operating system emulator sehingga sistem operasi dapat menjalankan aplikasi-aplikasi untuk sistem operasi lain.

Sistem operasi MS-Windows NT dapat menjalankan aplikasi untuk MS-DOS, OS/2 mode teks dan aplikasi Win16. Aplikasi tersebut dijalankan sebagai masukan bagi subsistem di MS-Windows NT yang mengemulasikan system calls yang dipanggil aplikasi dengan Win32 API (system calls di MS-Windows NT).

IBM mengembangkan WABI yang mengemulasikan Win32 API sehingga diharapkan sistem operasi yang menjalankan WABI dapat menjalankan aplikasi-aplikasi untuk MS-Windows.
Para sukarelawan pengembang Linux telah membuat DOSEMU agar aplikasi-aplikasi untuk MS-DOS dapat dijalankan di Linux, WINE agar aplikasi untuk MS-Windows dapat dijalankan di Linux, iBCS agar aplikasi-aplikasi untuk SCO-UNIX dapat dijalankan di Linux, dan sebagainya.

4.      Client-server model
Sistem operasi merupakan kumpulan proses dengan proses-proses dikategorikan sebagai server dan client, yaitu :
   · Server, adalah proses yang menyediakan layanan.
   · Client, adalah proses yang memerlukan/meminta layanan
     Proses client yang memerlukan layanan mengirim pesan ke server dan menanti pesan jawaban. Proses server setelah melakukan tugas yang diminta, mengirim hasil dalam bentuk pesan jawaban ke proses client. Server hanya menanggapi permintaan client dan tidak memulai dengan percakapan client. Kode dapat diangkat ke level tinggi, sehingga kernel dibuat sekecil mungkin dan semua tugas diangkat ke bagian proses pemaka. Kernel hanya mengatur komunikasi antara client dan server. Kernel yang ini popular dengan sebutan mikrokernel.
   · Permintaan pelayanan, seperti membaca sebuah blok file, sebuah user process (disebut client process) mengirimkan permintaan kepada sebuah server process, yang kemudian bekerja dan memberikan jawaban balik.
Masalah :
   · Tidak semua tugas dapat dijalankan di tingkat pemakai (sebagai proses pemakai).
Kesulitan ini diatasi dengan :
   · Proses server kritis tetap di kernel, yaitu proses yang biasanya berhubungan dengan perangkat keras.
   · Mekanisme ke kernel seminimal mungkin,sehingga pengaksesan ruang pemakai dapat dilakukan dengan cepat. Untuk sistem-sistem besar dengan banyak server dikehendaki supaya client transparan dalam meminta layanan sehingga tidak menyulitkan pemogram.

   Keunggulan :
   · Pengembangan dapat dilakukan secara modular.
   · Kesalahan (bugs) di satu subsistem (diimplementasikan sebagai satu proses) tidak merusak subsistem-subsistem lain, sehingga tidak mengakibatkan satu sistem mati secara keseluruhan.
   · Mudah diadaptasi untuk sistem tersebar.

   Kelemahan :
   · Layanan dilakukan lambat karena harus melalui pertukaran pesan.
   · Pertukaran pesan dapat menjadi bottleneck.

5.      Sistem Berorientasi Objek
Sistem operasi merealisasikan layanan sebagai kumpulan proses disebut sistem operasi bermodel proses. Pendekatan lain implementasi layanan adalah sebagai objek-objek. Sistem operasi yang distrukturkan menggunakan objek disebut sistem operasi berorientasi objek. Pendekatan ini dimaksudkan untuk mengadopsi keunggulan teknologi berorientasi objek.
Pada sistem yang berorientasi objek, layanan diimplementasikan sebagai kumpulan objek. Objek mengkapsulkan struktur data dan sekumpulan operasi pada struktur data itu. Tiap objek diberi tipe yang menandadi properti objek seperti proses, direktori, berkas, dan sebagainya. Dengan memanggil operasi yang didefinisikan di objek, data yang dikapsulkan dapat diakses dan dimodifikasi.
Model ini sungguh terstruktur dan memisahkan antara layanan yang disediakan dan implementasinya. Conoh sistem operasi yang berorientasi objek, antara lain : eden, choices, x-kernel, medusa, clouds, amoeba, muse, dan sebagainya. Sistem operasi MS Windows NT telah mengadopsi beberapa teknologi berorientasi objek tetapi belum keseluruhan.


LAYANAN SISTEM OPERASI



Tujuan dari sebuah sistem operasi adalah sebagai penghubung antara user dan hardware, dimana sistem operasi memberikan kemudahan-kemudahan agar user tidak harus mengakses hardware secara langsung dalam bahasa mesin, tetapi dalam bentuk layanan-layanan yang diberikan oleh sistem operasi.

Berikut ini adalah kategori-kategori layanan yang diberikan oleh sistem operasi:
·         Antarmuka. Sistem operasi menyediakan berbagai fasilitas yang membantu programmer dalam membuat program seperti editor. Walaupun bukan bagian dari sistem operasi, tapi layanan ini diakses melalui sistem operasi.
·         Eksekusi Program. Sistem harus bisa me- load program ke memori, dan menjalankan program tersebut. Program harus bisa menghentikan pengeksekusian baik secara normal maupun tidak (ada error).
·         Operasi Masukan/Keluaran. Program yang sedang dijalankan kadang kala membutuhkan Masukan/Keluaran. Untuk efisiensi dan keamanan, pengguna biasanya tidak bisa mengatur piranti masukan/keluaran secara langsung, untuk itulah sistem operasi harus menyediakan mekanisme dalam melakukan operasi masukan/keluaran.
·         Manipulasi Sistem Berkas. Program harus membaca dan menulis berkas, dan kadang kala juga harus membuat dan menghapus berkas.
·         Komunikasi. Kadang kala sebuah proses memerlukan informasi dari proses lain. Ada dua cara umum dimana komunikasi dapat dilakukan. Komunikasi dapat terjadi antara proses dalam satu komputer, atau antara proses yang berada dalam komputer yang berbeda tetapi dihubungkan oleh jaringan komputer. Komunikasi dapat dilakukan dengan share-memory atau message-passing, dimana sejumlah informasi dipindahkan antara proses oleh sistem operasi.
·         Deteksi Error. Sistem operasi harus selalu waspada terhadap kemungkinan error. Error dapat terjadi di CPU dan memori perangkat keras, masukan/keluaran, dan di dalam program yang dijalankan pengguna. Untuk setiap jenis error sistem operasi harus bisa mengambil langkah yang tepat untuk mempertahanan jalannya proses komputasi, misalnya dengan menghentikan jalannya program, mencoba kembali melakukan operasi yang dijalankan, atau melaporkan kesalahan yang terjadi agar pengguna dapat mengambil langkah selanjutnya.

Disamping pelayanan di atas, terdapat juga layanan-layanan lain yang bertujuan untuk mempertahankan efisiensi sistem itu sendiri. Layanan tambahan itu yaitu:
·         Alokasi Sumber Daya. Ketika beberapa pengguna menggunakan sistem atau beberapa program dijalankan secara bersamaan, sumber daya harus dialokasikan bagi masing-masing pengguna dan program tersebut.
·         Accounting. Kita menginginkan agar jumlah pengguna yang menggunakan sumber daya, dan jenis sumber daya yang digunakan selalu terjaga. Untuk itu maka diperlukan suatu perhitungan dan statistik. Perhitungan ini diperlukan bagi seseorang yang ingin merubah konfigurasi sistem untuk meningkatkan pelayanan.
        ·         Proteksi. Layanan proteksi memastikan bahwa segala akses ke sumber daya terkontrol; dan tentu saja keamanan terhadap gangguan dari luar sistem tersebut. Keamanan bisa saja dilakukan dengan terlebih dahulu mengindentifikasi pengguna. Ini bisa dilakukan dengan meminta password bila ingin menggunakan sumber daya.



KOMPONEN UTAMA SISTEM OPERASI



Sebuah sistem operasi terdiri dari banyak sekali komponen yang memiliki fungsinya masing-masing. Seluruh komponen yang menyusun sistem operasi tersebut saling bekerjasama untuk satu tujuan, yaitu efisiensi kerja seluruh perangkat komputer dan kenyamanan dalam penggunaan sistem operasi.
Dari berbagai macam sistem operasi yang ada, tidak semuanya memiliki komponen-komponen penyusun yang sama. Pada umumnya sebuah sistem operasi modern akan terdiri dari komponen sebagai berikut:

1.      Manajemen Proses
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. Sistem operasi mengalokasikan sumber daya-sumber daya tersebut saat proses itu diciptakan atau sedang diproses/dijalankan. Ketika proses tersebut berhenti, 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. 
·         Menunda atau melanjutkan proses. 
·         Menyediakan mekanisme untuk proses sinkronisasi. 
·         Menyediakan mekanisme untuk proses komunikasi. 
·         Menyediakan mekanisme untuk penanganan deadlock

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

3.     Manajemen Sistem Berkas

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 melakukan manajemen sistem berkas dalam beberapa hal:
·         Pembuatan berkas atau direktori. 
·         Penghapusan berkas atau direktori. 
·         Pembacaan dan menulis berkas. 
·         Meletakkan berkas pada sistem penyimpanan sekunder.

4.     Manajemen Sistem I/O

Pekerjaan utama yang paling sering dilakukan oleh sistem komputer selain melakukan komputasi adalah Input/Output (I/O).  Dalam kenyataannya, waktu yang digunakan untuk komputasi lebih sedikit dibandingkan waktu untuk I/O. Ditambah lagi dengan banyaknya variasi perangkat sehingga membuat manajemen I/O menjadi komponen yang penting bagi sebuah sistem operasi. Sistem operasi juga sering disebut device manager, karena sistem operasi mengatur berbagai macam perangkat (device).
Fungsi-fungsi sistem operasi untuk sistem I/O:
·         Penyanggaan ( buffering)
·         Penjadwalan ( scheduling)
·         Spooling
·         Menyediakan driver perangkat yang umum
·         Menyediakan driver perangkat yang khusus

5.     Manajemen Penyimpanan 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 I/O.
Sarana penyimpanan sekunder memiliki ciri-ciri umum sebagai berikut:
·         Non volatile (permanen)
·         Tidak berhubungan langsung dengan bus CPU
·         Akses lambat
·         Harganya lebih murah
Sarana penyimpanan sekunder memiliki fungsi-fungsi sebagai berikut:
·         Menyimpan berkas secara permanen
·         Menyimpan program yang belum dieksekusi prosesor
·         Memori virtual
Sistem operasi memiliki peran penting dalam manajemen penyimpanan sekunder. Tujuan penting dari manajemen ini adalah untuk keamanan, efisiensi, dan optimalisasi penggunaan sarana penyimpanan sekunder.

6.     Proteksi dan Keamaman

Seringkali, istilah keamanan dan proteksi membingungkan dalam penggunaannya. Untuk mengurangi kebingungan itu, istilah keamanan digunakan untuk penggambaran secara umum, sedangkan proteksi digunakan untuk menggambarkan secara teknis mekanisme perlindungan sistem operasi.

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 domain. Domain 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.

Keamanan

Pengguna sistem komputer sudah tentu memiliki data-data dan informasi yang berharga baginya. Melindungi data-data ini dari pihak-pihak yang tidak berhak merupakan hal penting bagi sistem operasi. Inilah yang disebut keamanan ( security).
Sebuah sistem operasi memiliki beberapa aspek tentang keamanan. Aspek-aspek ini berhubungan terutama dengan hilangnya data-data. Sistem komputer dan data-data di dalamnya terancam dari aspek ancaman (threats), aspek penyusup ( intruders), dan aspek musibah.
Dari aspek ancaman, secara umum sistem komputer menghadapi ancaman terbukanya data-data rahasia, pengubahan data-data oleh orang yang tidak berhak, juga pelumpuhan sistem dengan adanya Denial of Service(DoS).
Dari aspek penyusup, saat ini banyak orang mencoba masuk ke dalam sistem operasi dengan berbagai macam tujuan. Ada yang hanya sekedar mencoba menjebol sistem operasi ( hacking), ada yang mencoba mengambil keuntungan dari tindakan penjebolah itu ( cracking).
Tidak hanya disusupi oleh manusia, sistem operasi juga menghadapi ancaman keamanan dari program-program penyusup, yang disebut malicious program atau malware. Malware adalah program yang menyusup ke dalam sistem operasi dan memiliki tujuan-tujuan tertentu seperti mengambil data-data pribadi, mengambil alih komputer, dan seringkali bertujuan merusak. Yang termasuk kategori malware adalah virus, keylogger, worm,trojan, dan spyware.
Yang terakhir, sistem operasi dan data-data di dalamnya terancam justru dari hal-hal non teknis, yaitu dari musibah. Sistem operasi terancam akibat adanya bencana alam (banjir, lumpur panas, gempa bumi, dan lain-lain), kerusakan perangkat keras atau lunak, bahkan kelalaian dari penggunanya.
Perkembangan dunia internet saat ini membawa konsekuensi meningkatnya resiko keamanan terhadap sistem operasi. Oleh karena itu, sistem operasi harus memiliki ketahanan keamanan. Bagi kebanyakan pengembang sistem operasi saat ini, keamanan adalah salah satu permasalahan utama.