mirror of
https://github.com/fergalmoran/ladybird.git
synced 2025-12-22 09:19:03 +00:00
Rework WindowServer to use select() in its main event loop.
The system can finally idle without burning CPU. :^) There are some issues with scheduling making the mouse cursor sloppy and unresponsive that need to be dealt with.
This commit is contained in:
@@ -37,6 +37,7 @@ VirtualConsole* tty3;
|
||||
Keyboard* keyboard;
|
||||
PS2MouseDevice* ps2mouse;
|
||||
GUIEventDevice* gui_event_device;
|
||||
VFS* vfs;
|
||||
|
||||
#ifdef STRESS_TEST_SPAWNING
|
||||
static void spawn_stress() NORETURN;
|
||||
@@ -62,8 +63,6 @@ static void init_stage2()
|
||||
{
|
||||
Syscall::initialize();
|
||||
|
||||
auto vfs = make<VFS>();
|
||||
|
||||
auto dev_zero = make<ZeroDevice>();
|
||||
vfs->register_character_device(*dev_zero);
|
||||
|
||||
@@ -138,6 +137,9 @@ void init()
|
||||
gdt_init();
|
||||
idt_init();
|
||||
|
||||
VFS::initialize_globals();
|
||||
vfs = new VFS;
|
||||
|
||||
keyboard = new Keyboard;
|
||||
ps2mouse = new PS2MouseDevice;
|
||||
gui_event_device = new GUIEventDevice;
|
||||
@@ -153,7 +155,6 @@ void init()
|
||||
|
||||
MemoryManager::initialize();
|
||||
|
||||
VFS::initialize_globals();
|
||||
StringImpl::initialize_globals();
|
||||
|
||||
PIT::initialize();
|
||||
|
||||
Reference in New Issue
Block a user