Minggu, 11 November 2012

Definisi PSO



Deskripsi mata kuliah sistem operasi :
                Mata kuliah sistem operasi mempelajari mengenai gambaran umum sistem komputer, pengertian sistem operasi,  manajemen proses, manajemen memori, manajemen perangkat input/output, manajemen file, algoritma penjadwalan job, deadlock dan algoritma pencegahannya, komunikasi antar proses, multiprogramming, kongkurensi, sistem paging, sistem manajemen file dan keamanan sistem.
Tinjauan umum sistem komputer
 Sistem operasi berkaitan erat dengan pengoperasian komputer. Konsep dan teknologi sistem operasi berkembang sejalan dengan perkembangan teknologi komputer. Komputer merupakan perangkat elektronik yang dirancang untuk membantu menyelesaikan permasalahan yang dihadapi manusia Dewasa ini komputer digunakan untuk menyelesaikan perhitungan akuntansi, komputasi numerik, pengelolaan basis data perusahaan dan hiburan seperti memutar video dan memainkan games. Dengan kata lain komputer  dapat digunakan  untuk berbagai tujuan.
Sistem komputer adalah suatu jaringan elektronik yang terdiri dari hardware dan software yang melakukan tugas tertentu (menerima input, memproses input, menyimpan perintah-perintah, dan menyediakan output dalam bentuk informasi). Selain itu dapat pula diartikan sebagai elemen-elemen yang terkait untuk menjalankan suatu aktivitas dengan menggunakan komputer.
Hardware  ialah Perangkat keras (komponen) pada komputer  yang berfungsi sebagai pemroses, input atau output data.
Contoh : Keyboard, monitor, CPU
Software adalah Perangkat lunak (program) yang  memproses data pada sistem komputer
Contohnya :  Program-program komputer
Software terbagi menjadi :
-Software sistem  Contoh : Windows, Linux, Mac os
-Software aplikasi  Contoh : Photoshop, Visual studio  Internet explore.
Hardware terdiri  empat komponen : 1. Pemroses  2. Memori utama  3. Perangkat Input & output  4. Interkoneksi antar komponen
1.       PEMROSES (processor) Berfungsi  Mengendalikan operasi komputer dan  melakukan fungsi pemrosesan data.
Terdiri : 1. ALU (Aritmetic Logic Unit) berfungsi mengeksekusi operasi aritmetika dan logika
                 2. CU (Control Unit) berfungsi mengatur eksekusi dan mengendalikan  seluruh komponen komputer
                 3. Register-register  berfungsi sebagai tempat menampung instruksi, data, maupun alamat data
Contoh : Intel pentium 4, intel core 2 duo, AMD
 Prosesor merupakan otak komputer yang berfungsi mengendalikan operasi komputer dan melakukan manipulasi, operasi logic, proses menghitung dan mengelola aliran data dengan membaca instruksi dalam memori utama (fungsi pemrosesan data)
Langkah kerja processor :
1. Mengambil instruksi biner dari memori  utama. 2. Mendekode instruksi menjadi operasi –operasi sederhana. 3. Melakukan operasi-operasi tersebut. Operasi pada processor ada 3 tipe: -Operasi aritmatika  -Operasi logika  -Operasi pengendalian
2. Memori utama (main memory)  Berfungsi menyimpan data dan program .
Bersifat Volatile, tidak dapat mempertahankan data dan program yang disimpan bila  sumber daya listrik dihentikan.
Contohnya : RAM (random access memory)
Memory bekerja dengan menyimpan dan menyuplai data-data penting yg dibutuhkan Processor dengan cepat untuk diolah menjadi informasi. Sebagai contoh, saat anda membuka sebuah aplikasi misalnya browser mozila firefox maka prosesor akan membuka program atau aplikasi tersebut dari hardisk dan kemudian akan meload nya ke memory atau RAM.
Von Neumann Concept  :Program (kumpulan instruksi) disimpan di suatu tempat (memori) untuk kemudian menunggu giliran untuk dieksekusi
Arsitektur von Neumann (atau Mesin Von Neumann) adalah arsitektur yang diciptakan oleh John von Neumann (1903-1957). Arsitektur ini digunakan oleh hampir semua komputer saat ini.
  • Arsitektur Von Neumann menggambarkan komputer dengan empat bagian utama: Unit Aritmatika dan Logis (ALU), unit kontrol, memori, dan alat masukan dan hasil (secara kolektif dinamakan I/O). Bagian ini dihubungkan oleh berkas kawat, “bus”
