Keserentakan (sains komputer)
Dalam sains komputer, keserentakan (bahasa Inggeris: concurrency) merupakan satu sifat sistem yang waktu membuat pengiraan-pengiraan bertindih, dan yang membenarkan sumber-sumber yang sama dikongsi antara pengiraan-pengiraan yang bertindih itu. Atau mengikut kata-kata Edsger Dijkstra, "Keserentakan berlaku apabila dua atau lebih aliran pelaksanaan dapat dilakukan dengan serentak." Penggunaan sumber-sumber kongsi dengan serentak merupakan sumber untuk banyak kesulitan. Syarat-syarat lumba yang melibatkan sumber-sumber kongsi boleh mengakibatkan tingkah laku sistem yang tidak dapat diramalkan. Pengenalan ekslusi bersaling boleh mencegah syarat-syarat lumba, tetapi juga boleh mengakibatkan masalah-masalah seperti kebuntuan dan kebuluran sumber. Perekaan bentuk sistem-sistem keserentakan seringnya melibatkan mencari-cari teknik-teknik yang boleh dipercayai untuk menyeleraskan pelaksanaan, pertukaran data, peruntukan ingatan, dan penjadualan pelaksanaan supaya dapat mengurangkan masa gerak balas dan memaksimumkan truput.
Teori
[sunting | sunting sumber]Teori keserentakan merupakan bidang penyelidikan yang aktif dalam sains komputer teori sejak penerbitan karya Carl Adam Petri yang sangat besar pengaruhnya mengenai jaring Petri pada awal dekad 1960-an. Sejak dari masa itu, berbagai-bagai model teori, logik, dan alat-alat untuk memahami sistem-sistem serentak telah dikembangkan.
Model
[sunting | sunting sumber]Berbagai-bagai formalisme untuk memodelkan dan memahami sistem-sistem serentak yang telah diperkembangkan, termasuk:
Sesetengah model keserentakan khususnya bertujuan untuk membantu pertimbangan dan spesifikasi, sedangkan yang lain boleh digunakan untuk seluruh kitaran pembangunan, termasuk reka bentuk, pelaksanaan, pembuktian, pengujian, serta penyelakuan sistem-sistem serentak.
Logik
[sunting | sunting sumber]Berbagai-bagai jenis logik masa boleh digunakan untuk membantu pertimbangan tentang sistem-sistem serentak. Sesetengah logik itu, seperti logik masa linear dan logik pokok pengiraan, membenarkan kenyataan dibuat tentang urutan-urutan keadaan yang dialami oleh sebuah sistem serentak. Yang lain seperti logik masa tindakan oleh Lamport, logik Hennessy-Milner, dan logik pokok pengiraan tindakan mendasarkan kenyataan-kenyataannya pada jujukan-jujukan tindakan (perubahan dalam keadaan). Kegunaan utama kesemua logik ini adalah untuk menulis spesifikasi-spesifikasi sistem serentak.
Amalan
[sunting | sunting sumber]Pengaturcaraan serentak merangkumi bahasa-bahasa pengaturcaraan dan algoritma-algoritma yang digunakan untuk melaksanakan sistem-sistem serentak. Pengaturcaraan serentak biasanya dianggap lebih umum, berbanding dengan pengaturcaraan selari kerana ia melibatkan pola-pola komunikasi dan saling tindak yang sembarangan dan dinamik. Sebaliknya, sistem-sistem selari umumnya mempunyai pola-pola komunikasi yang pratertakrif serta berstruktur rapi. Matlamat-matlamat asas pengaturcaraan serentak termasuk ketepatan, prestasi, serta keteguhan. Sistem-sistem selari seperti sistem-sistem pengendalian umumnya direka bentuk untuk beroperasi tak terhingga dan tidak terhenti tanpa dijangka. Sesetengah sistem serentak melaksanakan sejenis keserentakan nyata yang entiti-entiti pengiraan serentak akan bersaing dan berkongsi satu sumber tunggal, tetapi kerumitan-kerumitan persaingan dan pengongsian ini dilindungi daripada pengaturcara.
Oleh sebab sistem-sistem serentak menggunakan sumber-sumber kongsi, sistem-sistem itu biasanya memerlukan penggunaan sejenis pengantara (sering di dalam perkakasannya) dalam pelaksanaannya untuk mengawal capaian sumber-sumber tersebut. Penggunaan pengantara memungkinkan keputusan-keputusan ketaktentuan tak terbatas yang boleh menjejaskan ketepatan dan prestasi sistem serentak.
Lihat juga
[sunting | sunting sumber]- Bahasa atur cara serentak
- Bebenang
- Kawalan keserentakan
- OpenMP
- Nod gugusan
- Nod rangkaian klien-pelayan
- Nod sistem teragih
- Pengiraan serentak
- Pola keserentakan
- Projek Ptolemy
- Proses
Pautan luar
[sunting | sunting sumber]- Sistem Keserentakan Diarkibkan 2006-01-28 di Wayback Machine di Koleksi Maya WWW