1. Dokumen ini membahas tentang deteksi dan perbaikan deadlock pada sistem operasi.
2. Ada beberapa algoritma untuk mendeteksi deadlock seperti menggunakan resource allocation graph dan wait-for graph.
3. Untuk memperbaiki deadlock dapat dilakukan dengan menghentikan proses yang mengalami deadlock atau menunda sumber daya dari proses tertentu.
Makalah Organisasi Komputer - Direct Memory Access (DMA)Fajar Jabrik
Direct memory access (DMA) adalah suatu alat pengendali khusus disediakan untuk memungkinkan transfes blok data langsung antar perangkat eksternal dan memori utama, tanpa intervensi terus menerus dari prosesor. Transfer DMA dilakukan oleh sirkuit kontrol yang merupakan bagian dari antar muka perangkat I/O. Istilah ini yang sering banyak kita ketahui adalah sebagai kontroler DMA. Kontroler DMA melakukan fungsi yang biasanya dilakukan oleh prosesor pada saat mengakses memori utama (yang sering disebut :RAM). Untuk setiap word yang ditransfer, kontroler ini menyediakan alamat memori dan semua sinyal bus yang mengontrol transfer data. Karena harus mentransfer sejumlah blok data, maka kontroler DMA harus menaikkan alamat memori untuk word yang berurutan dan mencatat jumlah transfer.
Makalah Organisasi Komputer - Direct Memory Access (DMA)Fajar Jabrik
Direct memory access (DMA) adalah suatu alat pengendali khusus disediakan untuk memungkinkan transfes blok data langsung antar perangkat eksternal dan memori utama, tanpa intervensi terus menerus dari prosesor. Transfer DMA dilakukan oleh sirkuit kontrol yang merupakan bagian dari antar muka perangkat I/O. Istilah ini yang sering banyak kita ketahui adalah sebagai kontroler DMA. Kontroler DMA melakukan fungsi yang biasanya dilakukan oleh prosesor pada saat mengakses memori utama (yang sering disebut :RAM). Untuk setiap word yang ditransfer, kontroler ini menyediakan alamat memori dan semua sinyal bus yang mengontrol transfer data. Karena harus mentransfer sejumlah blok data, maka kontroler DMA harus menaikkan alamat memori untuk word yang berurutan dan mencatat jumlah transfer.
Tugas GSLC huffman code saya untuk mata kuliah Algorithm and Design Analysis. Terdapat Frequency table, huffman tree, huffman code, dan saved memory (%).
Terima kasih.
Makalah Peranan Semaphore Sistem Operasi - Universitas WidyatamaDEDE IRYAWAN
Semaphore adalah salah satu teknik sinyal sederhana, dan merupakan konsep penting dalam OS desain, dimana sebuah nilai integer digunakan untuk pensinyalan antara proses. Hanya tiga operasi yang mungkin dilakukan pada semaphore, yang semuanya atom: inisialisasi, penurunan, dan penaikan.
Apa Itu Efisiensi Algoritma ?
Algoritma yang dapat dikatakan sebagai algoritma yang efisien, merupakan algoritma yang dimana pada saat pemrosesan algoritma tersebut tidak memakan banyak waktu dan juga ditak memakan banyak memori dalam pemrosesannya.
Seperti yang sudah di jelaskan, efisiensi algoritma umumnya di tinjau dari 2 hal, yaitu efisiensi terhadap waktu, dan efisiensi terhadap memori.
Walaupun algoritma yang memberikan keluaran yang benar (paling mendekati kenyataan), tetapi jika harus menunggu berjam-jam atau mungkin berhari-hari untuk mendapatkan outputannya (dalam hal ini yang dimaksudkan adalah efisiensi dalam waktu), algoritma tersebut biasanya tidak akan dipakai. Kebanyakan orang lebih menginignkan algoritma yang memiliki pengeluaran atau hasil outputan yang lebih cepat. Waktu yang diperlukan (running time) oleh sebuah algoritma cenderung tergantung pada jumlah input yang diproses.
Running time dari sebuah algoritma adalah fungsi dari jumlah inputnya. Running time dari suatu algoritma berbeda-beda bergantung pada input yang diberikan. Dengan demikian pengukurannya dihitung sebagai fungsi dari besarnya input yang diberikan.
Tugas GSLC huffman code saya untuk mata kuliah Algorithm and Design Analysis. Terdapat Frequency table, huffman tree, huffman code, dan saved memory (%).
Terima kasih.
Makalah Peranan Semaphore Sistem Operasi - Universitas WidyatamaDEDE IRYAWAN
Semaphore adalah salah satu teknik sinyal sederhana, dan merupakan konsep penting dalam OS desain, dimana sebuah nilai integer digunakan untuk pensinyalan antara proses. Hanya tiga operasi yang mungkin dilakukan pada semaphore, yang semuanya atom: inisialisasi, penurunan, dan penaikan.
Apa Itu Efisiensi Algoritma ?
Algoritma yang dapat dikatakan sebagai algoritma yang efisien, merupakan algoritma yang dimana pada saat pemrosesan algoritma tersebut tidak memakan banyak waktu dan juga ditak memakan banyak memori dalam pemrosesannya.
Seperti yang sudah di jelaskan, efisiensi algoritma umumnya di tinjau dari 2 hal, yaitu efisiensi terhadap waktu, dan efisiensi terhadap memori.
Walaupun algoritma yang memberikan keluaran yang benar (paling mendekati kenyataan), tetapi jika harus menunggu berjam-jam atau mungkin berhari-hari untuk mendapatkan outputannya (dalam hal ini yang dimaksudkan adalah efisiensi dalam waktu), algoritma tersebut biasanya tidak akan dipakai. Kebanyakan orang lebih menginignkan algoritma yang memiliki pengeluaran atau hasil outputan yang lebih cepat. Waktu yang diperlukan (running time) oleh sebuah algoritma cenderung tergantung pada jumlah input yang diproses.
Running time dari sebuah algoritma adalah fungsi dari jumlah inputnya. Running time dari suatu algoritma berbeda-beda bergantung pada input yang diberikan. Dengan demikian pengukurannya dihitung sebagai fungsi dari besarnya input yang diberikan.
ANALISIS PENGARUH INDUSTRI BATU BARA TERHADAP PENCEMARAN UDARA.pdfnarayafiryal8
Industri batu bara telah menjadi salah satu penyumbang utama pencemaran udara global. Proses ekstraksi batu bara, baik melalui penambangan terbuka maupun penambangan bawah tanah, menghasilkan debu dan gas beracun yang dilepaskan ke atmosfer. Gas-gas tersebut termasuk sulfur dioksida (SO2), nitrogen oksida (NOx), dan partikel-partikel halus (PM2.5) yang berbahaya bagi kesehatan manusia dan lingkungan. Selain itu, pembakaran batu bara di pembangkit listrik dan industri menyebabkan emisi karbon dioksida (CO2), yang merupakan penyebab utama perubahan iklim global dan pemanasan global.
Pencemaran udara yang disebabkan oleh industri batu bara juga memiliki dampak lokal yang signifikan. Di sekitar area penambangan, debu batu bara yang dihasilkan dapat mengganggu kesehatan masyarakat dan ekosistem lokal. Paparan terus-menerus terhadap debu batu bara dapat menyebabkan masalah pernapasan seperti asma dan bronkitis, serta berkontribusi pada penyakit paru-paru yang lebih serius. Selain itu, hujan asam yang disebabkan oleh emisi sulfur dioksida dapat merusak tanaman, air tanah, dan ekosistem sungai, mengancam keberlanjutan lingkungan di sekitar lokasi industri batu bara.
ANALISIS PENGARUH INDUSTRI BATU BARA TERHADAP PENCEMARAN UDARA.pdf
Sistem Operasi _ Mendeteksi deadlock
1. TUGAS INDIVIDU
SISTEM OPERASI
NAMA : SAMUEL BOSAWER
NPM : 16 411 045
KELAS : A
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS ILMU KOMPUTER DAN MANAJEMEN
UNIVERSITAS SAINS DAN TEKNOLOGI JAYAPURA
2017
2. A. MENDETEKSI DEADLOCK
Jika sistem tidak menyediakan algoritma mencegah deadlock dan menghindari
deadlock, maka terjadi deadlock. Pada lingkungan ini sistem harus menyediakan :
Algoritma yang menguji state sistem untuk menentukan apakah deadlock
telah terjadi.
Algoritma untuk memperbaiki dari deadlock.
1. Satu Anggota untuk Setiap Tipe Sumber Daya
Jika semua sumber daya hanya mempunyai satu anggota, kita dapat menentukan
algoritma mendeteksi deadlock menggunakan bentuk resource allocation graph yang
disebut wait-for graph.
Garis dari Pi ® Pj pada wait-for graph menandakan bahwa proses Pi menunggu
Pj melepaskan sumber daya yang dibutuhkan Pi. Garis Pi ® Pj terdapat pada wait-for
graph jika dan anya jika resource allocation graph berisi dua garis Pi ® Rq dan Rq ® Pj
untuk beberapa sumber daya Rq seperti Gambar 6-7.
Secara periodik sistem menggunakan algoritma yang mencari siklus pada graph.
Algoritma untuk mendeteksi siklus pada graph membutuhkan operasi n2 dimana n adalah
jumlah titik pada graph.
Gambar : (a) Resource allocation graph (b) Wait-for graph
2. Beberapa Anggota untuk Setiap Tipe Sumber Daya
Untuk Tipe sumber daya yang mempunyai beberapa anggota digunakan algoritma
yang sejenis dengan algoritma Banker dengan struktur daya seperti di bawah ini :
Available : vector panjang m menandakan jumlah sumber daya yang tersedia
untuk setiap tipe sumber daya.
Allocation : matrik n x m yang mendefinisikan jumlah sumber daya untuk setiap
tipe sumber daya yang sedang dialokasikan untuk setiap proses.
Request : matrik n x m yang mendefinisikan permintaan setiap proses. Jika
Request [I, j] = k, maka proses Pi meminta k anggota tipe sumber daya Rj.
3. Algoritma mendeteksi deadlock mempunyai urutan berikut :
1. Work dan Finish adalah vektor panjang m dan n. Inisialisasi Work = Available.
Untuk i = 1, 2, …, n, jika Allocationi ¹ 0, maka Finish[i] = false; sebaliknya Finish[i]
= true.
2. Cari indeks i yang memenuhi kondisi berikut :
(a) Finish[i] == false
(b) Requesti £ Work
Jika tidak terdapat i ke langkah 4.
3. Work = Work + Allocationi
Finish[i] = true
Ke langkah 2.
4. Jika Finish[i] == false, untuk beberapa i, 1 £ i £ n, maka sistem berada pada state
deadlock state. Jika Finish[i] == false, maka Pi deadlock
Algoritma ini memerlukan operasi O(m x n2) untuk mendeteksi apakah sistem
berada pada state deadlock.
Untuk menggambarkan algoritma deteksi, misalnya sistem terdapat 5 proses P0
sampai P4 dan 3 tipe sumber daya A, B dan C. Tipe sumber daya A mempunyai 7
anggota, tipe sumber daya B mempunyai 2 anggota dan tipe sumber daya C
mempunyai
6 anggota. Pada waktu T0, state sumber daya yang dialokasikan adalah :
Sistem tidak berada pada state deadlock karena urutan <P0, P2, P3, P1, P4>
menghasilkan Finish[i] = true untuk semua i.
Sistem sekarang berada pada state deadlock. Meskipun proses P0 dapat membawa
sumber daya, jumlah sumber daya yang tersedia tidak dapat memenuhi permintaan proses
lain. Sehingga terjadi deadlock pada proses P1, P2, P3 dan P4.
4. 3. Penggunaan Algoritma Deteksi
Untuk menjawab kapan dan berapa sering menggunakan algoritma deteksi, hal
ini tergantung pada :
Seberapa sering terjadi deadlock.
Berapa proses yang perlu dilakukan roll back.
Jika algoritma deteksi digunakan, terdapat beberapa siklus pada graph, hal ini
tidak dapat mengetahui berapa proses yang deadlock yang menyebabkan deadlock.
B. PERBAIKAN DARI DEADLOCK
Terdapat dua pilihan untuk membebaskan deadlock. Satu solusi sederhana adalah dengan
menghentikan satu atau beberapa proses untuk membebaskan kondisi menunggu sirkular.
Pilihan kedua adalah menunda beberapa sumber daya dari satu atau lebih proses yang
deadlock
A. Terminasi Proses
Untuk memperbaiki deadlock dengan terminasi proses, dapat diguankan salah satu
dari dua metode di bawah ini :
Menghentikan (abort) semua proses yang deadlock
Menghentikan satu proses setiap waktu sampai siklus deadlock hilang.
Untuk menentukan urutan proses yang harus dihentikan ada beberapa faktor yang
harus diperhatikan :
Prioritas proses.
Berapa lama proses dijalankan dan berapa lama lagi selesai.
Sumber daya yang digunakan proses.
Sumber daya proses yang diperlukan untuk menyelesaikan task.
Berapa proses yang perlu diterminasi.
Apakah proses interaktif atau batch.
B. Menunda Sumber Daya
Untuk menghilangkan deadlock dengan menunda sumber daya, sumber daya dari
proses harus ditunda dan memberikan sumber daya tersebut ke proses lain sampai siklus
deadlock hilang.
Jika penundaan dibutuhkan untuk menghilangkan deadlock, terdapat tiga hal
yang perlu diperhatikan :
Pilihlah korban (sumber daya) yang mempunyai biaya minimal.
Lakukan rollback yaitu memulai kembali (restart) proses pada state yang aman.
Harus dijamin starvation tidak akan terjadi karena kemungkinan beberapa proses
selalu terpilih sebagai korban termasuk jumlah rollback sebagai faktor biaya
C. METODE KOMBINASI MENANGANI DEADLOCK
Untuk menangani deadlock dilakukan kombinasi dari tiga algoritma dasar yaitu
mencegah deadlock, menghindari deadlock dan mendeteksi deadlock. Kombinasi ketiga
algoritma ini memungkinkan penggunaan yang optimal untuk setiap sumber daya pada
sistem.