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