Mengetahui penggunaan memori pada Windows
Kita dapat melihat berapa banyak memori yang dibutuhkan ketika menjalankan suatu aplikasi atau program. Caranya klik kanan pada panel bar desktop layar komputer kemudian pilih Task Manager, atau melalui tombol CRTL + ALT + DEL pada keyboard.
Perhatikan pada tap Applications, maka akan menunjukkan aplikasi atau program yang sedang aktif saat ini,
Pada tap performance perhatikan pada kolom PF usage, disitu terdapat sejumlah angka (itu adalah jumlah memori yang dibutuhkan untuk menampilkan aplikasi). Semakin banyak aplikasi yang aktif maka semakin besar memori yang dibutuhkan.
Perlu diketahui juga, meskipun kita tidak membuka aplikasi sama sekali bukan berati kolom PF Usage akan menjadi angka 0, karena sistem operasi windows juga membutuhkan memori agar bisa aktif atau hidup pada komputer.
Bagaimana kerja memori pada saat komputer pertama kali dihidupkan ?
Jawaban :
Ketika kita menyalakan komputer, komponen yang pertama kali bekerja adalah Processor. Processor berfungsi sebagai pengolah data dan meminta data dari tempat penyimpanan data (storage), yaitu Hard Disk (HDD). Artinya data tersebut dikirim dari Hard Disk setelah ada permintaan dari Processor.
Tapi prakteknya hal ini sulit dilakukan karena perbedaan teknologi antara Processor & Hard Disk. Processor sendiri adalah komponen digital murni, dan akan memproses data dengan sangat cepat (Bandwidth tertinggi P4 saat ini 6,4 GB/s dengan FSB 800MHz). Sedangkan Hard Disk sebagian besar teknologinya merupakan mekanis yang tentu cukup lambat dibandingkan digital (Bandwidth atau Transfer Rate HDD Serial ATA berkisar 150 MB/s). Secara teoritis kecepatan data Processor berkisar 46x lebih cepat dibanding HDD. Artinya, apabila Processor menunggu pasokan data dari HDD akan terjadi “Bottle-Neck” yang sangat parah.
Maka untuk mengatasi hal itu, diperlukan memori utama atau disebut RAM. RAM berfungsi untuk membantu Processor dalam penyediaan data “super cepat” yang dibutuhkan. RAM berfungsi layaknya seperti HDD Digital, karena seluruh komponen RAM sudah menggunakan teknologi digital. Dengan RAM, maka Processor tidak perlu menunggu kiriman data dari HDD.
3. Perangkat masukan dan keluaran   (peranti I/O)  Berfungsi memindahkan data antara komputer dan lingkungan eksternal
Terdiri : 1. Perangkat masukan (peranti input) contohnya : keyboard, mouse, scanner
                    2. Perangkat keluaran (peranti output)  contohnya : monitor, printer
               
Lingkungan eksternal memberikan interaksi dengan user, melalui : Perangkat penyimpan sekunder, Perangkat komunikasi , Terminal.
4. Interkoneksi antar komponen (sistem bus)  Berfungsi sebagai struktur dan mekanisme untuk menghubungkan ketiga komponen yaitu : pemroses, memori utama, dan perangkat masukan/keluaran
Terdiri : 1. Bus kendali (control bus) 2. Bus alamat (address bus)3. Bus data (data bus)
N  BUS adalah Suatu set kabel tunggal yang digunakan untuk  menghubungkan berbagai subsistem
N  Sistem Bus adalah Sebuah Bus yang menghubungkan komponen-komponen utama komputer (CPU, Memori ,I/O) dalam menjalankan tugasnya.
N  Prosesor, memori utama, dan perangkat I/O dapat dinterkoneksikan dengan menggunakan bus bersama yang fungsi utamanya adalah menyediakan jalur komunikasi untuk transfer data.
N  Sebagai contoh, sebuah komputer PC dengan prosesor  Intel Pentium 4 memiliki bus prosesor (Front-Side Bus), bus AGP, bus PCI, bus USB, bus ISA (yang digunakan oleh keyboard dan mouse), dan bus-bus lainnya.
N  Suatu transaksi bus meliputi 2 komponen :
o   Mengeluarkan perintah dan alamat – request (permintaan)
o   Memindahkan data – action (tindakan)
N  Master, Bus yang memulai transaksi bus dengan cara mengeluarkan perintah dan alamat
N  Slave, Bus yang bereaksi terhadap alamat dengan cara :
o   Mengirimkan data kepada master jika master meminta data
o   Menerima data dari master jika master mengirim data
o   Data Bus, adalah lintasan bagi perpindahan data antar modul. Secara kolektif, lintasan ini disebut bus data. Umumnya jumlah saluran terkait dengan panjang word, misalnya 8, 16, 32 saluran dengan tujuan agar mentransfer word dalam sekali waktu. Jumlah saluran dalam bus data dikatakan lebar bus, dengan satuan bit, misal lebar bus 16 bit.
Address Bus, digunakan untuk menspesifikasi sumber dan tujuan data pada bus data. Saluran ini digunakan untuk mengirim alamat word pada memori yang akan diakses CPU. Juga digunakan untuk saluran alamat perangkat modul komputer saat CPU mengakses suatu modul. Perlu diketahui, semua peralatan yang terhubung dengan sistem komputer, agar dapat diakses harus memiliki alamat. Semisal mengakses port I/O, maka port I/O harus memiliki alamat hardware-nya.
Control Bus, digunakan untuk mengontrol bus data, bus alamat dan seluruh modul yang ada. Karena bus data dan bus alamat digunakan oleh semua komponen maka diperlukan suatu mekanisme kerja yang dikontrol melalui bus kontrol ini. Sinyal – sinyal kontrol terdiri atas sinyal pewaktuan dan sinyal – sinyal perintah. Sinyal pewaktuan menandakan validitas data dan alamat, sedangkan sinyal perintah berfungsi membentuk suatu operasi.
    Tipe - Tipe Bus
