Ακολουθεί μια κατανομή της σημασίας τους:
* Αποδοτικότητα: Η χρήση αριθμών είναι πιο αποτελεσματική από τη χρήση χορδών (όπως ονόματα λειτουργιών). Οι αναζητήσεις αριθμών είναι πολύ ταχύτερες από τις αναζητήσεις συμβολοσειρών.
* αφαίρεση: Παρέχουν ένα επίπεδο αφαίρεσης. Η διασύνδεση κλήσης συστήματος είναι συνεπής ανεξάρτητα από τις συγκεκριμένες λεπτομέρειες εφαρμογής για κάθε λειτουργία κλήσης συστήματος.
* Φορητό (με προειδοποιήσεις): Ενώ οι αριθμοί του συστήματος * οι ίδιοι δεν είναι απαραίτητα φορητοί σε διαφορετικά συστήματα που μοιάζουν με UNIX (π.χ. Linux, MacOS, BSD), τα ονόματα * των κλήσεων του συστήματος είναι συχνά (αν και η συμπεριφορά τους μπορεί να έχει λεπτές διαφορές). Τα αρχεία κεφαλίδας παρέχουν μια χαρτογράφηση μεταξύ των συμβολικών ονομάτων και των αριθμών για ένα συγκεκριμένο σύστημα. Θα χρησιμοποιούσατε γενικά τα συμβολικά ονόματα στον κωδικό σας, βασιζόμενοι στον μεταγλωττιστή και τον σύνδεσμο για να τα επιλύσετε με τους σωστούς αριθμούς κλήσεων συστήματος.
* Ασφάλεια: Η άμεση χρήση των αριθμών κλήσεων του συστήματος προσφέρει λιγότερη προστασία από τη χρήση μιας καλά επισημασμένης βιβλιοθήκης ή API. Η εσφαλμένη χρήση μπορεί να οδηγήσει σε συντριβές του συστήματος ή ευπάθειες ασφαλείας. Ως εκ τούτου, η χρήση των συμβολικών ονομάτων προτιμάται σχεδόν πάντα.
Πώς χρησιμοποιούνται: Ένα πρόγραμμα γενικά δεν χρησιμοποιεί άμεσα αριθμούς κλήσεων συστήματος. Αντ 'αυτού, χρησιμοποιεί μια διεπαφή κλήσης συστήματος (που συχνά παρέχεται από μια βιβλιοθήκη C), η οποία χειρίζεται τη μετάφραση από το όνομα της λειτουργίας σε αριθμό. Τα αρχεία κεφαλίδας (όπως το `unistd.h` in c) καθορίζουν συμβολικές σταθερές για κάθε κλήση συστήματος, επιτρέποντας στους προγραμματιστές να γράφουν φορητό κωδικό χρησιμοποιώντας αυτά τα συμβολικά ονόματα. Ο μεταγλωττιστής και ο σύνδεσμος φροντίζουν να χαρτογραφούν αυτά τα σύμβολα με τους κατάλληλους αριθμούς κλήσεων συστήματος κατά τη διάρκεια της συλλογής και της σύνδεσης.
Συνοπτικά, οι αριθμοί κλήσεων συστήματος είναι αναγνωριστικά χαμηλού επιπέδου που χρησιμοποιούνται από τον πυρήνα για την αποστολή κλήσεων συστήματος, προσφέροντας αποτελεσματικότητα και ένα στρώμα αφαίρεσης για προγραμματιστές που διαφορετικά θα έπρεπε να εργάζονται απευθείας με διεπαφές πυρήνα, μια εργασία που γενικά αφήνεται στους συγγραφείς της βιβλιοθήκης και το λειτουργικό σύστημα.
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα