A method, system, and data structure for storing information in a computer
system memory using a directed acyclic graph structure having related data
nodes. Any node can "own" other nodes in hierarchical relationships. Data
is stored in a file structure with (1) a heap for storing chunks or nodes
of data in memory locations, and (2) an index containing information about
the relationships between nodes. Each node is referenced and accessed by
information stored in the index. Each ownership relationship between nodes
is referenced uniquely by the triple consisting of the identification of
the parent node, the identification of the child node and a child
identification value. The inclusion of a child identification value in the
triple allows a node to be a child of another node a multiplicity of
times. The index is a table of entries, one entry for each node. Each
entry contains the identifier of the node and, if there are relationships
with other nodes, a list of one or more references to child nodes. A data
file constructed in accordance with the invention allows hierarchical data
structures, multiple use of the same data, and cross-ownership of data,
resulting in more efficient usage of memory.
Μια μέθοδος, ένα σύστημα, και μια δομή δεδομένων για την αποθήκευση των πληροφοριών σε μια μνήμη συγκροτημάτων ηλεκτρονικών υπολογιστών που χρησιμοποιεί μια κατευθυνόμενη ακυκλική δομή γραφικών παραστάσεων που έχει αφορήσει τους κόμβους στοιχείων. Οποιοσδήποτε κόμβος μπορεί "να είναι κύριοσ" άλλων κόμβων σε ιεραρχικές σχέσεις. Το στοιχείο αποθηκεύεται σε μια δομή αρχείων με (1) έναν σωρό για την αποθήκευση των χοντρών κομματιών ή των κόμβων των στοιχείων στις θέσεις μνήμης, και (2) έναν δείκτη που περιέχει τις πληροφορίες για τις σχέσεις μεταξύ των κόμβων. Κάθε κόμβος είναι παραπεμφθείς και από τις πληροφορίες που αποθηκεύονται στο δείκτη. Κάθε σχέση ιδιοκτησίας μεταξύ των κόμβων παραπέμπεται μεμονωμένα με την τριπλή σύσταση από τον προσδιορισμό του κόμβου γονέων, τον προσδιορισμό του κόμβου παιδιών και μια αξία προσδιορισμού παιδιών. Ο συνυπολογισμός μιας αξίας προσδιορισμού παιδιών στο τριπλάσιο επιτρέπει σε έναν κόμβο για να είναι παιδί ενός άλλου κόμβου μια πολλαπλότητα των χρόνων. Ο δείκτης είναι ένας πίνακας των καταχωρήσεων, μια είσοδος για κάθε κόμβο. Κάθε είσοδος περιέχει το προσδιοριστικό του κόμβου και, εάν υπάρχουν σχέσεις με άλλους κόμβους, έναν κατάλογο μιας ή περισσότερων αναφορών στους κόμβους παιδιών. Ένα αρχείο στοιχείων που κατασκευάζεται σύμφωνα με την εφεύρεση επιτρέπει τις ιεραρχικές δομές δεδομένων, την πολλαπλάσια χρήση των ίδιων στοιχείων, και την διαγώνιος-ιδιοκτησία των στοιχείων, με συνέπεια την αποδοτικότερη χρήση της μνήμης.