ï  Bus ISA (Industry Standar Architecture), adalah Bus PC/AT (16 bit) yang beroperasi pada 8,33 MHz. Keuntungannya adalah bahwa pendekatan ini tetap mempertahankan kompatibilitas dengan mesin-mesin dan kartu-kartu yang ada.
ï  Bus PCI (Peripheral Component Interconnect), adalah Bus yang tidak tergantung prosesor dan berfungsi sebagai bus mezzanine atau bus peripheral. PCI memiliki kinerja tinggi untuk sistem I/O berkecepatan tinggi seperti : video adaptor, NIC, disk controller, sound card, dan lain-lain.Standard PCI adalah 64 saluran data pada kecepatan 33 MHz, laju transfer data 264 MB per detik atau 2,112 Gbps. Keunggulan PCI tidak hanya pada kecepatannya saja tetapi murah dengan keping yang sedikit.
ï  Bus USB (Universal Serial Bus),
Proses lengkap penjumlahan dua nilai yang tersimpan dalam memori dapat dipecah kedalam lima langkah sebagai berikut :
  1. Ambil salah satu nilai yang akan dijumlahkan dari memori dan letakkan dalam sebuah register.
  2. Ambil nilai lainnya yang akan dijumlahkan dari memori dan letakkan dalam register yang berbeda.
  3. Aktifkan rangkaian penjumlahan dengan menggunakan register-register dalam langkah 1 dan 2 sebagai inputnya dan sebuah register lainnya yang ditetapkan sebagai tempat penyimpanan hasil penjumlahan.
  4. Simpan hasil penjumlahan di dalam memori.
  5. Berhenti.
                Singkatnya, data harus dipindahkan dari memori utama ke processor, nilai-nilai harus dijumlahkan dalam processor, dan hasilnya harus disimpan dalam sebuah sel memori.

Jenis instruksi yang dijalankan oleh processor antara lain:
1. Pertukaran data antara pocessor dan memori utama Instruksi ini dilakukan ketika data harus dibaca/ditulis ke memori utama.
2. Pertukaran data antara processor dan modul I/O Instruksi ini dilakukan ketika data harus dibaca/ditulis ke peranti I/O. Umumnya data-data untuk operasi I/O akan disimpan sementara di memori utama sebelum diproses oleh processor.
3. Pemrosesan data oleh processor Instruksi ini dilakukan jika diperlukan operasi-operasi aritmatika ataupun logika.
4. Operasi kendali. Instruksi ini dilakukan jika diperlukan pengaturan alur eksekusi instruksi seperti operasi lompat (jump) ke instruksi tertentu.
Untuk menjalankan tugasnya, processor membutuhkan tempat menampung instruksi, data, maupun alamat data. Memori semacam ini disebut register. Jenis-jenis register yang umumnya terdapat pada processor sebagai berikut :
Register Pengguna  Yaitu register yang dapat digunakan untuk menyimpan data serta alamat data program.
Register Status dan Kontrol Yaitu register yang digunakan untuk mengontrol eksekusi kode instruksi program.
Register Pengguna, terdiri atas :
Register Data Register ini digunakan untuk menyimpan data yang dibaca dari memori ataupun yang akan diproses di ALU. Yang termasuk register data antara lain register AX, BX, CX, DX.
Register Alamat Register ini digunakan untuk menyimpan alamat memori dari data ataupun kode instruksi program yang akan diakses oleh processor. Register  alamat dapat dikelompokkan ke dalam register indeks (index register, seperti register SI, DI), register segmen (segment register, seperti register ES, DS, SS) dan register pointer (pointer register, seperti BP, SP)

Register Status dan Control, terdiri atas :
Register penghitung (PC, Program Counter Register) Register ini menyimpan alamat memori (alamat relatif/logika) dari kode instruksi yang sedang dieksekusi.
Register segmen kode instruksi (CS, Code Segment Register) Register ini meyimpan alamat segmen memori dari kode instruksi yang sedang dieksekusi.
Register Instruksi (IR, Instruction register) Register ini menyimpan alamat kode instruksi yang sedang/akan dieksekusi. Kode instruksi ini dibaca dari memori fisik menggunakan alamat yang ditunjukkan oleh register CS dan PC.
Register status (F, Flag Register) Register ini menyimpan sejumlah status hasil eksekusi kode instruksi yang sedang berlangsung. Misalkan jika terjadi pembagian dengan bilangan nol maka kondisi tersebut akan dicatat di register status.
In terupsi adalah Adalah sinyal perangkat lunak ataupun sinyal perangkat keras, terutama peranti I/O, untuk meminta processor melakukan suatu tugas tertentu.
Interupsi, terdiri dari :
Interupsi Perangkat Lunak (Software Interrupt) Yaitu interupsi yang diakibatkan oleh kode instruksi atau efek dari perangkat lunak. Interupsi ini sering juga disebut system call, karena umumnya digunakan untuk meminta layanan atau penanganan dari sistem operasi. Contoh kondisi yang memicu terjadinya interupsi perangkat lunak adalah : program meminta sistem untuk mencetak hasil keluaran atau output ke printer, atau terjadi kondisi pembagian dengan bilangan nol (division by zero) ataupun hasil operasi aritmatika melebihi presisi tipe data penyimpan (arithmetic overflow).
Interupsi Perangkat Keras (Hardware Interrupt) Yaitu interupsi yang diakibatkan aksi pada perangkat keras, terbagi dua :
  1. Maskable Interrupt, yaitu interupsi yang disela, misalkan : interupsi oleh timer, penekanan keyboard atau mouse.
  2. Non-Maskable Interrupt, yaitu interupsi yang tidak dapat disela, misalnya terjadi kegagalan perangkat keras seperti penyuplai tenaga (power failure) ataupun memory (memory parity error).

