mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 12:27:35 +00:00
Kernel: Implement TimeManagement for aarch64
This sets up the RPi::Timer to trigger an interurpt every 4ms using one of the comparators. The actual time is calculated by looking at the main counter of the RPi::Timer using the Timer::update_time function. A stub for Scheduler::timer_tick is also added, since the TimeManagement code now calls the function.
This commit is contained in:
parent
83b95c135e
commit
01a14ac7af
4 changed files with 85 additions and 4 deletions
|
@ -15,12 +15,19 @@
|
|||
#include <Kernel/PhysicalAddress.h>
|
||||
#include <Kernel/Process.h>
|
||||
#include <Kernel/Random.h>
|
||||
#include <Kernel/Scheduler.h>
|
||||
#include <Kernel/Sections.h>
|
||||
#include <Kernel/UserOrKernelBuffer.h>
|
||||
|
||||
// Scheduler
|
||||
namespace Kernel {
|
||||
|
||||
void Scheduler::timer_tick(RegisterState const&) {
|
||||
// NOTE: This function currently will be called by the TimeManagement code,
|
||||
// so there is no TODO_AARCH64. Instead there will be a linker error when
|
||||
// the Scheduler code is compiled for aarch64.
|
||||
};
|
||||
|
||||
READONLY_AFTER_INIT Thread* g_finalizer;
|
||||
RecursiveSpinlock g_scheduler_lock { LockRank::None };
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue