Sistem Panggilan vs Interupsi
Prosesor tipikal menjalankan instruksi satu per satu. Tetapi mungkin ada saat -saat ketika prosesor harus berhenti sementara dan memegang instruksi saat ini dan menjalankan beberapa program atau segmen kode lain (tinggal di beberapa tempat lain). Setelah melakukan ini, prosesor kembali ke eksekusi normal dan berlanjut dari tempat ia tinggalkan. Panggilan sistem dan interupsi adalah kesempatan seperti itu. Panggilan sistem adalah panggilan ke subrutin yang dibangun ke dalam sistem. Interupsi adalah gangguan kontrol program yang disebabkan oleh peristiwa perangkat keras eksternal.
Apa itu panggilan sistem?
Panggilan Sistem Menyediakan program yang berjalan di komputer antarmuka untuk berbicara dengan sistem operasi. Ketika suatu program perlu meminta layanan (yang tidak memiliki izin itu sendiri) dari kernel sistem operasi, ia menggunakan panggilan sistem. Proses tingkat pengguna tidak memiliki izin yang sama dengan proses yang berinteraksi langsung dengan sistem operasi. Misalnya, untuk berkomunikasi dengan dan perangkat I/O eksternal atau untuk berinteraksi dengan proses lain, suatu program harus menggunakan panggilan sistem.
Apa itu interupsi?
Selama pelaksanaan normal program komputer, mungkin ada peristiwa yang dapat menyebabkan CPU berhenti sementara. Acara seperti ini disebut interupsi. Interupsi dapat disebabkan oleh kesalahan perangkat lunak atau perangkat keras. Interupsi perangkat keras disebut interupsi (sederhana), sementara interupsi perangkat lunak disebut pengecualian atau perangkap. Setelah interupsi (perangkat lunak atau perangkat keras) dinaikkan, kontrol ditransfer ke subrutin khusus yang disebut ISR (interupsi layanan rutin) yang dapat menangani kondisi yang diangkat oleh interupsi.
Seperti disebutkan di atas, istilah interupsi biasanya disediakan untuk interupsi perangkat keras. Mereka adalah gangguan kontrol program yang disebabkan oleh peristiwa perangkat keras eksternal. Di sini, eksternal berarti eksternal dari CPU. Interupsi perangkat keras biasanya berasal dari berbagai sumber seperti chip timer, perangkat periferal (keyboard, mouse, dll.), Port I/O (serial, paralel, dll.), drive disk, jam CMOS, kartu ekspansi (kartu suara, kartu video, dll). Itu berarti interupsi perangkat keras hampir tidak pernah terjadi karena beberapa peristiwa yang terkait dengan program pelaksanaan. Misalnya, acara seperti tombol tekan pada keyboard oleh pengguna, atau timer timer perangkat keras internal dapat meningkatkan interupsi semacam ini dan dapat memberi tahu CPU bahwa perangkat tertentu membutuhkan perhatian. Dalam situasi seperti itu CPU akan menghentikan apa pun yang dilakukannya (saya.e. jeda program saat ini), menyediakan layanan yang diperlukan oleh perangkat dan akan kembali ke program normal.
Apa perbedaan antara panggilan sistem dan interupsi?
Panggilan sistem adalah panggilan ke subrutin yang dibangun ke dalam sistem, sementara interupsi adalah suatu peristiwa, yang menyebabkan prosesor untuk sementara memegang eksekusi saat ini. Namun satu perbedaan utama adalah bahwa panggilan sistem sinkron, sedangkan interupsi tidak. Itu berarti panggilan sistem terjadi pada waktu yang tetap (biasanya ditentukan oleh programmer), tetapi interupsi dapat terjadi kapan saja karena peristiwa yang tidak terduga seperti tekan tombol pada keyboard oleh pengguna. Oleh karena itu, kapan pun suatu panggilan sistem terjadi, prosesor hanya harus mengingat ke mana harus kembali, tetapi jika terjadi interupsi, prosesor harus mengingat tempat untuk kembali dan keadaan sistem. Tidak seperti panggilan sistem, interupsi biasanya tidak ada hubungannya dengan program saat ini.