Cara kerja interupsi :
                Setiap interupsi memiliki rutin interupsi (ISR, Interrrupt service routine), yaitu kumpulan instruksi yang akan dieksekusi jika interupsi tersebut terjadi. Rutin interupsi atau ISR disimpan di memory pada saat komputer dihidupkan. Alamat memori dari ISR ini disimpan sebagai referensi dalam suatu tabel interupsi IST (interrupt service table). Ketika interupsi terjadi, processor akan menunda program yang sedang dieksekusi, kemudian menyimpan isi register-register processor, disebut juga dengan konteks processor, ke memory.
                Proses selanjutnya akan membaca (lookup) di IST untuk mengetahui alamat ISR interupsi bersangkutan. Dalam pembacaan ini, processor menggunakan nomor interupsi yang dibangkitkan perangkat keras sebagai nomor indeks untuk membaca IST. Seteleh mengetahui alamat ISR, processor mulai membaca kode instruksi ISR dan mengeksekusinya.
                Setelah eksekusi ISR selesai, processor akan kembali mengeksekusi program yang tertunda, yang diawali dengan mengisi kembali register-register processor sehingga kondisinya sama seperti sebelum terjadi interupsi.
Sistem Operasi
Definisi : Perangkat lunak (software) yang berfungsi untuk mengelola seluruh
                  komponen dan sumber daya sistem komputer, baik fisik maupun
                  nonfisik (misalkan data) agar dapat digunakan secara optimal.
Fungsi :
  1. Sebagai Extended Machine (Virtual Machine), menyediakan sekumpulan layanan (system call) ke pemakai
  2. Sebagai pengelola sumber daya (Resource Manager), mengelola seluruh sumber daya yg terdapat pada sistem komputer
  3. a. Contoh Sistem operasi komputer pribadi :
  4. Ms.DOS, Windows 95, Windows XP, Windows 7, Linux, Macintosh
  5. Contoh Sistem operasi mini-computer :
  6. OS/360
  7. Contoh Sistem operasi pada PDA (personal digital asistant):
  8. PalmOS, Windows CE, Symbian
Sumber daya sistem komputer
Adalah semua komponen di sistem komputer yang dapat memberi manfaat. Sumber daya ini terdiri dari :
                1. Sumber daya fisik
                2. Sumber daya nonfisik (abstrak)
Perangkat sumber daya fisik
N  Keyboard,barcode reader
N  Mouse,joystick, light-pen,track ball,touch screen
N  Floppy disk drive,harddisk, tape drive,optical disk, CD ROM drive
N  Layar monitor, Printer
Sumber Daya Fisik
N  Modem,ethernet card, PCMCIA
N  Memory akses acak (RAM), chace memory, register,dll
N  Sound card, kamera, radio,dll
N  Scanner, digitizer, plotter,dll
N  Sensor inframerah
N  Sumber Daya Nonfisik (abstrak)
N  Sumber daya abstrak
N  Data Program
N  Data Semaphore
N  PCB (Process Control Block)
N  Tabel segmen,tabel page,I-node,FAT
N  File (berkas) Dll.
Sistem operasi sebagai Extended Machine
Pada awal perkembangan komputer, dimana belum ada sistem operasi, semua operasi komputer dilakukan secara manual menggunakan panel kontrol oleh para ahli.
                sistem operasi dikembangkan secara bertahap untuk mengotomatisasi hal-hal yang tadinya harus dilakukan secara manual. Selain itu sistem operasi menyembunyikan detil operasi perangkat keras serta menyediakan antarmuka operasi yang lebih sederhana dan mudah dimengerti oleh pengguna. Dengan kata lain, sistem operasi melakukan abstraksi bagi pengguna terhadap pengaksesan sumber daya komputer.
Dengan adanya sistem operasi, pengguna hanya melihat komputer sebagai mesin yang dapat menjalankan tugas-tugas yang diberikan kepadanya, seperti memutar lagu, melakukan perhitungan matematis. Pengguna tidak perlu tahu bagaimana sesungguhnya mekanisme kerja internal komputer seperti :
                                a. menyalin kode instruksi program ke memori.
                                b. melakukan perhitungan diprocessor.
                                c. menyimpan data ke suatu alamat disk
                                d. bagaimana caranya data-data dikirim ke printer lewat kabel paralel.
