SISTEM OPERASI DEADLOCK
DEADLOCK Sekumpulan proses sedang blocked karena setiap proses sedang menunggu (antrian) menggunakan resources yang sedang digunakan (hold) oleh proses lain. Layanan yang dibutuhkan dapat berupa sumber daya fisik maupun sumber daya abstrak atau software. Wujudnya biasanya berupa program/perintah yang dijalankan not responding/ tidak dapat direspon. Hal ini disebabkan suatu program yang memiliki suatu layanan sumber daya. Proses yang menunggu suatu layanan dalam waktu yang tak terhingga disebut juga dengan starvation.
DEADLOCK lanj. Ketika layanan sumber daya yang diminta belum selesai, kemudian program meminta layanan yang lain. Akibatnya program akan terus menerus menunggu layanan sumber daya lain, sementara sumber daya menganggap tidak ada permintaan. Kondisi demikian akan menyebabkan terjadinya deadlock. Jadi dengan kondisi yang terus menerus menunggu kesiapan sumber daya, akan tetapi tidak pernah tersedia menyebabkan kinerja komputer menjadi terganggu sehingga komputer menjadi hang atau deadlock.
Contoh Persimpangan Jalan Hanya terdapat satu jalur Mobil digambarkan sebagai proses yang sedang menuju sumber daya. Untuk mengatasinya beberapa mobil harus preempt (mundur) Sangat memungkinkan untuk terjadinya starvation (kondisi proses tak akan mendapatkan sumber daya).
RESOURCE Deadlock bisa terjadi pada saat proses akan mengakses obyek (seperti device, file, dan lainlain) secara tidak semestinya. Obyek tersebut dinamakan resource. Resource tersebut dapat berupa perangkat keras (seperti tape drive, memori) atau berupa informasi (record dalam suatu basis data, variabel global, dan lain lain). Resource ada 2 jenis, yaitu: preemptable dan nonpreemptable.
PREEMPTABLE Resource dikatakan preemptable jika resource tersebut dapat diambil (dilepas) dari proses yang sedang memakainya tanpa memberi efek apapun pada proses tersebut. Memori adalah salah satu contoh preemptable resource. Sebagai contoh, suatu sistem terdiri atas 512K user memory, satu printer, dan 2 proses masing masing berukuran 512K dan ingin mencetak sesuatu. Proses A meminta printer dan ia mendapatkannya. Kemudian proses A tersebut segera menghitung suatu nilai yang akan dicetak. Sebelum ia selesai menghitung nilai tersebut, quantum time yang diberikan ke proses tersebut telah habis, sehingga proses A harus di swapped out.
PREEMPTABLE lanj. Sekarang proses B mulai berjalan dan mencoba untuk mendapatkan printer. Namun gagal karena printer telah dibawa oleh proses A. Hal ini sangat potensial untuk terjadi deadlock, sebab proses A membawa printer dan proses B menempati memori. Untungnya, karena memori bersifat preemptable (dapat diambil) dari proses B dengan cara swapped out proses B dan swapped in proses A ke memori. Maka proses A dapat segera diselesaikan, sehingga tidak akan terjadi deadlock.
SWAP Swapping adalah menukarkan sebuah proses keluar dari memori untuk sementara waktu ke sebuah penyimpanan sementara dengan sebuah proses lain yang sedang membutuhkan sejumlah alokasi memori untuk dieksekusi.
SWAP lanj. Ready queue berisikan semua proses yang terletak di penyimpanan sementara maupun di memori yang siap untuk dieksekusi.
SWAP lanj. Swap In adalah memasukkan proses kedalam memori Swap Out adalah mengeluarkan memori dari proses. Mekanisme swap in swap out menggunakan algoritma jenis prioritas.
SWAP lanj. Sebagian besar waktu swapping adalah waktu transfer. Ilustrasi : Proses A memiliki ukuran 5 MB, sedangkan tempat penyimpanan sementara yang berupa harddisk memiliki kecepatan transfer data sebesar 20 MB per detiknya. Maka waktu yang dibutuhkan untuk mentransfer proses sebesar 5 MB tersebut dari atau ke dalam memori adalah sebesar 5000 KB / 20000 KBps = 250 ms
NONPREEMPTABLE Nonpreemptable, resource tidak dapat diambil dari proses yang sedang membawanya karena akan menimbulkan kegagalan komputasi. Printer adalah salah satu contoh nonpreemptable resource. Jika suatu proses sedang menggunakan printer untuk mencetak sesuatu, maka printer tersebut tidak dapat diambil untuk mencetak sesuatu dari proses lain. Resource jenis ini yang biasanya potensial untuk menyebabkan terjadinya deadlock.
NONPREEMPTABLE Meminta Resource (request) Menggunakan Resource (use) Membebaskan Resource (release) Gambar di atas menunjukkan urutan yang diperlukan jika ingin mengakses suatu resource. Pertama, proses harus meminta resource tersebut. Jika resource tidak tersedia, maka proses harus menunggu dulu sampai resource tersebut ada. Jika resource telah selesai digunakan, maka resource yang dibawa harus segera dilepaskan.
Metode Penanganan DEADLOCK Deadlock Prevention: Pencegahan adanya faktorfaktor penyebab deadlock Deadlock Avoidance: Menghindari dari situasi yang potensial dapat mengarah menjadi deadlock Deadlock Detection: Jika deadlock ternyata tidak terhindari maka bagaimana mendeteksi terjadinya deadlock, dilanjutkan dengan penyelamatan (recovery).
DEADLOCK PREVENTION Ada beberapa kondisi yang dapat menimbulkan terjadinya deadlock, yaitu: a. Mutual Exclusion. Jika suatu proses telah menggunakan suatu resource, maka tidak boleh ada proses lain yang menggunakan resource tersebut. b. Hold & Wait. Pada saat suatu proses sedang mengakses suatu resource, proses tersebut dapat meminta ijin untuk mengakses resource lain. c. No Preemption. Jika suatu proses meminta ijin untuk mengakses resource, sementara resource tersebut tidak tersedia, maka permintaan ijin tersebut tidak dapat dibatalkan. d. Circular Wait. Jika proses P0 sedang mengakses resource R1 dan minta ijin untuk mengakses resource R2, dan pada saat yang bersamaan P1 sedang mengakses resource R2 dan minta ijin untuk mengakses R1.
DEADLOCK AVOIDANCE Salah satu cara untuk mencegah adanya deadlock adalah dengan memberikan informasi tambahan yang berhubungan dengan resource resource yang akan diminta. Algoritma deadlock avoidance menguji secara dinamik untuk meyakinkan bahwa tidak ada kondisi circular wait. Status diberikan meliputi banyaknya resource yang tersedia, banyaknya resource yang dialokasikan, dan maksimum resource yang dibutuhkan oleh proses.
ALGORITMA BANKER S Proses harus declare max. kredit resource yang diinginkan. Proses dapat block (pending) sampai resource diberikan. Banker s algorithm menjamin sistem dalam keadaan safe state. OS menjalankan Algoritma Banker s, Saat proses melakukan request resource. Saat proses atau release resource yang digunakan => memberikan resource ke proses yang pending request.
ALGORITMA BANKER S lanj. Metode : 1. Scan tabel baris per baris untuk menemukan job yang akan diselesaikan 2. Tambahkan pada job terakhir dari sumberdaya yang ada dan berikan nomor yang available Ulangi 1 dan 2 hingga : Tidak ada lagi job yang diselesesaikan (unsafe) atau Semua job telah selesai (safe)
DEADLOCK DETECTION Mencegah dan menghidari dari deadlock sulit dilakukan: Kurang efisien dan utilitas sistem Sulit diterapkan: tidak praktis, boros resources Mengizinkan sistem untuk masuk ke state deadlock Gunakan algoritma deteksi (jika terjadi deadlock) Deteksi: melihat apakah penjadwalan pemakaian resource yang tersisa masih memungkinkan berada dalam safe state. Skema recovery untuk mengembalikan ke safe state
Recovery dari Deadlock Batalkan semua proses deadlock Batalkan satu proses pada satu waktu hingga siklus deadlock dapat dihilangkan Proses mana yang dapat dipilih untuk dibatalkan? Proses dengan prioritas Proses dengan waktu proses panjang Sumberdaya proses yang telah digunakan Sumberdaya proses yang lengkap Banyak proses yang butuh untuk ditunda Apakah proses tersebut interaktif atau batch
Sejarah Ubuntu Ubuntu adalah ideologi etis Afrika Selatan yang berpusat pada kesetiaan masyarakat dan hubungan antara satu sama lain. Kata Ubuntu berasal dari bahasa Zulu dan Xhosa. Ubuntu (diucapkan "oo BOON too") dipandang sebagai konsep tradisional Afrika, yang dianggap sebagai salah satu asas pendirian republik baru Afrika Selatan dan terhubung dengan ide kebangkitan kembali Afrika. Terjemahan singkat dari makna Ubuntu adalah "rasa perikemanusiaan terhadap orang lain". Terjemahan lainnya yaitu: "kepercayaan atas ikatan universal untuk saling berbagi yang menghubungkan seluruh umat manusia".
Definisi Ubuntu Ubuntu adalah salah satu distribusi Linux yang berbasiskan pada Debian dan memiliki interface desktop. Proyek Ubuntu disponsori oleh Canonical Ltd (perusahaan milik Mark Shuttleworth).
Keunggulan ubuntu Ubuntu adalah [sistem operasi] lengkap berbasis Linux, tersedia secara bebas dan mempunyai dukungan baik yang berasal dari komunitas maupun tenaga ahli profesional.
Keunggulan Ubuntu Komunitas Ubuntu dibentuk berdasarkan gagasan yang terdapat di dalam filosofi Ubuntu: Bahwa perangkat lunak harus tersedia dengan bebas biaya Bahwa aplikasi perangkat lunak tersebut harus dapat digunakan dalam bahasa lokal masingmasing dan untuk orang orang yang mempunyai keterbatasan fisik, dan Bahwa pengguna harus mempunyai kebebasan untuk mengubah perangkat lunak sesuai dengan apa yang mereka butuhkan.
Keunggulan Ubuntu Perihal kebebasan inilah yang membuat Ubuntu berbeda dari perangkat lunak berpemilik (proprietary); bukan hanya peralatan yang Anda butuhkan tersedia secara bebas biaya, tetapi Anda juga mempunyai hak untuk memodifikasi perangkat lunak Anda sampai perangkat lunak tersebut bekerja sesuai dengan yang Anda inginkan.
Kernel Kernel Linux adalah jantung dari Sistem Operasi Ubuntu. Sebuah kernel adalah bagian penting dari sistem operasi apapun, fungsinya adalah untuk menjembatani komunikasi antara perangkat keras dengan perangkat lunak.
Versi Ubuntu
Ubuntu 10.04 dengan GNOME 2
GNOME Shell
Unity pada Ubuntu 11.10
Desktop Plasma KDE
Xubuntu 11.10
LXDE desktop
Edisi Server
Ubuntu edisi Netbook
Komunitas Ubuntu indonesia http://groups.google.com/group/id ubuntu http://www.ubuntu id.org/ http://wiki.ubuntu id.org/ http://ubuntulinux.or.id/blog http://forum.ubuntulinux.or.id/ http://planet.ubuntu id.org/
Daftar Pustaka www.ubuntu.com www.ubuntu id.org
Perintah perintah dasar No Perintah Keterangan 1 ls untuk melihat list direktori 2 pwd melihat working direktori kita sekarang 3 clear membersihkan layar di terminal 4 mv merubah nama file 5 rm menghapus file 6 mkdir membuat direktori 7 rmdir menghapus direktori 8 free melihat free memory 9 df h melihat kapasitas harddisk 10 hostname menampilkan nama komputer 11 uptime melihat sudah berapa lama komputer 12 poweroff mematikan komputer 13 reboot merestart komputer