Panggilan sistem vs panggilan fungsi
Pemproses biasa melaksanakan arahan satu persatu. Tetapi mungkin ada keadaan di mana pemproses perlu menghentikan arahan semasa dan melaksanakan beberapa program atau segmen kod lain (tinggal di beberapa tempat lain). Setelah melakukan ini, pemproses kembali ke pelaksanaan biasa dan terus dari mana ia berhenti. Panggilan sistem dan panggilan fungsi adalah keadaan seperti itu. Panggilan sistem adalah panggilan ke subrutin yang dibina ke dalam sistem. Panggilan fungsi adalah panggilan ke subrutin dalam program itu sendiri.
Apa itu Panggilan Sistem?
Panggilan sistem menyediakan program yang dijalankan di komputer antara muka untuk bercakap dengan sistem operasi. Apabila program perlu meminta perkhidmatan (yang mana ia tidak mempunyai kebenaran untuk melakukannya dengan sendirinya) dari kernel sistem operasi, ia menggunakan panggilan sistem. Proses tahap pengguna tidak mempunyai keizinan yang sama seperti proses yang secara langsung berinteraksi dengan sistem operasi. Contohnya, untuk berkomunikasi dengan peranti I/O luaran atau untuk berinteraksi dengan proses lain, program menggunakan panggilan sistem.
Apa itu panggilan fungsi?
Panggilan fungsi juga dipanggil panggilan subrutin. Subrutin (juga dikenali sebagai prosedur, fungsi, kaedah atau rutin) adalah sebahagian daripada program yang lebih besar yang bertanggungjawab untuk menjalankan tugas tertentu. Program yang lebih besar boleh melaksanakan beban kerja yang berat, dan subrutin mungkin melaksanakan tugas yang mudah, yang juga bebas dari pengekodan program yang selebihnya. Fungsi dikodkan sedemikian rupa sehingga boleh dipanggil beberapa kali dan dari tempat yang berbeza (walaupun dari dalam fungsi lain). Apabila fungsi dipanggil, pemproses boleh pergi ke mana kod untuk fungsi itu tinggal dan melaksanakan arahan fungsi satu demi satu. Setelah menyelesaikan fungsi, pemproses akan kembali ke tempat yang ditinggalkan dan meneruskan pelaksanaan bermula dari arahan seterusnya. Fungsi adalah alat yang hebat untuk digunakan semula kod. Banyak bahasa pengaturcaraan moden menyokong fungsi. Koleksi fungsi dipanggil perpustakaan. Perpustakaan sering digunakan sebagai cara perkongsian dan perisian perdagangan. Dalam sesetengah kes, keseluruhan program boleh menjadi urutan subrutin (e.g. kompilasi kod berulir).
Apakah perbezaan antara panggilan sistem dan panggilan fungsi?
Panggilan sistem adalah panggilan ke subrutin yang dibina ke dalam sistem, sementara panggilan fungsi adalah panggilan ke subrutin dalam program. Tidak seperti panggilan fungsi, panggilan sistem digunakan apabila program perlu melaksanakan tugas, yang tidak mempunyai keistimewaan untuk. Panggilan sistem adalah titik masuk ke kernel sistem operasi dan tidak dikaitkan dengan program (seperti panggilan fungsi). Tidak seperti, panggilan sistem, panggilan fungsi mudah alih. Overhead masa panggilan sistem adalah lebih daripada overhead untuk panggilan fungsi kerana peralihan antara mod pengguna dan mod kernel mesti berlaku. Panggilan sistem dilaksanakan di ruang alamat kernel, sementara panggilan fungsi dilaksanakan di ruang alamat pengguna.