Sistem operasi sebagai Resource Manager
                Pada sistem komputer dimungkinkan beberapa job dijadwal secara bergantian untuk menggunakan processor. Sumber daya komputer dibagi pakai oleh job-job tersebut. Caranya adalah dengan melakukan multipleks (multiplexing) pada pengguna sumber daya, baik dari segi waktu maupun ruang.
                Contoh sumber daya yang dimultipleks secara waktu adalah processor dan printer. Multi programing pada processor tunggal dicapai dengan melakukan alokasi processor kepada masing-masing job secara bergantian. Setiap kali terjadi pergantian job, status eksekusi dari job sebelumnya harus disimpan sehingga jika eksekusi kembali lagi kepadanya, job tersebut dapat melanjutkan eksekusinya dari keadaan terakhirnya. Ini merupakan tugas sistem operasi.
Sejarah Perkembangan SO
  1. Generasi ke-nol (1940)
  Komponen utama tabung hampa udara
  Sistem komputer belum menggunakan Sistem Operasi
  Semua operasi komputer dilakukan secara manual melalui plugboard, dan hanya bisa digunakan untuk menghitung +, - , dan *
 2. Generasi Pertama (1950)
  Komponen utama transistor
  Input memakai punch card
3. Generasi Kedua (1960)
  Komponen utama IC
  Berkembang konsep :
1.       Multiprogramming
2.       Multiprocessor
      1. Spooling
      2. Device Independence
      3. Time Sharing
      4. Real time system
4. Generasi Ketiga (1970)
  VLSI (Very-large-scale integration)
                        Proses pembuatan IC dengan kombinasi ribuan transistor dalam satu chip.
  Konsep Generals Purpose System
5. Generasi Keempat (pertengahan 1970- sekarang)
  PC makin populer
  Sistem Operasi untuk jaringan
  User Interface semakin user friendly
Fungsi dan Sasaran Sistem Operasi
Sistem operasi mempunyai dua fungsi utama, yaitu :
1. Sebagai resource manager (pengelola seluruh 
       sumber daya)
2. Sebagai extended/virtual machine (sebagai 
       penyedia layanan)
                              yaitu sistem operasi menyediakan sekumpulan layanan (system call) ke pemakai sehingga memudahkan dan menyamankan penggunaan atau pemanfaatan sumber daya sistem komputer.
Fungsi sistem operasi sebagai resource manager
              Sistem operasi bertanggung jawab mengelola sumber-sumber daya sistem komputer.
Fungsi sistem operasi sebagai extended/virtual machine
              Sistem operasi dapat :
              1. Memberi abstraksi mesin tingkat tinggi yang lebih sederhana dan meyembunyikan kerumitan perangkat keras.
              2. Basis untuk program lain.
Layanan-layanan pada sistem operasi
Pembuatan program, yaitu sistem operasi menyediakan beragam fasilitas dan layanan untuk membantu pemrogram menulis program, biasanya berbentuk program utilitas. Program utilitas bukan bagian sistem operasi tapi dapat diakses lewat sistem operasi.
Eksekusi program, yaitu sejumlah tugas perlu dilakukan untuk mengeksekusi program. Instruksi-instruksi dan data harus dimuat ke memori utama, perangkat I/O dan berkas-berkas harus diinisialisasi, serta sumber daya harus disiapkan.
Pengaksesan perangkat masukan/keluaran, yaitu tiap perangkat I/O memerlukan sejumlah instruksi atau sinyal kendali yang rumit agar perangkat dapat beroperasi. Sistem operasi harus mengambil alih rincian-rincian itu sehingga pemrogram dapat berpikir secara sederhana dalam memanfaatkan perangkat, misalnya dalam abstraksi sebagai membaca dan menulis berkas.
Pengaksesan terkendali terhadap berkas, yaitu sistem operasi menyediakan mekanisme proteksi untuk mengendalikan pengaksesan terhadap berkas.
Pengaksesan sistem, yaitu sistem operasi mengendalikan pengaksesan ke sumber daya sistem secara keseluruhan pada sistem publik atau dipakai bersama. Fungsi pengaksesan harus menyediakan proteksi terhadap sumber daya dan data dari pemakai tak diotorisasi serta harus menyelesaikan konflik-konflik dalam perebutan sumber daya.
Deteksi dan memberi tanggapan terhadap kesalahan, yaitu sistem operasi harus memberi tanggapan yang menjelaskan kondisi kesalahan dengan dampak terkecil bagi aplikasi-aplikasi yang sedang berjalan.
Akunting, yaitu sistem operasi mengumpulkan data statistik penggunaan sumber daya dan memonitor parameter kinerja seperti waktu tanggap. Pada suatu sistem, informasi ini berguna dalam mengantisipasi kebutuhan di masa datang dan dalam menyesuaikan sistem untuk meningkatkan kinerja.
Komponen Sistem Operasi
              Sebagai resource manager, sistem operasi menyediakan rutin-rutin penanganan sumber daya komputer, rutin-rutin tersebut dapat dikelompokkan sebagai berikut :
              1. Manajemen proses
              2. Manajemen memori
              3. Manajemen device
              4. Manajemen berkas
