Jumat, 15 Maret 2019

3.6 Proteksi dan Modus Eksekusi Proses (Task)

 


3.6 PROTEKSI DAN MODUS EKSEKUSI PROSES


Suatu proses dapat berjalan dalam salah satu modus yaitu modus user atau modus kernel (system atau privileged). Sistem yang memungkinkan proses berjalan dalam salah satu dari 2 macam modus ini disebut dengan sistem terproteksi (protected). Modus eksekusi protected ini amatlah penting pada sistem operasi yang multitasking.


Dalam sistem operasi multitasking terjadi kompetisi pemakaian sumber daya komputer. Oleh sebab itu, kode-kode instruksi program untuk mengakses sumber daya-sumber daya yang kritis haruslah bersifat trusted, yaitu kode-kode yang telah teruji dan aman, yang berarti menjamin tidak terjadinya monopoli pemakaian sumber daya oleh suatu proses tertentu. Untuk menjamin hal ini maka umumnya kode-kode instruksi yang boleh mengakses secara langsung peranti I/O atau sumber daya kritis lainnya adalah kode-kode instruksi sistem operasi yang telah diuji dan terbukti keandalannya. Kode instruksi dari aplikasi pengguna tidak diijinkan menggunakan instruksi pengaksesan sumber daya tersebut secara langsung. Sebagai gantinya, kode instruksi program aplikasi hanya diijinkan memanggil rutin atau layanan dari sistem operasi.


Kebutuhan proteksi di atas dapat dianalogikan seperti kasus penarikan uang kas dari bank. Suatu bank menyimpan uang (sumber daya) yang di- titipkan kepadanya oleh sejumlah besar pelanggan. Jika seorang pelang- gan (kode program aplikasi) hendak mengambil uangnya, dia tidak akan diijinkan mengambil (instruksi pengaksesan yang harus dijamin ke- amanannya) uangnya langsung dari brankas bank (sumber daya kritis). Hanya petugas kasir bank (rutin, layanan sistem operasi) yang berhak melakukan hal tersebut.


Yang dapat dilakukan oleh pelanggan tersebut adalah mengisi slip penarikan uang (melakukan instruksi yang dijalankan dalam modus user) dan menyerahkan ke kasir (memanggil rutin sistem operasi), dan kasir (sebagai sistem operasi) yang kemudian mengambil dan menghitungkan uang yang hendak ditarik (melakukan instruksi yang dijalankan dalam modus kernel).


Sistem Operasi


70


Untuk memungkinkan mekanisme demikian maka diperlukan dukungan pada level perangkat keras. Dukungan untuk melakukan modus eksekusi protected mulai tersedia pada prosesor Intel yang dimulai pada kelas prosesor Intel 386. Pada prosesor yang mendukung modus eksekusi secara protected, terdapat suatu bit yang menentukan apakah prosesor sedang berjalan dalam modus kernel atau modus user.


Jika prosesor sedang berjalan dalam modus kernel maka semua kode instruksi yang dijalankan akan dianggap kode trusted. Jadi jika prosesor sedang dalam modus kernel, semua jenis instruksi yang didukung pro- sesor akan dieksekusi begitu saja. Sebaliknya jika prosesor sedang berjalan dalam modus user maka semua kode instruksi akan dicek sebelum dijalan- kan. Dalam modus user ini, tidak semua jenis instruksi akan dijalankan oleh prosesor. Jika program pengguna mengeksekusi instruksi yang "terlarang" maka prosesor akan membangkitkan sinyal kesalahan yang memberitahukan bahwa program user mengeksekusi instruksi yang privileged, yang tidak diijinkan dalam modus user. Yang dimaksud dengan kode-kode "terlarang" seperti pengaksesan peranti I/O dan memori.


Tidak ada komentar:

Posting Komentar