TREATING MAIN MEMORY AS A COLLECTION OF TAGGED CACHE LINES FOR TRACE LOGGING

Treating main memory as a collection of tagged cache lines for trace logging. A computer system allocates a plurality of memory blocks, and a corresponding plurality of tags, within a main memory. Each tag indicates whether data stored in a corresponding memory block has been captured by an executio...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: MOLA, Jordi, SPEIER, Thomas Philip
Format: Patent
Sprache:eng ; fre
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Treating main memory as a collection of tagged cache lines for trace logging. A computer system allocates a plurality of memory blocks, and a corresponding plurality of tags, within a main memory. Each tag indicates whether data stored in a corresponding memory block has been captured by an execution trace. The computer system synchronizes these tags with tags in a memory cache and manages a traced status of the memory blocks. This can include one or more of (i) setting a tag to indicate a memory block has not been captured based on identifying a direct memory access operation, (ii) setting a tag based on whether a paged-in value of a memory block has been captured, (iii) setting a tag or memory categorization based whether a memory block has been initialized, or (iv) setting a tag or memory categorization based whether a memory block is mapped to a file. L'invention concerne le traitement de la mémoire principale en tant qu'une collection de lignes de mémoire cache étiquetées pour une journalisation de trace. Un système informatique attribue une pluralité de blocs de mémoire, et une pluralité correspondante d'étiquettes, à l'intérieur d'une mémoire principale. Chaque étiquette indique si des données stockées dans un bloc de mémoire correspondant ont été capturées par une trace d'exécution. Le système informatique synchronise ces étiquettes avec des étiquettes dans une mémoire cache de mémoire et gère un état tracé des blocs de mémoire. Ceci peut comprendre une ou plusieurs opérations parmi (i) la définition d'une étiquette pour indiquer qu'un bloc de mémoire n'a pas été capturé sur la base de l'identification d'une opération d'accès direct à la mémoire, (ii) la définition d'une étiquette sur la base du fait qu'une valeur de radiomessagerie d'un bloc de mémoire a été capturée, (iii) la définition d'une étiquette ou une catégorisation de mémoire sur la base du fait qu'un bloc de mémoire a été initialisé, ou (iv) la définition d'une étiquette ou une catégorisation de mémoire sur la base du fait qu'un bloc de mémoire est mis en correspondance avec un fichier.