1. Manajemen Proses
                              Komponen manajemen proses merupakan sentral dari sistem operasi dan menggunakan seluruh komponen manajemen lainnya. Secara khusus manajemen proses bertugas mengelola sumber daya komputer yang paling penting, yaitu processor.
                              Job-job yang dieksekusi oleh processor secara teknis disebut proses. Tugas dari manajemen proses adalah membuat proses-proses yang berjalan tidak saling mengganggu bahkan saling bekerja sama. Proses adalah program yang sedang dieksekusi, yang berarti bahwa program tersebut sedang dijadwal untuk menggunakan processor. Suatu proses atau program yang sedang dieksekusi akan membutuhkan sumber daya yang lain seperti memori, berkas, dan peranti lainnya untuk menyelesaikan tugasnya
              Tugas-tugas komponen manajemen proses antara lain :
              1. Membuat dan menghentikan proses.
              2. Menunda dan melanjutkan kembali proses
              3. menyediakan mekanisme penjadwalan, komunikasi,
          sinkronisasi, dan penanganan deadlock bagi proses-
          proses yang berjalan secara bersamaan
2. Manajemen Memori
                              Tugas utama komponen manajemen memori adalah mengatur pemakaian ruang memori utama yang terbatas agar dapat digunakan secara bersamaan oleh sebanyak mungkin proses tanpa saling mengganggu satu sama lain.
                              Tugas-tugas yang menjadi tanggung jawab manajemen memori antara lain :
              1. Mengelola memori kosong
              2. Mengalokasikan dan membebaskan ruang memori kepada proses sesuai kebutuhan.
              3. melakukan proteksi dan bagi pakai memori utama.
3. Manajemen Device
                              Tugas utama komponen manajemen device adalah mengelola beragam device ataupun peranti I/O yang berbeda karakteristiknya dapat digunakan dengan baik oleh proses-proses.
                              Tugas-tugas yang dilakukan oleh manajemen device antara lain :
              1. Penjadwalan peranti I/O,
              2. Buffering
              3. Caching
              4. Spooling
              5. Reservasi device
              6. Penanganan kesalahan pengaksesan peranti I/O
4. Manajemen Berkas
                              Berkas adalah sekumpulan informasi yang saling berkaitan dan disimpan sebagai suatu entitas tunggal pada media penyimpanan sekunder. Komponen manajemen berkas terkait erat dengan pengelolaan berkas pada media penyimpanan sekunder.
                              Tugas-tugas yang dilakukan manajemen berkas antara lain :
              1. Mendukung pembuatan dan operasi pada berkas dan direktori.
              2. Melakukan alokasi ruang disk ke berkas.
              3. Mengelola ruang kosong disk.
              4. Mengelola isi direktori.
              5. Melakukan proteksi dan berbagai pakai berkas.
              6. Melakukan pemulihan (recovery) terhadap berkas.
System Call
                              Adalah prosedur atau rutin yang disediakan pustaka API (application programming interface) yang umumnya berisi trap (semacam sinyal interupsi perangkat lunak) untuk memanggil rutin-rutin dari sistem operasi.
                              Setiap sistem operasi memiliki spesifikasi system call. Pada sistem operasi UNIX memiliki POSIX sebagai spesifikasi standar system call-nya, sedangkan windows memiliki spesifikasi Win32 API.
1.    Struktur Monolitik
Yaitu sistem operasi sebagai kumpulan prosedur dimana prosedur dapat saling dipanggil oleh prosedur lain disistem bila diperlukan.
Contohnya pada sistem operasi MSDOS dan UNIX
Keunggulan sistem monolitikKeunggulan sistem monolitik
1. Layanan dapat dilakukan sangat cepat karena terdapat disatu ruang alamat.
Kelemahan sistem monolitik
1.       Pengujian dan penghilangan kesalahan sulit karena tak dapat dipisahkan dan dilokalisasi.
2.       Sulit dalam menyediakan fasilitas pengamanan.
3.       Merupakan pemborosan bila setiap komputer harus menjalankan kernel monolitik sangat besar sementara sebenarnya tidak memerlukan seluruh layanan yang disediakan kernel tidak fleksibel.
4.       Kesalahan pemograman satu bagian dari kernel menyebabkan matinya seluruh sistem.

Sistem Operasi MSDOS
                                Pada sistem operasi MSDOS, antara aplikasi dan sistem operasi bahkan tidak ada pemisahan yang jelas. Ini menyebabkan mudahnya program-program virus memodifikasi dan merusak sistem operasi MSDOS.
                                 Pada sistem operasi MSDOS, program aplikasi memiliki akses untuk memodifikasi bagian sistem operasi (program resident, device driver MSDOS, maupun device driver BIOS)
Sistem Operasi UNIX
                                Pada sistem operasi UNIX, ada pemisahan antara program aplikasi dan sistem operasi. Program aplikasi  hanya dapat mengakses rutin-rutin sistem operasi lewat system call. Tetapi rutin-rutin sistem operasinya, seperti algoritma penjadwalan prosesor, manajemen sistem berkas, driver disk dan tape, semuanya tercampur aduk jadi satu.
