tasking, mm: remove unused functions and page_directory field from the Task struct

This commit is contained in:
2025-06-01 14:04:49 +03:00
parent 5f87e55067
commit d1ac41deeb
7 changed files with 10 additions and 642 deletions
+2 -31
View File
@@ -2,10 +2,6 @@
#include <stdint.h>
#include "../include/string.h"
uint32_t kernel_page_directory[1024] __attribute__((aligned(4096)));
uint32_t kernel_page_table[1024] __attribute__((aligned(4096)));
uint32_t user_page_table[1024] __attribute__((aligned(4096)));
uint32_t *kpage_dir;
uint32_t setup_tmp_pgdir(uint32_t magic, uint32_t info)
@@ -128,7 +124,7 @@ uint32_t phys_to_virt(uint32_t phys)
return phys+0xC0000000;
}
uint32_t create_page_dir()
uint32_t* create_page_dir()
{
void* ppp = alloc_page();
memset(ppp, 0, 0x1000);
@@ -148,30 +144,5 @@ uint32_t create_page_dir()
new_pd[1023] = (uint32_t)ppp | 0x03; // Present + Read/Write
return (uint32_t)new_pd;
}
void enablePaging() {
asm volatile (
"mov %%cr0, %%eax\n"
"or $0x80000000, %%eax\n"
"mov %%eax, %%cr0\n"
"jmp 1f\n"
"1:\n"
"mov %%cr3, %%eax\n" // Перезагрузка CR3 для сброса TLB
"mov %%eax, %%cr3\n"
"nop\n"
:
:
: "eax", "memory"
);
}
void loadPageDirectory(uint32_t* page_directory) {
asm volatile (
"mov %0, %%cr3\n" // Загружаем физический адрес каталога страниц в CR3
: // Нет выходных операндов
: "r" (page_directory) // Входной операнд — адрес каталога
: // Нет изменяемых регистров
);
return new_pd;
}