Kelas : 123D07
NIM : 12170606
No. Absen : 24
1. KONKURENSI
A. PENGERTIAN KONKURENSI
A. PENGERTIAN KONKURENSI
Konkurensi merupakan landasan umum perancangan sistem operasi. Proses-proses disebut konkuren jika proses-proses berada pada saat yang sama. Dikatakan sebagai landasan umum perancangan sistem operasi karena dalam menciptakan suatu sistem operasi, sistem operasi tersebut umumnya harus bisa menjalankan beberapa proses (lebih dari satu proses) pada saat yang bersamaan.
Pada proses-proses yang konkuren atau berada pada saat yang bersamaan, terdapat beberapa masalah yang harus diselesaikan. Masalah-masalah tersebut antara lain :
1. Mutual exclusion
2. Sinkronisasi
3. Deadlock
4. Starvation
Dengan kata lain, masalah-masalah diatas akan timbul apabila sistem operasi menjalankan beberapa proses pada saat yang bersamaan.
B. PRINSIP – PRINSIP KONKURENSI
Karena konkurensi merupakan landasan umum pada perancangan suatu sistem operasi, maka beberapa hal yang merupakan prinsip-prinsip konkurensi harus ada dalam sistem operasi yang akan dirancang. Konkurensi meliputi beberapa hal berikut ini:
- Alokasi waktu pemroses untuk proses-proses.
Hal ini berkaitan dengan penjadwalan proses pada suatu sistem operasi. Penjadwalan proses merupakan kumpulan kebijakan dan mekanisme dalam sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem operasi. Penjadwalan proses bertugas untuk mengatur proses mana yang harus berjalan, kapan dan seberapa lama proses tersebut dijalankan.
- Pemakaian bersama dan persaingan untuk mendapatkan sumber daya.
Dalam hal ini, sebuah sistem operasi harus bisa mengatur pemakaian sumber daya pada saat terjadinya konkurensi. Sumber daya yang ada jumlahnya terbatas, sehingga pada saat banyak proses yang berjalan sistem harus dapat mengatur pengalokasian sumberdaya agar tidak terjadi starvation. Selain itu terdapat juga sumber daya yang tidak bersifat shareable atau tidak dapat digunakan secara bersaman, sumber daya seperti itu disebut sumber daya kritis.
- Komunikasi antar proses.
Untuk mengatur kegiatan proses yang berjalan bersamaan, mereka harus dapat saling berkomunikasi, dimana proses-proses yang ingin dikomunikasikan harus memiliki sebuah cara untuk berkomunikasi satu dengan lainnya. Mereka dapat menggunakan komunikasi secara langsung atau tak langsung.
- Sinkronisasi aktivitas banyak proses.
Sinkronisasi aktivitas banyak proses ini mencakup semua hal di atas. Untuk terjadinya sinkronisasi antar proses-proses yang berjalan diperlukannya komunikasi antar proses yang berjalan. Setelah proses-proses tersebut berkomunikasi, sistem akan dapat membagi sumber daya yang ada baik itu sumber daya kritis atau tidak. Selan itu, sistem juga dapat mengatur penjadwalan proses dengan baik.
Konkurensi dapat muncul pada konteks berbeda, antara lain:
1. Banyak aplikasi (multiple application).
Multiprogramming memungkinkan banyak proses sekaligus dijalankan. Proses-proses dapat berasal dari aplikasi-aplikasi berbeda. Pada sistem multiprogramming bisa terdapat banyak aplikasi sekaligus yang dijalankan di sistem komputer.
2. Aplikasi terstruktur.
Perluasan prinsip perancangan modular dan pemrograman terstruktur adalah suatu aplikasi dapat secara efektif diimplementasikan sebagai sekumpulan proses. Dengan sekumpulan proses, maka tiap proses menyediakan satu layanan spesifik tertentu.
3. Struktur sistem operasi.
Keunggulan strukturisasi dapat juga diterapkan ke pemrograman sistem. Beberapa sistem operasi aktual yang dipasarkan dan yang sedang dalam riset telah diimplementasikan sebagai sekumpulan proses. Sistem operasi bermodelkan client/server menggunakan pendekatan ini.
C. INTERAKSI ANTAR PROSES
Pada sistem dengan banyak proses (kongkuren), terdapat 3 katagori interaksi antar proses berdasarkann derajat pengetahuan keberadaan proses lainnya, yaitu:
1. Proses tidak saling mengetahui keberadaannya.
Proses seperti ini merupakan proses yang tidak dimaksudkan untuk bekerjasama. Pada multiprogramming dengan proses-proses independen, dapat berupa batch atau sesi interaktif, atau campuran keduanya. Walaupun proses saling tidak melakukan kerjasama, sistem operasi perlu memperhatikan kompetisi sumber daya. Misalnya dua aplikasi independen dapat sama-sama menginginkan akses ke disk, file , atau printer yang sama. Sistem operasi harus mengatur akses tersebut.
2. Proses mengetahui keberadaan proses lainnya secara tidak langsung.
Proses seperti ini adalah proses yang tidak harus saling mengetahui akan keberadaan proses lainnya berdasarkan namanya namun memiliki akses berbagi ke beberapa objek, misaslkan bufer I/O. Proses seperti itu menunjukkan adanya kooperasi dalam melakukan berbagi pemakaian ojek.
3. Proses mengetahui keberadaan proses lainnya secara langsung.
Proses-proses seperti ini adalah proses yang dapat berkomunikasi satu dengan lainnya berdasarkan nama dan merupakan proses yang dirancang untuk bekerja sama dalam melakukan aktivitas-aktivitas tertentu. Demikian pula, proses seperti ini menunjukkan adanya kooperasi.
D. KESULITAN – KESULITAN YANG DITIMBULKAN KONKURENSI
Masalah yang dihadapi proses-proses kongkurensi pada multiprogramming dan multiprocessing serupa, yaitu: kecepatan eksekusi proses-proses di sistem tidak dapat diprediksi. Beberapa kemungkinan yang terjadi tidak dapat diprediksi seperti:
1. Kecepatan proses pada sistem tergantung pada beberapa hal, antara lain:
a) Aktivitas proses-proses lain
b) Cara sistem operasi menangani interupsi
c) Kebijaksanaan penjadwalan yang dilakukan oleh sistem operasi.
2. Beberapa kesulitan yang dapat muncul, di antaranya adalah:
a) Pemakaian bersama sumber daya global.
Jika dua proses menggunakan variabel global yang sama, serta keduanya membaca dan menulis variabel itu maka urutan terjadinya pembacaan dan penulisan terhadap variabel itu menjadi kritis.
b) Pengelolaan alokasi sumber daya agar optimal
Jika proses A meminta suatu kanal masukan/keluaran tertentu dan dapat terjadi kemudian proses A di suspend sebelum menggunakan kanal itu. Jika sistem operasi mengunci kanal tersebut dan orang lain tidak dapat menggunakannya, maka akan terjadi inefisiensi.
c) Pencarian kesalahan pemrograman.
Pencarian kesalahan pada pemrograman kongkuren lebih sulit dibanding pencarian kesalahan pada program-program sekuen.
3. Proses-proses konkuren mengharuskan beberapa hal yang harus ditangani, antara lain:
a) Sistem operasi harus mengetahui proses-proses yang aktif
b) Sistem operasi harus mengalokasikan dan mendealokasikan beragam sumber daya untuk tiap proses aktif. Sumber daya yang harus dikelola, antara lain:
(1) Waktu pemroses.
(2) Memori
(3) Berkas-berkas
(4) Perangkat I/O
c) Sistem operasi harus memproteksi data dan sumber daya fisik masing-masing proses dari gangguan proses-proses lain.
d) Hasil-hasil proses harus independen terhadap kecepatan relatif proses-proses lain dimana eksekusi dilakukan.
E. POKOK – POKOK PENYELESAIAN MASALAH PADA KONKURENSI
Pada dasarnya penyelesaian masalah kongkurensi terbagi menjadi 2, yaitu:
1. Mengasumsikan adanya memori yang digunakan bersama
2. Tidak mengasumsikan adanya memori yang digunakan bersama.
Adanya memori bersama lebih memudahkan penyelesaian masalah kongkurensi. Metode memori bersama dapat dipakai untuk singleprocessor ataupun multiprocessor yang mempunyai memori bersama. Penyelesaian ini tidak dapat digunakan untuk multiprocessor tanpa memori bersama atau untuk sistem tersebar.
2. KEAMANAN SISTEM
Pokok masalah keamanan sistem salah satunya disebabkan karena sistem time sharing dan akses jarak jauh, apalagi dengan meningkatnya perkembangan jaringan komputer.
Keamanan sistem komputer adalah untuk menjamin sumber daya sistem tidak digunakan / dimodifikasi, diinterupsi dan diganggu oleh orang yang tidak diotorisasi. Pengamanan termasuk masalah teknis, manajerial, legalitas dan politis.
3 macam keamanan sistem, yaitu :
1. Keamanan eksternal / external security
Berkaitan dengan pengamanan fasilitas komputer dari penyusup dan bencana seperti kebakaran / kebanjiran.
2. Keamanan interface pemakai / user interface security
Berkaitan dengan indentifikasi pemakai sebelum pemakai diijinkan mengakses program dan data yang disimpan
3. Keamanan internal / internal security
Berkaitan dengan pengamanan beragam kendali yang dibangun pada perangkat keras dan sistem operasi yang menjamin operasi yang handal dan tak terkorupsi untuk menjaga integritas program dan data.
2 masalah penting keamanan, yaitu :
1. Kehilangan data / data loss
Yang disebabkan karena :
• Bencana, contohnya kebakaran, banjir, gempa bumi, perang, kerusuhan, tikus, dll.
• Kesalahan perangkat keras dan perangkat lunak, contohnya ketidak berfungsinya pemroses, disk / tape yang tidak terbaca, kesalahan komunikasi, kesalahan program / bugs.
• Kesalahan / kelalaian manusia, contohnya kesalahan pemasukkan data, memasang tape / disk yang salah, kehilangan disk / tape.
2. Penyusup / intruder
• Penyusup pasif, yaitu yang membaca data yang tidak terotorisasi
• Penyusup aktif, yaitu mengubah data yang tidak terotorisasi.
Contohnya penyadapan oleh orang dalam, usaha hacker dalam mencari uang, spionase militer / bisnis, lirikan pada saat pengetikan password.
Sasaran keamanan adalah menghindari, mencegah dan mengatasi ancaman terhadap sistem.
3 aspek kebutuhan keamanan sistem komputer, yaitu :
1. Kerahasiaan / secrecy, diantaranya privasi
Keterjaminan bahwa informasi di sistem komputer hanya dapat diakses oleh pihak-pihak yang terotorisasi dan modifikasi tetap menjaga konsistensi dan keutuhan data di sistem
2. Integritas / integrity
Keterjaminan bahwa sumber daya sistem komputer hanya dapat dimodifikasi oleh pihak-pihak yang terotorisasi
3. Ketersediaan / availability
Keterjaminan bahwa sumber daya sistem komputer tersedia bagi pihak-pihak yang diotorisasi saat diperlukan
Pokok masalah keamanan sistem salah satunya disebabkan karena sistem time sharing dan akses jarak jauh, apalagi dengan meningkatnya perkembangan jaringan komputer.
Tipe ancaman terhadap keamanan sistem komputer dapat dimodelkan dengan memandang fungsi sistem komputeer sebagai penyedia informasi.
Berdasarkan fungsi ini, ancaman terhadap sistem komputer dikategorikan menjadi 4 ancaman, yaitu :
1. Interupsi / interuption
Sumber daya sistem komputer dihancurkan / menjadi tak tersedia / tak berguna. Merupakan ancaman terhadap ketersediaan. Contohnya penghancuran harddisk, pemotongan kabel komunikasi.
2. Intersepsi / interception
Pihak tak diotorisasi dapat mengakses sumber daya. Merupakan ancaman terhadap kerahasiaan. Pihak tak diotorissasi dapat berupa orang / program komputeer. Contohnya penyadapan, mengcopy file tanpa diotorisasi
3. Modifikasi / modification
Pihak tak diotorisasi tidak hanya mengakses tapi juga merusak sumber daya. Merupakan ancaman terhadap integritas. Contohnya mengubah nilai file, mengubah program, memodifikasi pesan
4. Fabrikasi / fabrication
Pihak tak diotorisasi menyisipkan / memasukkan objek-objek palsu ke sistem. Merupakan ancaman terhadap integritas. Contohnya memasukkan pesan palsu ke jaringan, menambah record file.
Petunjuk prinsip-prinsip pengamanan sistem komputer, yaitu :
1. Rancangan sistem seharusnya publik
Tidak tergantung pada kerahasiaan rancangan mekanisme pengamanan. Membuat proteksi yang bagus dengan mengasumsikan penyusup mengetahui cara kerja sistem pengamanan.
2. Dapat diterima
Mekanisme harus mudah diterima, sehingga dapat digunakan secara benar dan mekanisme proteksi tidak mengganggu kerja pemakai dan pemenuhan kebutuhan otorisasi pengaksesan.
3. Pemeriksaan otoritas saat itu
Banyak sisten memeriksa ijin ketika file dibuka dan setelah itu (opersi lainnya) tidak diperiksa.
4. Kewenangan serendah mungkin
Program / pemakai sistem harusnya beroperasi dengan kumpulan wewenang serendah mungkin yang diperlukan untuk menyelesaikan tugasnya.
5. Mekanisme yang ekonomis
Mekanisme proteksi seharusnya sekecil dan sesederhana mungkin dan seragam sehingga mudah untuk verifikasi.
3 cara otentifikasi :
1. Sesuatu yang diketahui pemakai, misalnya password, kombinasi kunci, nama kecil ibu mertua, dll
Untuk password, pemakai memilih suatu kata kode, mengingatnya dan menggetikkannya saat akan mengakses sistem komputer, saat diketikkan tidak akan terlihat dilaya kecuali misalnya tanda *. Tetapi banyak kelemahan dan mudah ditembus karena pemakai cenderung memilih password yang mudah diingat, misalnya nama kecil, nama panggilan, tanggal lahir, dll.
Upaya pengamanan proteksi password :
a. Salting, menambahkan string pendek ke string password yang diberikan pemakai sehingga mencapai panjang password tertentu
b. one time password, pemakai harus mengganti password secara teratur, misalnya pemakai mendapat 1 buku daftar password. Setiap kali login pemakai menggunakan password berikutnya yang terdapat pada daftar password.
c. satu daftar panjang pertanyan dan jawaban, sehingga pada saat login, komputer memilih salah satu dari pertanyaan secara acak, menanyakan ke pemakai dan memeriksa jawaban yang diberikan.
d. tantangan tanggapan / chalenge respone, pemakai diberikan kebebasan memilih suatu algoritma misalnya x3, ketika login komputer menuliskan di layar angka 3, maka pemakai harus mengetik angka 27.
2. Sesuatu yang dimiliki pemakai, misalnya bagde, kartu identitas, kunci, barcode KTM, ATM.
Kartu pengenal dengan selarik pita magnetik. Kartu ini disisipkan de suatu perangkat pembaca kartu magnetik jika akan mengakses komputer, biasanya dikombinasikan dengan password.
3. Sesuatu mengenai / merupakan ciri pemakai yang di sebut biometrik, misalnya sidik jari, sidik suara, foto, tanda tangan, dll
Pada tanda tangan, bukan membandingkan bentuk tanda tangannya (karena mudah ditiru) tapi gerakan / arah dan tekanan pena saat menulis (sulit ditiru).
Untuk memperkecil peluang penembusan keamanan sistem komputer harus diberikan pembatasan, misalnya :
1. Pembatasan login, misalnya pada terminal tertentu, pada waktu dan hari tertentu
2. Pembatasan dengan call back, yaitu login dapat dilakukan oleh siapapun, bila telah sukses, sistem memutuskan koneksi dan memanggil nomor telepon yang disepakati. Penyusup tidak dapat menghibungu lewat sembarang saluran telepon, tapi hanya pada saluran tetepon tertentu.
3. Pembatasan jumlah usaha login, misalnya dibatasi sampai 3 kali, dan segera dikunci dan diberitahukan ke administrator.
Objek yang perlu diproteksi :
1. Objek perangkat keras, misalnya pemroses, segment memori, terminal, diskdrive, printer, dll
2. Objek perangkat lunak, misalnya proses, file, basis data, semaphore, dll
Masalah proteksi adalah mengenai cara mencegah proses mengakses objek yang tidak diotorisasi. Sehingga dikembangkan konsep domain. Domain adalah himpunan pasangan (objek,hak). Tiap pasangan menspesifikasikan objek dan suatu subset operasi yang dapat dilakukan terhadapnya. Hak dalam konteks ini berarti ijin melakukan suatu operasi.
Cara penyimpanan informasi anggota domain berupa satu matrik besar, dimana :
- baris menunjukkan domain
- kolom menunjukkan objek
SUMBER :
https://oktapiyanti.wordpress.com/2011/10/01/keamanan-sistem/
https://noursloudy.wordpress.com/2014/05/29/makalah-konkurensi-untuk-tugas-mata-kuliah-sistem-operasi/
Tidak ada komentar:
Posting Komentar