réplica de
https://github.com/Arnau478/quark.git
synced 2024-05-19 12:26:30 +02:00
34 líneas
673 B
C
34 líneas
673 B
C
#include "pde.h"
|
|
|
|
void pd_entry_add_attr(pd_entry_t *entry, uint32_t attr){
|
|
*entry |= attr;
|
|
}
|
|
|
|
void pd_entry_del_attr(pd_entry_t *entry, uint32_t attr){
|
|
*entry &= ~attr;
|
|
}
|
|
|
|
void pd_entry_set_frame(pd_entry_t *entry, phys_addr frame){
|
|
*entry = (*entry & ~PDE_FRAME) | frame;
|
|
}
|
|
|
|
phys_addr pd_entry_get_frame(pd_entry_t entry){
|
|
return entry & PDE_FRAME;
|
|
}
|
|
|
|
bool pd_entry_is_present(pd_entry_t entry){
|
|
return entry & PDE_PRESENT;
|
|
}
|
|
|
|
bool pd_entry_is_user(pd_entry_t entry){
|
|
return entry & PDE_USER;
|
|
}
|
|
|
|
bool pd_entry_is_4mb(pd_entry_t entry){
|
|
return entry & PDE_4MB;
|
|
}
|
|
|
|
bool pd_entry_is_writable(pd_entry_t entry){
|
|
return entry & PDE_WRITABLE;
|
|
}
|