DE112006003132T5 - Codebereichszugriffe eines Steuerungssystemmanagements - Google Patents
Codebereichszugriffe eines Steuerungssystemmanagements Download PDFInfo
- Publication number
- DE112006003132T5 DE112006003132T5 DE112006003132T DE112006003132T DE112006003132T5 DE 112006003132 T5 DE112006003132 T5 DE 112006003132T5 DE 112006003132 T DE112006003132 T DE 112006003132T DE 112006003132 T DE112006003132 T DE 112006003132T DE 112006003132 T5 DE112006003132 T5 DE 112006003132T5
- Authority
- DE
- Germany
- Prior art keywords
- memory
- address
- system management
- access
- location
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/1425—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
- G06F12/1491—Protection against unauthorised use of memory or access to memory by checking the subject access rights in a hierarchical protection system, e.g. privilege levels, memory rings
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Eine
Vorrichtung mit:
einem Statusindikator zum Angeben, ob die Vorrichtung in einem Systemmanagementmodus arbeitet;
einem Basisspeicherort zum Speichern einer Basisadresse, die zum Angeben eines ersten Speicheradressbereichs dient, unter der auf den Systemmanagementcode zugegriffen werden kann;
einem Abbruchspeicherort zum Speichern einer Abbruchadresse, die zum Angeben eines zweiten Speicheradressbereichs dient, auf den Zugriffe auf den ersten Speicheradressbereich zu steuern sind, wenn die Vorrichtung nicht in dem Systemmanagementmodus arbeitet.
einem Statusindikator zum Angeben, ob die Vorrichtung in einem Systemmanagementmodus arbeitet;
einem Basisspeicherort zum Speichern einer Basisadresse, die zum Angeben eines ersten Speicheradressbereichs dient, unter der auf den Systemmanagementcode zugegriffen werden kann;
einem Abbruchspeicherort zum Speichern einer Abbruchadresse, die zum Angeben eines zweiten Speicheradressbereichs dient, auf den Zugriffe auf den ersten Speicheradressbereich zu steuern sind, wenn die Vorrichtung nicht in dem Systemmanagementmodus arbeitet.
Description
- HINTERGRUND
- 1. Gebiet
- Die vorliegende Offenbarung trifft das Gebiet der Informationsverarbeitung und insbesondere das Gebiet des Speichermanagements- und schutzes.
- 2. Beschreibung des Standes der Technik
- Informationsverarbeitungssysteme wie solche, die einen Prozessor der Pentium® Familie der Intel Corporation haben, können einen Systemmanagementmodus („SMM") aufweisen, der eine Betriebsumgebung ist, die parallel zu der normalen Ausführungsumgebung ist und zum Ausführen bestimmter Aufgaben wie einem Systemmanagement, einem Gerätemanagement, einem Leistungsmanagement, einem thermischen Management, Zuverlässigkeitsfunktionen, Verfügbarkeitsfunktionen, Bedienbarkeitsfunktionen usw. verwendet werden kann. Der SMM wird typischerweise durch Setzen eines Systemmanagementinterruptpins erreicht und wird durch Ausführen eines Resümebefehls angeregt. Da der SMM eine gesonderte Betriebsumgebung ist, hat es seinen eigenen Speicherraum, der gegen den normalen Ausführungsumgebung geschützt werden muss. Obwohl dieser gesonderte Speicherraum von dem regulären Systemspeicher gesondert ist, ist er in einem Adressbereich in dem regulären Systemspeicher mappiert.
- Der Adressbereich in dem regelmäßigen Systemspeicher, zu dem der SSM Code mappiert ist, sollte nur während des SMM Betriebs zugänglich sein. Da ein typischer Cache jedoch nicht zwischen dem SMM Code und einem anderen Code unterscheidet, weist ein bekannter Virusansatz das Schreiben in den Cache unter einer Adresse, unter dem der SMM Code mappiert ist, auf. Ein Versuch zum Schützen des SMM Codes von einer solchen Vorgehen ist die Verwendung von speicherartigen Bereichsregistern („MTRRs") zum Setzen der SSM Codebereiche als während der normalen Ausführung nicht-pufferbar, Rückschreiben als pufferbar bei Eintrag in das SMM und zurück zu nicht-pufferbar bei dem Resümee.
- KURZE ERLÄUTERUNG DER ZEICHNUNGEN
- Die vorliegende Erfindung ist in beiliegenden Zeichnungen beispielhaft und ohne Begrenzung wiedergegeben.
-
1 zeigt ein Ausführungsbeispiel der Erfindung in einem Prozessor mit einer Logik zum Steuern einer SMM Codebereichszugriffen. -
2 zeigt ein Ausführungsbeispiel der Erfindung bei einem Verfahren zum Steuern der SMM Codebereichszugriffe. - EINGEHENDE BESCHREIBUNG
- Die nachfolgende Beschreibung beschreibt Ausführungsbeispiele von Techniken zum Steuern der SMM Codebereichszugriffe. In der nachfolgenden Beschreibung werden verschiedene spezifische Einzelheiten wie die Prozessor- und Systemkonfigurationen angegeben, um ein besseres Verständnis der vorliegenden Erfindung zu ermöglichen. Es versteht sich jedoch, dass der Fachmann die Erfindung ohne derartige spezifische Einzelheiten verwirklichen kann.
- Weiter sind einige bekannte Strukturen, Schaltungen und dergleichen nicht in ihren Einzelheiten gezeigt, um eine unnötige Verundeutlichung der vorliegenden Erfindung zu vermeiden.
- Ausführungsbeispiele der vorliegenden Erfindung sorgen für SMM Codebereichszugriffe. Ein solches Steuern kann erwünscht sein zum Schützen des SMM Codes vor einem Zugriff während der normalen Ausführung. Ausführungsbeispiele der vorliegenden Erfindung können implementiert werden ohne eine Beeinträchtigung der Betriebseigenschaften des Änderns von Speicherarten zwischen pufferbar und nicht-pufferbar in Verbindung mit den Übergängen zwischen dem SMM und dem normalen Ausführungsmodus.
-
1 zeigt ein Ausführungsbeispiel der Erfindung in einem Prozessor, dem Prozessor110 , einschließlich einer Logik zum Steuern von Zugriffen zu SMM Codebereichen. Der Prozessor110 ist in dem System100 gezeigt, das auch den SMM Speicher120 und einen normalen Systemspeicher130 einschließt. - Der Prozessor
110 kann ein beliebiger aus einer Vielzahl von unterschiedlichen Typen von Prozessoren sein, etwa ein Prozessor der Pentium® Prozessorfamilie, der Itanium® Prozessorfamilie und anderen Prozessorfamilien der Intel Corporation oder jeder allgemein verwendbare Prozessor einer anderen Firma. Obwohl1 die Erfindung zeigt, wie sie bei einem Prozessor verwendet wird, kann die Erfindung alternativ bei jeder anderen Art einer Datenverarbeitungskomponente oder -vorrichtung verwirklicht werden. Bei dem Ausführungsbeispiel von1 weist der Prozessor110 einen Statusindikator111 , einen Basisspeicherort112 , einen Speichertypspeicherort113 , eine Maskenspeicherort114 , einen Gültigkeitsindikator115 , einen Abbruchspeicherort116 , einen Adresskomperator117 , eine Steuerlogik118 und eine Steuerlogik119 auf. - Der Statusindikator
111 dient zum Angeben, ob der Prozessor110 in dem SMM arbeitet. Der Statusindikator111 kann jedes Feld oder jeder Indikator an einem beliebigen Speicherort sein, etwa ein Statusbit in einem Register, das von einer Steuerlogik119 (unten beschrieben) auf 1 gesetzt wird, wenn der Prozessor110 den SMM erreicht und auf Null gelöscht wird, wenn der Prozessor110 den SMM verlässt. - Der Basisspeicherort
112 dient zum Speichern einer Basisadresse. Die Basisadresse dient zum Spezifizieren eines Speicheradressbereichs, in dem der SMM Code zugreifbar ist (der „SMM Bereich"). Der Basisspeicherort112 kann jedes Feld an jedem beliebigen Speicherort sein. Bei einem Ausführungsbeispiel kann der Basisspeicherort112 Bits 31:12 eines 64-Bitmodellspezifischen Register (dem „Basissystemmanagementbereichsregister" oder „Basis SMRR") sein, um eine 4K angepasste Basisadresse anzugeben. - Der Speichertypspeicherort
113 dient zum Speichern des Speichertyps (beispielsweise nicht pufferbar, rückschreib-pufferbar, schreibgeschützt-pufferbar, durchschreib-pufferbar, usw.) des Bereichs, der durch die Basisadresse angegeben wird. Der Speichertypspeicherort113 kann jedes beliebige Feld an jedem beliebigen Speicherort sein. Bei einem Ausführungsbeispiel kann der Speichertypspeicherort113 Bits 7:0 des Basis SMRR sein. - Ein Maskenspeicherort
114 dient zum Speichern eines Maskenwerts, der zum Maskieren ausgewählter Bits bei Vergleich einer Adresse, die in einem Speicherzugriff auf die Basisadresse genutzt wird, zu verwenden ist. Der Maskenspeicherort114 kann jedes beliebige Feld an jedem beliebigen Speicherort sein. Bei einem Ausführungsbeispiel kann der Maskenspeicherort114 Bits 31:12 eines 64-Bit modellspezifischen Registers sein (dem „Maskensystemmanagementbereichsregister" oder Masken SMRR"), um die maskierten Bits einer in dem Basis SMRR zu speichernden Basisadresse anzugeben. - Der Gültigkeitsindikator
115 dient zum Angeben, ob der Basisspeicherort112 und der Maskenspeicherort114 gültige Werte speichern. Der Gültigkeitsindikator115 kann jedes Feld oder jeder Indikator an jedem Speicherort sein und kann durch einen Systemmanagementinitialisierungscode, einem Systemmanangementsteuerungsprogramm oder jeder anderen Software, Firmenware oder Hardware gesetzt sein. Bei einem Ausführungsbeispiel kann der Indikator Bit11 des Masken-SMRR sein. - Der Abbruchspeicherort
116 dient zum Speichern einer Abbruchadresse. Die Abbruchadresse dient zum Angeben eines Speicheradressbereichs (den „Abbruchbereich"), auf den Zugriffe auf den SMM Bereich zu steuern sind, wenn der Prozessor110 nicht in dem SMM arbeitet. Der Abbruchspeicherort116 kann jedes Feld an einem beliebigen Speicherort sein. An einem Ausführungsbeispiel kann der Abbruchspeicherort116 ein Register sein. Bei einem Ausffürungsbeispiel ist die Abbruchadresse eine Speicheradresse eines Steuerungsgramms. Jeder Code, etwa eine Betriebssystemroutine zum Behandeln des Zugriffs, kann in dem Abbruchbereich gespeichert sein. - Der Adresskomparator
117 dient zum Vergleichen einer Adresse, die in einem Speicherzugriff verwendet wird, mit einer Basisadresse. Der Vergleich kann entsprechend jedem bekannten Ansatz ausgeführt werden und kann einen Maskenwert von dem Maskenspeicherort114 zum Maskieren von ausgewählten Bits des Vergleichs verwenden. - Die Steuerlogik
118 dient zum Steuern von SMM Bereichszugriffen auf den Abbruchbereich, wenn der Prozessor110 nicht in dem SMM arbeitet. Das Steuern kann entsprechend jedem bekannten Ansatz durchgeführt werden, etwa durch Ersetzen der Abbruchadresse durch die Basisadresse auf einem internen oder externen Adressbus. - Eine Steuerlogik
119 dient zum Erlauben einer Programmierung der Speicherorte und -anzeiger, die oben beschrieben worden sind, nur dann, wenn der Prozessor110 in dem SMM ist. Die Steuerlogik119 kann einen Mikrocode, eine programmierbare Logik, eine hartcodierte Logik oder jede andere Form einer Steuerlogik in dem Prozessor110 sein. Bei anderen Ausführungsbeispielen kann die Steuerlogik119 in jeder anderen Form von Hardware, Software oder Firmenware implementiert sein, etwa einer Prozessorabstraktionsebene, in einem Prozessor oder in einer beliebigen Komponente, die zugreifbar ist oder einem Medium, das von einem Prozessor lesbar ist, etwa einem SMM Speicher120 . - In
1 können die Speicher120 und130 statische oder dynamische Speicher mit wahlfreiem Zugriff, auf Halbleiter basierende nur Lese- oder Festspeicher, magnetische oder optische Platten oder andere Formen von Medien, die von dem Prozessor110 lesbar sind, oder jede Kombination derartiger Medien sein. Der SMM Speicher120 dient zum Speichern des SMM Codes. Der normale Systemspeicher130 dient zum Speichern des Codes einschließlich des Betriebssystems und des Anwendungsprogrammcodes. - Der Prozessor
110 und die Speicher120 und130 können nach jedem bekannten Ansatz miteinander gekoppelt sein oder miteinander kommunizieren, entweder direkt oder indirekt über einen oder mehrere Busse, Punkt-zu-Punkt oder anderen verdrahteten oder drahtlosen Verbindungen oder über jede andere Komponente, etwa einem Chipsatz oder einem Speicherkontroller. Das System100 kann weiter jede beliebige Anzahl von zusätzlichen Komponenten oder Verbindungen aufweisen. -
2 zeigt ein Ausführungsbeispiel der vorliegenden Erfindung bei einem Verfahren, dem Verfahren200 zum Steuern der SMM Codebereichszugriffe. In dem Block210 wird ein Speicherzugriff, beispielsweise aufgrund des Nolens, Dekodierens, Ausführens oder dem Versuch des Ausführens eines Schreib- oder Lesebefehls, erkannt. Der Speicherzugriff initiert ein Nachschlagen in einem MTRR zum Bestimmen der Speicherart des zugegriffenen Speicherbereichs. - In dem Block
212 wird die Adresse, die dem Speicherzugang in dem Block210 zugehörig ist, mit der Basisadresse der Basis SMRR unter Verwendung der Maske von dem Masken SMRR, beispielsweise einem Adresskomparator117 verglichen. Wenn die Adressen nicht übereinstimmen, wird der Zugriff in Block240 zugelassen. Wenn die Adressen übereinstimmen, wird in dem Block214 der Statusindikator111 geprüft um zu bestimmen, ob der Prozessor110 in dem SMM ist. - Von dem Block
214 steuert die Steuerlogik118 dann, wenn der Prozessor110 nicht in SMM ist, den Zugriff auf den Abbruchbereich, beispielsweise durch Ersetzen des Basisabschnitts der Adresse, die dem Speicherzugriff zugehörig ist, mit der Abbruchadresse. In dem Block222 ordnet die Steuerlogik119 einen nicht-pufferbaren Speichertyp dem Speicherzugriff zu. In dem Block240 wird der Zugriff zugelassen. - Von dem Block
214 wird sodann in dem Block230 dann, wenn der Prozessor in SMM ist, der Speichertyp von der Basis SMRR dem Speicherzugriff zugewiesen. In dem Block240 wird der Zugriff zugelassen. - Innerhalb des Schutzbereiches der vorliegenden Erfindung liegt es, dass das Verfahren
200 in einer anderen Weise mit einem gleichzeitigen Ausführen des dargestellten Blocks, unter Verzicht auf die dargestellten Blöcke, mit Hinzufügung von zusätzlichen Blöcken oder mit einer Kombination oder einer Umordnung, Kombination, Weglassen oder zusätzlichen Blöcken ausgeführt wird. - Der Prozessor
110 oder jeder andere Prozessor oder Komponente, die nach einem Ausführungsbeispiel der vorliegenden Erfindung ausgebildet ist, kann in verschiedenen Stufen von der Herstellung über die Simulation zur Fabrikation ausgestaltet sein. Daten, die eine Ausgestaltung repräsentieren, können die Ausgestaltung in einer Anzahl von Weisen repräsentieren. Zunächst kann, wie es bei Situationen nützlich ist, die Hardware repräsentiert unter Verwendung einer Hardwarebeschreibungssprache oder einer anderen funktionalen Beschreibungssprache sein. Zusätzlich oder alternativ kann ein Schaltungsebenenmodul mit logischen und/oder Transistorgattern auf denselben Stufen des Designprozesses erzeugt sein. Weiter erreichen die meisten Ausgestaltungen auf einer Stufe eine Ebene, bei der sie moduliert werden können mit Daten, die die physikalische Anordnung von verschiedenen Geräten repräsentieren kann. In dem Fall, in dem übliche Halbleiterfabrikationstechniken verwendet werden, können die Daten, die das Geräteanordnungsmodell repräsentieren, die Daten sein, die das Vorhandensein oder das Fehlen verschiedener Merkmale unterschiedlicher Maskenebenen für Masken, die zum Erzeugen einer integrierten Schaltung verwendet werden, sein. - Bei jeder Repräsentation der Ausgestaltung können Daten jeder Form eines maschinenlesbaren Mediums gespeichert sein. Eine optische oder elektrische Welle, die moduliert ist oder anders erzeugt worden ist zum Übertragen einer solchen Information, ein Speicher oder ein magnetisches oder optisches Speichermedium, etwa eine Platte, können das maschinenlesbare Medium sein. Jede dieser Medien können die Ausbildung „tragen" oder „angeben" oder andere Information, die bei einem Ausführungsbeispiel der vorliegenden Erfindung verwendet wird, etwa die Befehle in einer Fehlerentdeckungsroutine. Wenn eine elektrische Trägerwelle, die die Information angibt oder trägt, übertragen wird, ein einem Ausmaß, das ein Kopieren, Puffer oder erneutes Übertragen des elektrischen Signals durchgeführt wird, wird eine neue Kopie erstellt. Die Aktionen des Kommunikationsproviders oder eines Netzwerkproviders kann so das Erstellen von Kopien eines Gegenstands, etwa einer Trägerwelle, die Techniken der vorliegenden Erfindung verwirklichen.
- Es werden daher Techniken zum Steuern der SMM Codebereichszugriffe offenbart. Obwohl verschiedene Ausführungsbeispiele beschrieben und in den beiliegenden Zeichnungen gezeigt sind, versteht es sich, dass die Ausführungsbeispiele lediglich illustrativ sind und die Breite der Erfindung einschränken sollen und dass die Erfindung nicht auf bestimmte Konstruktionen und Anordnungen, die gezeigt und beschrieben worden sind, begrenzt ist, es sind verschiedene andere Modifikationen für den Fachmann, der diese Offenbarung liest, zugänglich. In einem Bereich der Technologie wie diesem hier, in dem das Wachstum schnell ist und weitere Fortschritte nicht einfach vorhersehbar sind, können die offenbarten Ausführungsbeispiele geeignet modifizierbar sein in der Anordnung und in den Einzelheiten, wie dies möglich wird durch den technischen Fortschritt ohne sich von den Grundprinzipien der vorliegenden Erfindung oder aus dem Schutzbereich der beiliegenden Ansprüche zu entfernen.
- ZUSAMMENFASSUNG
- Vorrichtungen und Verfahren zum Steuern von SMM Codebereichszugriffen werden offenbart. In einem Ausführungsbeispiel weist eine Vorrichtung einen Statusindikator, einen Basisspeicherort und einen Abbruchspeicherort auf. Der Statusindikator gibt an, ob die Vorrichtung in dem SMM arbeitet. Der Basisspeicherort dient zum Speichern einer Basisadresse und der Abbruchspeicherort dient zum Speichern einer Abbruchadresse. Die Basisadresse dient zum Angeben eines ersten Speicheradressbereichs, unter dem auf den SMM Code zuzugreifen ist. Die Abbruchadresse dient zum Angeben eines zweiten Speicheradressbereichs, in dem Adressen des ersten Speicheradressbereichs zu steuern sind, wenn die Vorrichtung nicht in dem SMM arbeitet.
Claims (20)
- Eine Vorrichtung mit: einem Statusindikator zum Angeben, ob die Vorrichtung in einem Systemmanagementmodus arbeitet; einem Basisspeicherort zum Speichern einer Basisadresse, die zum Angeben eines ersten Speicheradressbereichs dient, unter der auf den Systemmanagementcode zugegriffen werden kann; einem Abbruchspeicherort zum Speichern einer Abbruchadresse, die zum Angeben eines zweiten Speicheradressbereichs dient, auf den Zugriffe auf den ersten Speicheradressbereich zu steuern sind, wenn die Vorrichtung nicht in dem Systemmanagementmodus arbeitet.
- Die Vorrichtung nach Anspruch 1, weiter mit einer Steuerlogik zum Steuern erster Speicheradressbereichszugriffe auf den zweiten Speicheradressbereich, wenn die Vorrichtung nicht in dem Systemmanagementmodus arbeitet.
- Die Vorrichtung nach Anspruch 1, weiter mit einem Speichertypspeicherort zum Speichern eines Speichertyps, der einem Zugriff auf den ersten Speicheradressbereich zuzuweisen ist.
- Die Vorrichtung nach Anspruch 1, weiter mit einer Steuerlogik zum Zuordnen eines nicht-pufferbaren Speichertyps für Zugriffe auf den zweiten Speicheradressbereich.
- Die Vorrichtung nach Anspruch 1, weiter mit einem Komparator zum Vergleichen der Basisadresse mit einer dem Speicherzugriff zugehörigen Adresse.
- Die Vorrichtung nach Anspruch 5, weiter mit einem Maskenspeicherort zum Speichern einer Maske zum Angeben von Adressbits, die von dem Komparator zu maskieren sind.
- Ein Verfahren mit: Erkennen einer Speicherzugriffsanordnung; und Steuern des Speicherzugriffs auf einen Abbruchcodebereich, wenn der Zugriff auf einen Systemmanagementcodebereich erfolgt und die Speicherzugriffsanforderung nicht in einem Systemmanagementmodus erfolgt.
- Das Verfahren nach Anspruch 7, weiter mit Vergleichen einer Adresse, die einem Speicherzugriff zugehörig ist mit einer Basisadresse, um zu bestimmen, ob der Zugriff zu dem Systemmanagementcodebereich erfolgt.
- Das Verfahren nach Anspruch 8, weiter mit Lesen der Basisadresse von einem Basisadressspeicherort.
- Das Verfahren nach Anspruch 8, wobei das Vergleichen der Adresse, die der Speicheradresse zugeordnet ist, mit der Basisadresse weiter das Markieren von ausgewählten Bits der Basisadresse einschließt.
- Das Verfahren nach Anspruch 10, weiter mit dem Beinhalten des Lesens eines Maskenspeicherorts zum Bestimmen, welche Bits zum Maskieren ausgewählt sind.
- Das Verfahren nach Anspruch 7, weiter mit: Lesen eines Speichertyps von einem Speichertypspeicherort; und Zuordnen des Speichertyps zu dem Zugriff, wenn der Zugriff auf den Systemmanagementcodebereich erfolgt und die Speicherzugriffsanforderung in dem Systemmanagementmodus erfolgt.
- Das Verfahren nach Anspruch 7, weiter mit dem Zuordnen eines nicht-pufferbaren Speichertyps zu dem Zugriff, wenn der Zugriff auf den Systemmanagementcodebereich erfolgt und die Speicherzugriffsanforderung nicht in dem Systemmanagementmodus erfolgt.
- Das Verfahren nach Anspruch 7, weiter mit dem Bestimmen, ob der Zugriff in dem Systemmanagementmodus durch Prüfen eines Statusindikators ausgeführt wird.
- Das Verfahren nach Anspruch 7, wobei das Steuern des Speicherzugriffs auf einen Abbruchcodebereich das Ersetzen eines Teiles einer Adresse, die dem Speicherzugriff zugehörig ist, durch eine Abbruchadresse einschließt.
- Das Verfahren nach Anspruch 15, weiter mit dem Lesen einer Abbruchadresse aus einem Abbruchadressspeicherort.
- Das Verfahren nach Anspruch 7, weiter mit dem Erlauben eines Zugriffs zum dem Systemmanagementcodebereich, wenn die Speicherzugriffsanforderung in dem Systemmanagementmodus durchgeführt wird.
- Ein System mit: einem dynamischen Speicher mit wahlfreiem Zugriff; und einem Prozessor, der aufweist: einen Statusindikator zum Angeben, ob der Prozessor in einem Systemmanagementmodus arbeitet; einem Basisspeicherort zum Speichern einer Basisadresse, wobei die Basisadresse dazu dient, einen ersten Speicheradressbereich zu speichern, unter dem auf den Systemmanagementcode zuzugreifen ist; einen Abbruchspeicherort zum Speichern einer Abbruchadresse, unter der die Abbruchadresse einen zweiten Speicheradressbereich angibt, auf den Zugriffe zu dem ersten Speicheradressbereich zu steuern sind, wenn der Prozessor nicht in dem Systemmanagementmodus arbeitet.
- Das System nach Anspruch 18, wobei der dynamische Speicher mit wahlfreiem Zugriff den Systemmanagementcode speichert.
- Das System nach Anspruch 18, wobei der dynamische Speicher mit wahlfreiem Zugriff ein Steuerprogramm zum Handhaben von Zugriffen auf den ersten Speicherbereich dann, wenn der Prozessor nicht in dem Systemmanagementmodus arbeitet, ist.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/322,756 | 2005-12-30 | ||
US11/322,756 US8683158B2 (en) | 2005-12-30 | 2005-12-30 | Steering system management code region accesses |
PCT/US2006/048556 WO2007078959A2 (en) | 2005-12-30 | 2006-12-18 | Steering system management code region accesses |
Publications (1)
Publication Number | Publication Date |
---|---|
DE112006003132T5 true DE112006003132T5 (de) | 2008-09-25 |
Family
ID=38110327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE112006003132T Ceased DE112006003132T5 (de) | 2005-12-30 | 2006-12-18 | Codebereichszugriffe eines Steuerungssystemmanagements |
Country Status (4)
Country | Link |
---|---|
US (1) | US8683158B2 (de) |
CN (1) | CN101351775B (de) |
DE (1) | DE112006003132T5 (de) |
WO (1) | WO2007078959A2 (de) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8683158B2 (en) | 2005-12-30 | 2014-03-25 | Intel Corporation | Steering system management code region accesses |
US20110131381A1 (en) * | 2009-11-27 | 2011-06-02 | Advanced Micro Devices, Inc. | Cache scratch-pad and method therefor |
US20120036308A1 (en) * | 2010-08-06 | 2012-02-09 | Swanson Robert C | Supporting a secure readable memory region for pre-boot and secure mode operations |
US9448867B2 (en) * | 2011-12-31 | 2016-09-20 | Intel Corporation | Processor that detects when system management mode attempts to reach program code outside of protected space |
US20210026950A1 (en) * | 2016-03-07 | 2021-01-28 | Crowdstrike, Inc. | Hypervisor-based redirection of system calls and interrupt-based task offloading |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62126448A (ja) | 1985-11-27 | 1987-06-08 | Fuji Electric Co Ltd | メモリの管理・保護方式 |
US5063496A (en) * | 1988-06-01 | 1991-11-05 | International Business Machines Corporation | Signaling attempted transfer to protected entry point bios routine |
US5475829A (en) * | 1993-03-22 | 1995-12-12 | Compaq Computer Corp. | Computer system which overrides write protection status during execution in system management mode |
US5513337A (en) | 1994-05-25 | 1996-04-30 | Intel Corporation | System for protecting unauthorized memory accesses by comparing base memory address with mask bits and having attribute bits for identifying access operational mode and type |
JP2634147B2 (ja) | 1994-09-16 | 1997-07-23 | インターナショナル・ビジネス・マシーンズ・コーポレイション | コンピュータシステム、キャッシュヒットの判定方法 |
US6093213A (en) * | 1995-10-06 | 2000-07-25 | Advanced Micro Devices, Inc. | Flexible implementation of a system management mode (SMM) in a processor |
US5909696A (en) | 1996-06-04 | 1999-06-01 | Intel Corporation | Method and apparatus for caching system management mode information with other information |
US5729760A (en) | 1996-06-21 | 1998-03-17 | Intel Corporation | System for providing first type access to register if processor in first mode and second type access to register if processor not in first mode |
US6081664A (en) * | 1996-09-30 | 2000-06-27 | Intel Corporation | Method for monitoring a BIOS |
JP3082701B2 (ja) | 1997-03-14 | 2000-08-28 | 日本電気株式会社 | メモリ保護装置およびメモリ保護方法 |
US6044478A (en) * | 1997-05-30 | 2000-03-28 | National Semiconductor Corporation | Cache with finely granular locked-down regions |
US6192455B1 (en) | 1998-03-30 | 2001-02-20 | Intel Corporation | Apparatus and method for preventing access to SMRAM space through AGP addressing |
US6711653B1 (en) * | 2000-03-30 | 2004-03-23 | Intel Corporation | Flexible mechanism for enforcing coherency among caching structures |
US6745296B2 (en) * | 2001-04-18 | 2004-06-01 | Phoenix Technologies, Ltd. | System and method for providing cacheable smram |
US7149854B2 (en) * | 2001-05-10 | 2006-12-12 | Advanced Micro Devices, Inc. | External locking mechanism for personal computer memory locations |
US20030014667A1 (en) | 2001-07-16 | 2003-01-16 | Andrei Kolichtchak | Buffer overflow attack detection and suppression |
US20060036830A1 (en) * | 2004-07-31 | 2006-02-16 | Dinechin Christophe De | Method for monitoring access to virtual memory pages |
ES2310853T3 (es) | 2004-11-04 | 2009-01-16 | Biomerieux | Peptidos citrulinados derivados de la fibrina reconocidos por autoanticuerpos especificos de la poliartritis reumatoide y usos de los mismos. |
US7748037B2 (en) * | 2005-09-22 | 2010-06-29 | Intel Corporation | Validating a memory type modification attempt |
US8683158B2 (en) | 2005-12-30 | 2014-03-25 | Intel Corporation | Steering system management code region accesses |
-
2005
- 2005-12-30 US US11/322,756 patent/US8683158B2/en not_active Expired - Fee Related
-
2006
- 2006-12-18 WO PCT/US2006/048556 patent/WO2007078959A2/en active Application Filing
- 2006-12-18 CN CN2006800499776A patent/CN101351775B/zh not_active Expired - Fee Related
- 2006-12-18 DE DE112006003132T patent/DE112006003132T5/de not_active Ceased
Also Published As
Publication number | Publication date |
---|---|
WO2007078959A2 (en) | 2007-07-12 |
US20070156978A1 (en) | 2007-07-05 |
CN101351775A (zh) | 2009-01-21 |
WO2007078959A3 (en) | 2007-12-21 |
CN101351775B (zh) | 2011-04-13 |
US8683158B2 (en) | 2014-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112005002304B4 (de) | Adreßumsetzung für Eingabe/Ausgabe- Vorrichtungen mittels hierarchischer Umsetzungstabellen | |
DE112005002298B4 (de) | Leistungssteigerung einer Adreßübersetzung unter Verwendung von Übersetzungstabellen, die große Adreßräume umfassen | |
DE112005002405B4 (de) | Fehlerverarbeitung für Direktspeicherzugriffs-Adreßübersetzung | |
DE102006061939B4 (de) | Verfahren und Vorrichtung zum Zugriff auf eine speicherabgebildete Vorrichtung durch einen Gast | |
DE102007062744B4 (de) | Guest-Host-Adressübersetzung für den Zugriff von Geräten auf einen Speicher in einem partitionierten System | |
DE112005002328T5 (de) | Cachespeicherungsunterstützung für Direktspeicherzugriffsadreßübersetzung | |
DE10297433B4 (de) | Speicherverwaltungseinheit, Verfahren zum Bereitstellen einer Speicherzugriffssicherheit auf der Basis einer linearen Adresse und Prozessor | |
DE112009000344B4 (de) | Zugriffsrechte auf eine Speicher-Map | |
DE69715203T2 (de) | Ein Datenverarbeitungssystem mit cc-NUMA (cache coherent, non-uniform memory access) Architektur und im lokalen Speicher enthaltenem Cache-Speicher für Fernzugriff | |
DE69732181T2 (de) | Verfahren und gerät zum zwischenspeichern von systemverwaltungsinformationen mit anderen informationen | |
DE102011076894B4 (de) | Persistenter Speicher für einen Hauptspeicher eines Prozessors | |
CN105431858B (zh) | 安全特权等级执行和访问保护 | |
DE68923863T2 (de) | Ein-/Ausgabecachespeicherung. | |
DE112007001988T5 (de) | Gemeinsames Nutzen von Informationen durch Gäste in einer Virtuelle-Maschine-Umgebung | |
DE112006002237T5 (de) | Verfahren zur selbstinitiierenden Synchronisierung in einem Computersystem | |
DE102014014076A1 (de) | Reduzierte Adressenkonvertierung mit mehreren Seitengrößen | |
DE112007001714T5 (de) | Virtualisieren von Leistungszählern | |
DE102006015106A1 (de) | Bereitstellen eines erweiterten Speicherschutzes | |
DE60025788T2 (de) | Flexibles Mehrzweck-Ein/Ausgabesystem | |
DE112006003132T5 (de) | Codebereichszugriffe eines Steuerungssystemmanagements | |
EP2807558A1 (de) | Speichercontroller zur bereitstellung mehrerer definierter bereiche eines massenspeichermediums als unabhängige massenspeicher an einen master-betriebssystem - kern zur exklusiven bereitstellung an virutelle maschinen | |
DE10196440T5 (de) | Steuern des Zugriffs auf mehrere isolierte Speicher in einer isolierten Ausführungsumgebung | |
DE112007003206T5 (de) | Neukonfigurieren eines sicheren Systems | |
DE10297494T5 (de) | System und Verfahren zum Behandeln von Gerätezugriffen auf einen Speicher mit erhöhter Speicherzugriffssicherheit | |
KR20230017832A (ko) | Tag 체킹 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8131 | Rejection |