Perbezaan Antara Sistem Panggilan dan Gangguan Sistem

Anonim

Panggil Sistem vs Ganggu

Pemproses biasa menjalankan arahan satu demi satu. Tetapi mungkin ada masa apabila pemproses terpaksa berhenti sementara dan memegang arahan semasa dan melaksanakan beberapa program atau segmen kod lain (yang tinggal di beberapa tempat lain). Selepas melakukan ini, pemproses kembali ke pelaksanaan normal dan terus dari mana ia berhenti. Panggilan sistem dan gangguan adalah peristiwa sedemikian. Panggilan sistem adalah panggilan ke subrutin yang dibina ke dalam sistem. Satu gangguan ialah gangguan kawalan program yang disebabkan oleh peristiwa perkakasan luaran.

Apakah Sistem Panggilan?

Panggilan sistem menyediakan program yang berjalan di komputer antara muka untuk berbincang dengan sistem operasi. Apabila program perlu meminta perkhidmatan (yang tidak mempunyai kebenaran itu sendiri) dari kernel sistem operasi ia menggunakan panggilan sistem. Proses peringkat pengguna tidak mempunyai keizinan yang sama seperti proses yang secara langsung berinteraksi dengan sistem operasi. Sebagai contoh, untuk berkomunikasi dengan dan peranti luaran I / O atau untuk berinteraksi dengan mana-mana proses lain, program harus menggunakan panggilan sistem.

Apa itu Interrupt?

Semasa pelaksanaan biasa program komputer, mungkin ada peristiwa yang dapat menyebabkan CPU berhenti sementara. Peristiwa-peristiwa seperti ini disebut gangguan. Gangguan boleh disebabkan oleh perisian atau kesalahan perkakasan. Interrupts perkakasan dipanggil (hanya) Interrupts, sementara gangguan perisian dipanggil Pengecualian atau Perangkap. Sebaik sahaja gangguan (perisian atau perkakasan) dinaikkan, kawalan dipindahkan ke subrutin khas yang dipanggil ISR (Ralat Perkhidmatan Interrupt) yang boleh mengendalikan keadaan yang dibangkitkan oleh gangguan.

Seperti yang dinyatakan di atas, Istilah Interrupt biasanya digunakan untuk mengganggu perkakasan . Mereka adalah gangguan kawalan program yang disebabkan oleh peristiwa perkakasan luaran. Di sini, luaran bermaksud luaran ke CPU . Butang perkakasan biasanya datang dari pelbagai sumber seperti cip pemasa, peranti periferal (papan kekunci, tetikus, dll.), Port I / O (siri, selari, dll.), Pemacu cakera, jam CMOS, kad pengembangan (bunyi kad, kad video, dan lain-lain). Ini bermakna gangguan perkakasan hampir tidak pernah berlaku disebabkan oleh beberapa peristiwa yang berkaitan dengan program pelaksana. Contohnya, peristiwa seperti akhbar utama pada keyboard oleh pengguna, atau pemasa perkakasan dalaman yang berkala boleh menimbulkan gangguan ini dan dapat memberitahu CPU bahawa peranti tertentu memerlukan perhatian. Dalam keadaan seperti itu, CPU akan menghentikan apa sahaja yang dilakukannya (i. Menghentikan program semasa), menyediakan perkhidmatan yang diperlukan oleh peranti dan akan kembali kepada program biasa.

Apakah perbezaan antara Panggilan Sistem dan Interrupt?

Panggilan sistem adalah panggilan ke subrutin yang dibina ke dalam sistem, manakala Interrupt adalah peristiwa, yang menyebabkan prosesor untuk sementara memegang pelaksanaan semasa. Walau bagaimanapun satu perbezaan utama ialah panggilan sistem adalah segerak, manakala gangguan tidak. Ini bermakna panggilan sistem berlaku pada masa yang ditetapkan (biasanya ditentukan oleh programmer), tetapi gangguan boleh berlaku pada bila-bila masa disebabkan peristiwa yang tidak dijangka seperti akhbar utama pada keyboard oleh pengguna. Oleh itu, apabila pernah ada panggilan sistem, pemproses hanya perlu mengingat di mana hendak kembali, tetapi sekiranya berlaku gangguan, pemproses perlu mengingati kedua-dua tempat itu untuk kembali dan keadaan sistem. Tidak seperti panggilan sistem, gangguan biasanya tidak ada kaitan dengan program semasa.