Implement ArFlushTlb() routine
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 26s

This commit is contained in:
Rafal Kupiec 2024-02-04 23:43:38 +01:00
parent abdb9b25db
commit 7727888087
Signed by: belliash
GPG Key ID: 4E829243E0CFE6B4
4 changed files with 38 additions and 0 deletions

View File

@ -67,6 +67,21 @@ ArCpuId(IN OUT PCPUID_REGISTERS Registers)
return TRUE;
}
/**
* Partially flushes the Translation Lookaside Buffer (TLB)
*
* @return This routine does not return any value.
*
* @since XT 1.0
*/
XTCDECL
VOID
ArFlushTlb()
{
/* Flush the TLB by resetting the CR3 */
ArWriteControlRegister(3, ArReadControlRegister(3));
}
/**
* Gets the address of the current stack register.
*

View File

@ -67,6 +67,21 @@ ArCpuId(IN OUT PCPUID_REGISTERS Registers)
return TRUE;
}
/**
* Partially flushes the Translation Lookaside Buffer (TLB)
*
* @return This routine does not return any value.
*
* @since XT 1.0
*/
XTCDECL
VOID
ArFlushTlb()
{
/* Flush the TLB by resetting the CR3 */
ArWriteControlRegister(3, ArReadControlRegister(3));
}
/**
* Gets the address of the current stack register.
*

View File

@ -21,6 +21,10 @@ XTCDECL
BOOLEAN
ArCpuId(IN OUT PCPUID_REGISTERS Registers);
XTCDECL
VOID
ArFlushTlb();
XTASSEMBLY
XTCDECL
ULONG_PTR

View File

@ -21,6 +21,10 @@ XTCDECL
BOOLEAN
ArCpuId(IN OUT PCPUID_REGISTERS Registers);
XTCDECL
VOID
ArFlushTlb();
XTASSEMBLY
XTCDECL
ULONG_PTR