Skip to main content

Critical Section

Hasil gambar untuk apa itu critical section

Sebuah proses memiliki bagian dimana bagian ini akan melakukan akses dan manipulasi data. Bagian ini disebut dengan critical section. Ketika sebuah proses sedang dijalankan dalam critical section nya, tidak ada proses lain yang boleh dijalankan dalam critical section nya. Karena hal ini dapat memungkinkan terjadinya akses ke resources yang sama dalam waktu yang sama. Keadaan seperti ini disebut proses tersebut mutually exclusive. Oleh karena itu, diperlukan suatu mekanisme atau aturan agar proses sifat mutually exclusive dapat terpenuhi.

Dengan mengontrol variabel mana yang diubah baik didalam maupun diluar critical section, concurrent access dapat dicegah. Critical section biasanya digunakan saat program multithreading, dimana program tersebut terdiri dari banyak thread, akan mengubah nilai dari variabel. Dalam hal ini critical section diperlukan untuk melindungi variabel dari concurrent access yang dapat membuat nilai dari variabel tersebut menjadi tidak konsisten.

Lalu bagaimana critical section tersebut diimplementasikan didalam sistem operasi. Metode yang paling sederhana adalah dengan mencegah adanya thread lain yang mengubah variabel yang sedang digunakan dalam critical section. Selain itu, system call yang dapat menyebabkan context switch juga dihindari. Jika scheduler meng- interrupt proses yang sedang mengakses critical section nya, maka scheduler akan membiarkan proses tersebut menyelesaikan critical section nya atau menghentikannya sementara untuk memberi kesempatan bagi proses lain untuk menjalankan critical section nya. Proses yang sedang berada dalam critical section nya dijalankan secara mutually exclusive.

Ada dua jenis solusi untuk memecahkan masalah critical section, yaitu.


  1. Solusi Perangkat Lunak. Solusi ini menggunakan algoritma-algoritma untuk mengatasi masalah critical section.
  2. Solusi Perangkat Keras. Solusi ini tergantung pada beberapa instruksi mesin tertentu, misalnya dengan me-non-aktifkan interupsi, mengunci suatu variabel tertentu atau menggunakan instruksi level mesin seperti tes dan set.
sumber :

Comments

Popular posts from this blog

Distributed Processing

credit:  https://docs.oracle.com/cd/A84870_01/doc/server.816/a76965/c29dstpr.htm Distributed Processing adalah kemampuan mengerjakan semua proses pengolahan data secara bersama antara komputer pusat dengan beberapa komputer yang lebih kecil dan saling dihubungkan melalui jalur komunikasi. Setiap komputer tersebut memiliki prosesor mandiri sehingga mampu mengolah sebagian data secara terpisah, kemudian hasil pengolahan tadi digabungkan menjadi satu penyelesaian total. Jika salah satu prosesor mengalami kegagalan atau masalah maka prosesor yang lain akan mengambil alih tugasnya. sumber:  http://seno-if.blogspot.com/2012/09/multiprogramming-multitasking.html

Android

credit:  https://blog.mindorks.com/android-view-evolution-placeholderview SEJARAH PERKEMBANGAN ANDROID Sistem Operasi yang dikembangkan oleh Android ini diperuntunkan oleh pengguna Smartphone dan PDA serta Tablet yang berbasis dasar dari OS Linux. Ponsel pertama yang memakai sistem Operasi Android adalah HTC Dream yang di rilis pada tanggal 22 Oktober 2008 dan pada awal tahun 2009 mulailah para pengembang ponsel menggunakan OS android ini dan di perkirakan setidaknya 18 ponsel bersistem OS Android rilis di awal tahun 2009. Berikut urutan perkembangan Android: credit:  http://nigerianecho.com.ng/android-nougat-takes-over-marshmallow-to-become-the-most-used-version-of-android/ -Android Beta Pertama kali dirilis pada 5 November 2007, kemudian pada 12 November 2007 Software Development Kit (SDK) dirilis oleh Google. -Android 1.0 (Astro) Pertama kali dirilis pada 23 Spetember 2008. Sebenarnya Android versi pertama ini akan dinamai dengan nama “Astro” tapi karena a...

Batch System

credit:  http://techwhiteprints.com/papers/batch-system-design-essentials_v1_0.ashx Batch system dikenalkan pada generasi kedua (1955-1965). Batch sistem adalah suatu teknik pengurutan kerja secara otomatis untuk menghindari waktu menganggurnya CPU. Tugas ini dikerjakan dalam satu rangkaian, lalu dieksekusi secara berurutan. Pada generasi ini sistem komputer belum dilengkapi sistem operasi, tetapi beberapa fungsi sistem operasi telah ada, contohnya fungsi sistem operasi ialah FMS dan IBSYS. contoh sebuah Batch System adalah sebuah e-mail dan transaksi batch processing. Dalam suatu sistem batch processing, transaksi secara individual dientri melalui peralatan terminal, dilakukan validasi tertentu, dan ditambahkan ke transaction file yang berisi transaksi lain, dan kemudian dientri ke dalam sistem secara periodik. Di waktu kemudian, selama siklus pengolahan berikutnya, transaction file dapat divalidasi lebih lanjut dan kemudian digunakan untuk meng-up date master file yang berka...