2.    Struktur Berlapis (Layered)
                      Yaitu sistem operasi dibentuk secara hirarki berdasar lapisan-lapisan, dimana lapisan-lapisan bawah memberi layanan pada lapisan lebih atas.
                      Sistem operasi yang pertama kali memakai sistem berlapis adalah THE oleh Djikstra dan mahasiswa-mahasiswanya.
                      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.
Contoh Struktur Layered – THE
¨  THE (Technische Hogeschool at Eindhoven) Operating System (Dijkstra, 1968)
¡  Level 5 : operator / user
¡  Level 4 : user program
ú  Menangani kompilasi, eksekusi dan printing user program
¡  Level 3 : I/O management
¡  Level 2 : operator-process communication
¡  Level 1 : memory management
ú  Alokasi memori untuk proses
¡  Level 0 : processor allocation & multiprogramming
ú  Menentukan alokasi proses ke CPU, menangani interupsi dan perpindahan proses (sebagai scheduler)
Keunggulan sistem berlapis
1.       Memiliki semua rancangan modular, yaitu sistem dibagi menjadi beberapa modul dan tiap modul dirancang secara independen. Tiap lapisan dapat dirancang, dikode dan diuji secara independen.
2.       Pendekatan berlapis menyederhanakan rancangan, spesifikasi dan implementasi sistem operasi.
Kelemahan sistem berlapis
1. Fungsi-fungsi sistem operasi harus diberikan ke tiap lapisan secara hati-hati.
4. Struktur Sistem dengan Client-Server
                                Yaitu sistem operasi yang mana proses-prosesnya dikategorikan sebagai server dan client, sebagai berikut :
                1. Server adalah proses yang menyediakan layanan.
                2. Client adalah proses yang memerlukan /meminta layanan.
Keunggulan sistem client server
1.       Pengembangan dapat dilakukan secara modular.
2.       Kesalahan (bugs) di satu subsistem tidak merusak subsistem-subsistem lain sehingga tidak mengakibatkan satu sistem mati secara keseluruhan.
3.       Mudah diadaptasi untuk sistem tersebar.      
Kelemahan sistem client server
1.       Layanan dilakukan lambat karena harus melalui pertukaran pesan.
2.       Pertukaran pesan dapat menjadi botleneck.
MANAJEMEN PROSES
TUGAS UTAMA MANAJEMEN PROSES :
1. Mengelola siklus hidup proses-proses.
2. Melakukan penjadwalan proses.
3. Menangani komunikasi antar proses.
4. Mengelola alokasi sumber daya komputer ke proses
1. Pengelolaan siklus hidup proses
                Pengelolaan siklus hidup proses meliputi :
                a. Penciptaan proses
                b. Penghentian proses
                c. Pengalihan eksekusi
a. Penciptaan proses
                                Penciptaan proses dapat dipicu oleh permintaan pengguna untuk menjalankan suatu aplikasi melalui aplikasi shell.
                                Proses dapat juga diciptakan oleh suatu proses lain yang sedang berjalan, seperti aplikasi shell yang menciptakan proses aplikasi lain yang diminta pengguna.
                                Selain itu proses dapat pula diciptakan dalam suatu eksekusi batch seperti eksekusi shell script, misalnya eksekusi berkas autoexec.bat di sistem operasi windows ataupun eksekusi berkas script berekstensi *.bash di sistem operasi linux.
                Berikut tahap-tahap yang dilalui selama penciptaan :
                1. Sistem operasi akan membangkitkan suatu nomor identitas atau ID unik
                     untuk proses yang diciptakan.
                2. Setelah itu sistem operasi akan membuat suatu rekaman data dengan nomor 
                    ID tersebut dan menyisipkan rekaman tersebut pada suatu struktur data di 
                    memori utama yang disebut dengan tabel proses (process table).
                3. Setelah itu, sistem operasi mengalokasi ruang memori utama untuk menyimpan
                    image proses yang terdiri atas bagian kode program, stack, dan PCB (Process
                    Control Block).
                4. Pada tahap berikutnya, sistem operasi akan melakukan inisialisasi PCB proses
                    yang  diikuti dengan proses no 5 berikut.
                5. Penyisipan PCB proses ke antrian ready dan mengubah status proses menjadi
                    ready.
b. Penghentian proses
                                Penghentian proses yang normal terjadi karena aplikasi telah selesai.
                                Adanya kondisi kesalahan serta hal-hal yang tidak dikehendaki dapat menyebabkan proses dihentikan secara paksa
                                Langkah-langkah yang dilakukan oleh sistem operasi dalam penghentian proses secara normal :
                1. Mengembalikan hasil keluaran ke proses induk (parent process), 
                    yaitu proses yang menciptakan proses bersangkutan.
                2. Menghapus rekaman proses di semua antrian dan di tabel
                    proses.
                3. Setelah itu, sistem operasi akan menghapus PCB serta  image 
                    proses tersebut. Dalam penghentian proses, semua sumber
                    daya yang digunakan, seperti berkas maupun peranti I/O 
                    dibebaskan ataupun dikembalikan ke sistem operasi.
                                Setelah penghentian proses selesai, sistem operasi akan melakukan operasi penjadwalan (scheduling) untuk memilih proses lain untuk dieksekusi.
c. Pengalihan eksekusi proses (proses switching)
                                Pengalihan eksekusi suatu proses ke proses lainnya dapat disebabkan karena suatu proses meminta operasi I/O (misalnya membaca berkas), menunggu suatu event (misalnya menggunakan inputan keyboard ataupun pergerakan mouse dari pengguna komputer), terjadi kesalahan eksekusi proses ataupun jatah waktu eksekusinya sudah habis.
Berbagai penyebab pengalihan eksekusi proses
                1. Interupsi, interupsi disebabkan oleh aksi eksternal, misalnya oleh peranti I/O, pewaktu (timer), ataupun kesalahan akses memori utama.
                2. Trap, trap adalah interupsi yang dipicu oleh terjadinya kesalahan eksekusi ataupun kondisi-kondisi khusus (exception condition) dari proses yang sedang running. Jika kesalahannya fatal maka dilakukan pengalihan eksekusi ke proses lain atau yang disebut dengan process switching.
                3. Supervisor Call atau System Call, System Call merupakan pemanggilan layanan sistem operasi oleh proses yang sedang running. Penggunaan system call menyebabkan aliran eksekusi berpindah ke kode instruksi kernel sistem operasi.
Tahapan pengalihan eksekusi proses (proses switching)
Meliputi langkah-langkah berikut :
                1. Sistem operasi menyimpan (backup) konteks processor, yaitu isi seluruh register   
                     processor, proses yang sedang running (Po) ke PCB proses tersebut (PCBo).
                2. Sistem operasi kemudian memperbarui isi PCB proses tersebut (PCBo), termasuk
                     mengubah status eksekusinya ke status blocked ataupun ready.
                3. Selanjutnya, PCB (PCBo) dipindahkan ke antrian yang sesuai, yaitu antrian ready jika status
                     proses beralih ke status ready ataupun ke salah satu antrian I/O jika proses beralih ke status
                     blocked.
                4. Setelah itu,sistem operasi melakukan  dispatch ke proses lainnya P1, dengan memperbarui
                     PCB proses baru (P1), termasuk mengubah status eksekusinya menjadi running.
                5. Kemudian sistem operasi memperbarui isi struktur data manajemen memori yang berkaitan
                    dengan proses baru (P1).
                6. Terakhir, sistem operasi akan meyalin (restore) konteks processor  yang tersimpan di PCB
                     proses baru (PCB1) ke processor dan mulai mengeksekusi kode instruksi proses P1.
d. Pengalihan konteks eksekusi (context switching)
                                Terjadinya interupsi tidak selalu memicu terjadinya pengalihan eksekusi proses (proses switching). Sebagai contoh adalah ketika suatu proses sedang berjalan dan menunggu inputan dari keyboard. Ketika  pengguna memasukkan data lewat keyboard maka akan terjadi interupsi yang mengakibatkan pengalihan konteks eksekusi, yaitu dari proses ke rutin penanganan interupsi (interupsi handler) keyboard. Setelah rutin interupsi selesai dijalankan maka eksekusi dialihkan kembali ke proses bersangkutan. Selama terjadinya pengalihan konteks eksekusi ini, status eksekusi proses tidak berubah.
                                Pengalihan konteks eksekusi (bukan pengalihan eksekusi proses) melakukan penyimpanan konteks Processor  proses ke stack, Bukan ke PCB. Setelah itu eksekusi berpindah ke rutin interupsi dan setelah selesai, register processor diperbaharui kembali dengan konteks processor yang dibaca dari stack, dan eksekusi proses yang terhenti dilanjutkan kembali.
                                Pengalihan konteks eksekusi (context switching) melibatkan tahapan yang lebih pendek dibandingkan pengalihan eksekusi proses (process switching). Itu sebabnya pengalihan eksekusi antar rutin sistem operasi umumnya memakai mekanisme context switching, bukan process switching.   
PENJADWALAN PROSES
                                Penjadwalan proses dapat didefinisikan sebagai kumpulan kebijaksanaan dan mekanisme sistem operasi yang mengatur urutan dan jangka waktu eksekusi proses-proses yang aktif.
                                Untuk menjalankan penjadwalan proses, sistem operasi membutuhkan sejumlah komponen yang meliputi :
                1. Antrian penjadwalan (Scheduling Queue)
                2. Penjadwal (Scheduler)
                3. Dispatcher
Kriteria penjadwalan proses
Antara lain:
                1. Keadilan (fairnes)
                2. Efisien(Processor utilization)
                3. Waktu tanggapan (Respon time)
                4. Waiting time
                5. Turn around time
                6. Throughput
Strategi dasar penjadwalan
Yaitu :
                1. Non-preemptive
                2. Preemptive
Pemicu terjadinya proses penjadwalan
Antara lain:
                1. Proses berubah dari status running ke blocked.
                2. Proses berubah dari status running ke ready.
                3. Proses berubah dari status blocked ke ready.
                4. Proses berhenti (Terminated)
Algoritma Penjadwalan
Yaitu :
                1. FIFO
                2. SJF
                3. HRRN


DELLIA SISKA MELYANI (CHIKA)
2012110030
MANAJEMEN INFORMATIKA
AMIK MDP (Multi Data Palembang)

Tidak ada komentar:

Posting Komentar