Halaman
Tanggal Hijriah
Kalender
Penjadwalan Proses
- Jika banyak proses yang akan dijalankan maka SO harus memutuskan proses mana yang dijalankan terlebih dahulu
- Bagian SO yang menjadi pembuat keputusan disebut dgn : Penjadwal (Scheduler)
- Algoritmanya : Scheduling Algorithm
Kriteria Penjadwalan yang baik
- Adil (fairness) : memastikan tiap proses berbagi CPU secara adil
- Efisiensi : menjaga agar CPU senantiasa sibuk sepanjang waktu
- Response time (wkatu tanggap) : meminimumkan waktu respon untuk pemakai interaktif
- Turnaround : meminimumkan waktu batch pemakai untuk menunggu output
- Throughput : memaksimumkan jumlah pekerjaan per jam
Beberapa kriteria diatas ada yang bertentangan ??
Preemptive dan Non Preemptive Scheduling
- Preemptive Scheduling :
- Strategi yang memungkinkan sebuah proses yang siap dijalankan ditunda sementara
- Non Preemptive Schedulling
- Tidak bisa ditunda
Penjadwalan Round Robin
- Paling tua dan paling banyak digunakan
- Semua proses dianggap sama penting dan diberikan suatu interval waktu yang sama yang disebut dengan quantum
- Jika quantum habis dan proses masih berjalan, CPU menghentikan proses dan memberikan quantum kepada yang lain
- Jika proses selesai sebelum quantum habis atau terblok, CPU akan melakukan switch ke proses yang lain.
- Masalah : ukuran quantum yang tepat (tidak terlalu pendek atau terlalu panjang)
Penjadwalan Prioritas
- Setiap proses diberi prioritas
- Prioritas tertinggi akan dijalankan terlebih dahulu
- Untuk mencegah proses dengan prioritas tinggi terus menerus maka prioritas proses akan diturunkan setiap interupsi sampai ada prioritas lain yang lebih tinggi.
- Kombinasi Round Robin dan Prioritas
Job Terpendek Pertama (Shortest Job First)
- Digunakan untuk sistem batch
- Run time diketahui lebih dahulu
- Mengetahuinya dengan teknik estimasi
- Misal 4 job dengan waktu 8, 4, 4, 4
SJF -> 4, 8, 12, 20
Pendahuluan Proses
- Proses adalah abstraksi tentang suatu program yang sedang dijalankan
- Komponen proses
- program yang sedang dieksekusi
- data
- sumber daya (resource)
- status dari eksekusi
- Semua komputer modern bisa melakukan beberapa pekerjaan dalam saat yang sama.
- Dalam multiprogramming , CPU berpindah dari satu program ke program lain dalam waktu yang sangat singkat. Kenyataannya CPU hanya menjalankan satu program pada suatu saat.
- paralelisme vs pseudoparalelisme
MODEL PROSES
- Semua S/W dikelompokkan menjadi sejumlah proses sekuensial.
- Menggunakan model pseudoparalelisme
- Suatu prosesor tunggal dapat dibagi diantara beberapa proses menggunakan suatu algoritma penjadwalan.
HIRARKI PROSES
- Ada cara untuk menghapus dan membentuk proses
- Pada UNIX , proses dibentuk dengan (system call) FORK
- Proses utama dan subproses yang dipanggil dapat berjalan secara paralel
- Pada MS-DOS, system call me-load suatu file biner tertentu ke memori dan mengeksekusinya sebagai subproses.
- Proses utama dan subproses tidak dapat berjalan secara paralel
KEADAAN PROSES
Proses butuh berinteraksi dengan proses lain dan perlu diketahui kondisi dari proses lainnya itu.
Ada 3 keadaan proses :
1. Running
- Kondisi dimana suatu proses sedang menggunakan CPU pada saat tersebut
- Kondisi dimana proses sebenarnya runable, namun berhenti sementara karena CPU sedang digunakan proses lain
- Kondisi dimana proses belum dapat dijalankan karena menunggu kelengkapan proses eksternal
Transisi Proses
1. Running menjadi blocked
transisi ini terjadi karena ditemukan proses tidak dapat dilanjutkan karena ada sesuatu yang terjadi
2. Running menjadi ready
terjadi karena penjadwal proses memutuskan bahwa suatu proses terlalu lama menggunakan CPU
3. Ready menjadi running
terjadi jika semua proses telah mendapatkan bagiannya menggunakan CPU dan saatnya proses dalam kondisi ready untuk menggunakan CPU
4. Blocked menjadi ready
terjadi jika kelengkapan eksternal yang ditunggu proses sudah terpenuhi
IMPLEMENTASI PROSES
- OS menggunakan tabel proses, satu entry per proses
- Tabel proses berisi :
- informasi tentang status proses
- program counter
- stack pointer
- alokasi memori
- status-status file yang sedang dibuka
- informasi akunting dan penjadwalan
- segala sesuatu yang perlu disimpan pada saat berpindah dari kondisi running ke ready
- Isi tabel proses secara umum umum memuat manajemen proses, menajemen memori, manajemen file.
INTERPROSES COMMUNICATION (IPC)
- Proses bisa berkomunikasi dengan proses lain dengan menggunakan primitif interproses communication (IPC).
- Primitif ini digunakan untuk mencegah dua proses / lebih mengakses bagian memori yang sama pada saat bersamaan (critical section).
RACE CONDITION
- Proses-proses yang bekerja bersama sering harus berbagi (storage) dimana masing-masing proses dapat mambaca dan menulis shared data pada waktu yang sama.
- Terjadi kondisi race (balapan) untuk mengakses satu lokasi yang sama dan hasil akhir tergantung pada proses yang berjalan tepat waktu
- contoh :
- print spooler (spooler directory) , print daemon
Menghindari race condition
- Hindarkan proses membaca, menulis shared data pada saat yang sama
Mutual Exclusion (Mutex)
- Jika satu proses sedang melakukan sesuatu, maka proses lain dicegah untuk tidak bisa melakukan proses yang sama terhadap data yang sama.
CRITICAL SECTION
- Bagian dari program dimana shared memori diakses.
- Tidak ada dua proses secara simultan berada pada critical-sectionnya.
- Kecepatan dan banyaknya CPU tidak diperhatikan
- Tidak ada proses yang sedang running diluar critical section dapat memblock proses lain.
- Tidak ada proses yang terus-menerus menunggu untuk masuk pada critical sectionnya.
Cara mencapai mutual exclusion (Mutual Exclusion dengan busy waiting)
1. Disabling Interrupt (Menon-aktifkan)
- Interrupt non aktif setelah memasuki critical section
- Bisa lagi di interupsi sesaat sebelum meninggalkan critical section
- Kurang bijaksana
- Bagaimana kalau lupa mengaktifkan lagi
- berguna pada saat-saat tertentu untuk Kernal, tetapi untuk user kurang tepat
Cara mencapai mutual exclusion (Mutual Exclusion dengan busy waiting)
2. Mengunci (lock) variabel
- Jika akan masuk ke critical section maka variabel akan ditest : Jika 0 berarti tidak ada proses dalam critical section dan jika 1 berarti ada
- Resiko sama saja dengan teknik interrupt
Cara mencapai mutual exclusion (Mutual Exclusion dengan busy waiting)
3. Strict Alternation (Fig 2-7 hal 36)
4. Solusi Peterson
- Kombinasi antara variabel turn dan lock variabel
5. Instruksi TSL (Test and Set Lock)
- Butuh sedikit bantuan dari H/W
- Banyak pada prosesor ganda
- TSL membaca isi dari memory word ke dalam suatu register dan memberi nilai bukan nol pada alamat memori. Operasi pembacaan dan store ini dijamin tak terbagi, tidak ada prosesor lain dapat mengakses kata tersebut sampai instruksi selesai.
- CPU mengeksekusi instruksi TSL mengunci bus untuk melarang CPU lain mengakses memori sampai proses ini selesai.
- Penyelesaian dengan solusi Peterson dan TSL keduanya benar tetapi memboroskan waktu CPU dengan harus memenuhi busy waiting.
Ada berbagai macam primitif IPC yang diantaranya :
- semaphore
- monitors
- event counters
- message passing
Secara teoritis semuanya ini equivalent yang masing-masingnya dapat diimplementasikan untuk yang lain. Semaphore dan message passing secara luas banyak digunakan.
Masalah Klasik dalam S.O
The Dinning Philosophers Problem
Sistem Operasi (Operating System)
Program / perangkat lunak yang mengontrol eksekusi program-program aplikasi dan berfungsi sebagai perantara (interface) antara pemakai komputer (user) dan komputer (hardware)
P.K ------- S.O. --------- User
Sebuah sistem komputer terdiri dari hardware, program sistem dan program aplikasi , terlihat dari gambar berikut :
Fungsi dasar Sistem Operasi :
1. S.O. sebagai ‘Extended machine’ atau ‘virtual machine’
contoh:
Untuk membaca atau menulis sesuatu ke disk, beberapa parameter harus diketahui :
misalnya :
alamat block yang akan dibaca
jumlah sektor per track
mode perekaman
jarak antar sektor
apa yang akan dilakukan bila ada tanda terhapus
S.O. menyembunyikan semua masalah kerumitan ini dengan penamaan file yang bisa dibaca dan ditulis yang sederhana. Begitu juga dengan masalah interrupt, timers, memori manajemen, dan semua feature low level lainnya.
2. S.O. sebagai ‘Resource manajer’ atau pengelola sumber daya
Komputer modern terdiri dari :
prosesor, memori, timer, disk, terminal, tape drive,
network interface , laser printer dll
Perangkat tsb memiliki keterbatasan kapasitas, sedangkan program yang yang menggunakannya banyak.
Tugas O.S. mengatur agar semua peralatan tsb diatas dapat bekerja dengan baik tanpa ada saling berebut atau berkompetisi,
SEJARAH SISTEM OPERASI
Generasi I (1945 - 1955)
Tabung hampa (vacuum tube)
plugboard
Orang yang berhasil membangun Mesin Hitung manggunakan tabung hampa : Howard Aiken , Joh Van Neumann , J. Presper Eckert dan William Mauchley, Konrad Zuse.
Sangat besar dengan 10.000 tabung
bahasa mesin
tanpa S.O.
Generasi II (1955 - 1965)
transistor
sistem batch
mahal
menggunakan punch card
bahasanya FORTRAN dan Assembly
menggunakan tape drive
berisi sistem operasi (FMS - Fortran Monitor System, dan IBSYS)
Off line printing (tidak tersambung ke komputer utama)
Generasi III (1965 - 1980)
IC (Integrated Circuit)
multi programming
misal : IBM System / 360
OS / 360
Menggunakan disk (hard disk)
Teknik Spooling (dari : Simultaneous Peripheral Operation On line)
MULTICS (MULTiplexed Information and Computer Service) --> PDP 1 s.d. mini PDP 11
Cikal bakal UNIX oleh Ken-Thomson (PDP-7)
Generasi IV (1980 - ....)
PC
LSI (Large Scale Integration) --> VLSI
MS DOS
UNIX
IBM PC
Intel 8088, 80286, 80386, 80486, pentium, & Power PC
RISC Computer
Network Operating System
Distributed Operating System
Uni processor, multi processor
Internet
Windows 3.1, windows 3.11, Windows 95, Windows NT
OS/2
X Windows
Client Server Computing
Jenis-jenis Pengoperasian Komputer
1. Single Program Operation
· Memproses satu program dalam satu waktu
· micro computer
· menggunakan S.O. sederhana
2. Batch Processing
· Sejumlah program dikumpulkan (batch) dan di-run secara kelompok (group)
· di-run satu pada satu waktu tetapi untuk proses I/O memungkinkan overlap
· Program berada dalam antrian
3. Multi programming
· Sejumlah program dapat dijalankan pada suatu waktu
· Resources (sumber daya) dialokasikan sesuai dengan kebutuhan.
4. Multi access
· Sejumlah user dapat berinteraksi, melalui terminal
Suatu Struktur Sistem Operasi Yang Ideal mempunyai komponen-komponen sbb:
· Nukleus
· Memory management
· I/O control
· Backing Store management
· Resource Allocation & Scheduling
· Protection
4 Komponen utama S.O. dikategorikan sbb:
manajemen proses, manajemen memori, manajemen file dan manajemen I/O
Nukleus
Modul paling rendah dari suatu S.O
ditunjang langsung ke H/W
melayani modul-modul / layer lainnya
contoh tugas
penanganan interrupt
lokasi waktu kerja proses
membantu komunikasi antar program
Memory management
· keterbatasan main memory
· berfungsi untuk mengalokasikan memory bagi program yang sangat membutuhkan
contoh : virtual memori
memori komputer terlihat jauh lebih besar daripada yang sebenarnya
Pengendalian I/O
· problem : variasi dalam karakteristik dan kecepatan
· berfungsi untuk menyamakan perbedaan-perbedaan tsb sehingga I/O menjadi device independent
· Menyembunyikan kompleksitas akses I/O
· teknik SPOOL
Backing Store Management
· file sistem
· memelihara struktur semua informasi mengenai data dan program
· menjamin efisiensi pemakaian
· data dna program disimpan dalam file
· BSM bersama dengan MM modul bekerjasama dalam transfer data antara main memory dan backing store
memelihara access previleges setiap file (share,private atau secret)
Resource Allocation & Scedulling
· menghindari deadlock
· menerapkan resource allocation policy
· menerapkan penjadwalan pemakaian processor berdasarkan kebijakan penjadwalan (schedulling policy) misalnya berdasarkan tingkat prioritas setiap program
contoh : scheduling policy : timeslicing
Resource Allocation & Scedulling
· menghindari deadlock
· menerapkan resource allocation policy
· menerapkan penjadwalan pemakaian processor berdasarkan kebijakan penjadwalan (schedulling policy) misalnya berdasarkan tingkat prioritas setiap program
contoh : scheduling policy : timeslicing
Protection
·terhadap pemakaian yang illegal
·terhadap keamanan file
·terhadap main memory pada saat eksekusi program
·pengamanan bertingkat (level of privilege)
·nukleus (tertinggi) ---> aplikasi (terendah)
P.K ------- S.O. --------- User
Sebuah sistem komputer terdiri dari hardware, program sistem dan program aplikasi , terlihat dari gambar berikut :
Fungsi dasar Sistem Operasi :
1. S.O. sebagai ‘Extended machine’ atau ‘virtual machine’
contoh:
Untuk membaca atau menulis sesuatu ke disk, beberapa parameter harus diketahui :
misalnya :
alamat block yang akan dibaca
jumlah sektor per track
mode perekaman
jarak antar sektor
apa yang akan dilakukan bila ada tanda terhapus
S.O. menyembunyikan semua masalah kerumitan ini dengan penamaan file yang bisa dibaca dan ditulis yang sederhana. Begitu juga dengan masalah interrupt, timers, memori manajemen, dan semua feature low level lainnya.
2. S.O. sebagai ‘Resource manajer’ atau pengelola sumber daya
Komputer modern terdiri dari :
prosesor, memori, timer, disk, terminal, tape drive,
network interface , laser printer dll
Perangkat tsb memiliki keterbatasan kapasitas, sedangkan program yang yang menggunakannya banyak.
Tugas O.S. mengatur agar semua peralatan tsb diatas dapat bekerja dengan baik tanpa ada saling berebut atau berkompetisi,
SEJARAH SISTEM OPERASI
Generasi I (1945 - 1955)
Tabung hampa (vacuum tube)
plugboard
Orang yang berhasil membangun Mesin Hitung manggunakan tabung hampa : Howard Aiken , Joh Van Neumann , J. Presper Eckert dan William Mauchley, Konrad Zuse.
Sangat besar dengan 10.000 tabung
bahasa mesin
tanpa S.O.
Generasi II (1955 - 1965)
transistor
sistem batch
mahal
menggunakan punch card
bahasanya FORTRAN dan Assembly
menggunakan tape drive
berisi sistem operasi (FMS - Fortran Monitor System, dan IBSYS)
Off line printing (tidak tersambung ke komputer utama)
Generasi III (1965 - 1980)
IC (Integrated Circuit)
multi programming
misal : IBM System / 360
OS / 360
Menggunakan disk (hard disk)
Teknik Spooling (dari : Simultaneous Peripheral Operation On line)
MULTICS (MULTiplexed Information and Computer Service) --> PDP 1 s.d. mini PDP 11
Cikal bakal UNIX oleh Ken-Thomson (PDP-7)
Generasi IV (1980 - ....)
PC
LSI (Large Scale Integration) --> VLSI
MS DOS
UNIX
IBM PC
Intel 8088, 80286, 80386, 80486, pentium, & Power PC
RISC Computer
Network Operating System
Distributed Operating System
Uni processor, multi processor
Internet
Windows 3.1, windows 3.11, Windows 95, Windows NT
OS/2
X Windows
Client Server Computing
Jenis-jenis Pengoperasian Komputer
1. Single Program Operation
· Memproses satu program dalam satu waktu
· micro computer
· menggunakan S.O. sederhana
2. Batch Processing
· Sejumlah program dikumpulkan (batch) dan di-run secara kelompok (group)
· di-run satu pada satu waktu tetapi untuk proses I/O memungkinkan overlap
· Program berada dalam antrian
3. Multi programming
· Sejumlah program dapat dijalankan pada suatu waktu
· Resources (sumber daya) dialokasikan sesuai dengan kebutuhan.
4. Multi access
· Sejumlah user dapat berinteraksi, melalui terminal
Suatu Struktur Sistem Operasi Yang Ideal mempunyai komponen-komponen sbb:
· Nukleus
· Memory management
· I/O control
· Backing Store management
· Resource Allocation & Scheduling
· Protection
4 Komponen utama S.O. dikategorikan sbb:
manajemen proses, manajemen memori, manajemen file dan manajemen I/O
Nukleus
Modul paling rendah dari suatu S.O
ditunjang langsung ke H/W
melayani modul-modul / layer lainnya
contoh tugas
penanganan interrupt
lokasi waktu kerja proses
membantu komunikasi antar program
Memory management
· keterbatasan main memory
· berfungsi untuk mengalokasikan memory bagi program yang sangat membutuhkan
contoh : virtual memori
memori komputer terlihat jauh lebih besar daripada yang sebenarnya
Pengendalian I/O
· problem : variasi dalam karakteristik dan kecepatan
· berfungsi untuk menyamakan perbedaan-perbedaan tsb sehingga I/O menjadi device independent
· Menyembunyikan kompleksitas akses I/O
· teknik SPOOL
Backing Store Management
· file sistem
· memelihara struktur semua informasi mengenai data dan program
· menjamin efisiensi pemakaian
· data dna program disimpan dalam file
· BSM bersama dengan MM modul bekerjasama dalam transfer data antara main memory dan backing store
memelihara access previleges setiap file (share,private atau secret)
Resource Allocation & Scedulling
· menghindari deadlock
· menerapkan resource allocation policy
· menerapkan penjadwalan pemakaian processor berdasarkan kebijakan penjadwalan (schedulling policy) misalnya berdasarkan tingkat prioritas setiap program
contoh : scheduling policy : timeslicing
Resource Allocation & Scedulling
· menghindari deadlock
· menerapkan resource allocation policy
· menerapkan penjadwalan pemakaian processor berdasarkan kebijakan penjadwalan (schedulling policy) misalnya berdasarkan tingkat prioritas setiap program
contoh : scheduling policy : timeslicing
Protection
·terhadap pemakaian yang illegal
·terhadap keamanan file
·terhadap main memory pada saat eksekusi program
·pengamanan bertingkat (level of privilege)
·nukleus (tertinggi) ---> aplikasi (terendah)
Langganan:
Postingan (Atom)



