Πίσω

Δραστηριότητα 1

   Θυμάστε πότε προκύπτουν οι εξαρτήσεις ονομάτων και τα είδη στα οποία χωρίζονται; Για περισσότερες λεπτομέρειες καλό θα ήταν να ανατρέξετε στην δεύτερη ενότητα αυτού του κεφαλαίου: «Είδη εξαρτήσεων-Εξαρτήσεις δεδομένων και ονομάτων».


Απάντηση δραστηριότητας 1

   Η εξάρτηση ονομάτων προκύπτει όταν δύο εντολές χρησιμοποιούν τον ίδιο καταχωρητή ή την ίδια θέση μνήμης, που καλείται όνομα, αλλά δεν υπάρχει καμιά ροή δεδομένων μεταξύ των εντολών, που να σχετίζεται με το όνομα.
Υπάρχουν δύο είδη εξαρτήσεων ονομάτων μεταξύ μιας εντολής i, η οποία προηγείται της εντολής j:
1. Η αντι-εξάρτηση μεταξύ της εντολής i και της εντολής j, προκύπτει όταν η εντολή j γράφει στον καταχωρητή ή στη θέση μνήμης, όπου η εντολή i διαβάζει και έχει εκτελεστεί πρώτη. Η αντι-εξάρτηση αντιστοιχεί σε κίνδυνο WAR και ο εντοπισμός των WAR κινδύνων, οδηγεί στη διάταξη ενός μη- εξαρτώμενου ζεύγους εντολών.
2. Η εξάρτηση εξόδου, προκύπτει όταν η εντολή i και η εντολή j γράφουν στον ίδιο καταχωρητή ή στην ίδια περιοχή μνήμης. Η διάταξη μεταξύ των εντολών πρέπει να διατηρείται. Οι εξαρτήσεις εξόδου διασφαλίζονται εντοπίζοντας WAW κινδύνους.