ladybird/Kernel
Andreas Kling 610f3ad12f Kernel: Add a basic thread boosting mechanism
This patch introduces a syscall:

    int set_thread_boost(int tid, int amount)

You can use this to add a permanent boost value to the effective thread
priority of any thread with your UID (or any thread in the system if
you are the superuser.)

This is quite crude, but opens up some interesting opportunities. :^)
2019-12-30 19:23:13 +01:00
..
Arch/i386 Kernel: Interpret "reserved bit violation" page faults correctly 2019-12-25 13:35:57 +01:00
Devices Kernel: Simplify force_pio logic in PATA driver (#923) 2019-12-26 22:57:58 +01:00
FileSystem Kernel: Refactor scheduler to use dynamic thread priorities 2019-12-30 18:46:17 +01:00
Heap Kernel: Demangle userspace ELF symbols in backtraces 2019-11-27 14:06:24 +01:00
Net Kernel: Fix code locked behind NETWORK_TASK_DEBUG 2019-12-28 02:03:49 +01:00
TTY VirtualConsole: use memmove for an overlapping copy 2019-12-20 20:02:45 +01:00
VM Kernel: Add a mode flag to sys$purge and allow purging clean inodes 2019-12-29 13:16:53 +01:00
.bochsrc Meta: Make Serenity run on Bochs once again 2019-08-06 21:09:24 +02:00
.gitignore Meta: Removed all gitignore in the source tree only keeping the root one 2019-06-30 10:41:26 +02:00
Assertions.h Kernel: Move i386.{cpp,h} => Arch/i386/CPU.{cpp,h} 2019-06-07 20:02:01 +02:00
build-gpt-image-grub.sh Build: Fix more bugs in the POSIX sh-ification of scripts 2019-11-03 13:11:43 +01:00
build-image-grub.sh Build: Bump the default disk image size from 500MB to 600MB 2019-11-26 12:54:33 +01:00
build-image-qemu.sh Build: Allow building serenityOS ext2 root filesystem on macOS host 2019-12-27 02:19:55 +01:00
build-root-filesystem.sh MenuApplets: Add Clock applet, move code from WindowServer to the applet. 2019-12-27 22:47:31 +01:00
CMOS.cpp AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
CMOS.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
Console.cpp Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
Console.h Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
DoubleBuffer.cpp Revert "Kernel: Make DoubleBuffer use a KBuffer instead of kmalloc()ing" 2019-10-18 15:58:06 +02:00
DoubleBuffer.h Revert "Kernel: Make DoubleBuffer use a KBuffer instead of kmalloc()ing" 2019-10-18 15:58:06 +02:00
FB.h Kernel: Add framebuffer ioctls; wrap raw ioctls with a C API 2019-08-18 07:40:02 +02:00
grub_gpt.cfg Kernel: Embrace the SerenityOS name 2019-12-29 19:08:02 +01:00
grub.cfg Kernel: Embrace the SerenityOS name 2019-12-29 19:08:02 +01:00
init.cpp Kernel: Refactor scheduler to use dynamic thread priorities 2019-12-30 18:46:17 +01:00
IO.h Kernel: First cut of a sb16 driver 2019-07-13 08:00:24 +02:00
IRQHandler.cpp Kernel: Move PIC.cpp into Arch/i386/ 2019-07-09 15:04:43 +02:00
IRQHandler.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
KBuffer.h Kernel: Make kernel memory regions be non-executable by default 2019-12-25 22:41:34 +01:00
KBufferBuilder.cpp Kernel: Make kernel memory regions be non-executable by default 2019-12-25 22:41:34 +01:00
KBufferBuilder.h AK: Rename <AK/AKString.h> to <AK/String.h> 2019-09-06 15:36:54 +02:00
KernelInfoPage.h Kernel+LibC: Publish a "kernel info page" and use it for gettimeofday() 2019-12-15 21:29:26 +01:00
KeyCode.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
KParams.cpp AK: Make HashMap::get(Key) return an Optional<Value>. 2019-07-24 10:25:43 +02:00
KParams.h AK: Rename <AK/AKString.h> to <AK/String.h> 2019-09-06 15:36:54 +02:00
kprintf.cpp Kernel: Demangle userspace ELF symbols in backtraces 2019-11-27 14:06:24 +01:00
KResult.h Kernel: Add move assign operator to KResultOr 2019-12-29 23:01:27 +01:00
kstdio.h Build: Get rid of the USERLAND define 2019-12-20 22:59:11 +01:00
KSyms.cpp Kernel: Add a size argument to validate_read_from_kernel 2019-12-24 01:28:38 +01:00
KSyms.h Kernel: Allow modules to link against anything in kernel.map :^) 2019-11-28 21:30:20 +01:00
linker.ld Revert "Kernel: Move Kernel mapping to 0xc0000000" 2019-11-23 17:27:09 +01:00
Lock.cpp Kernel: Use a dedicated thread state for wait-queued threads 2019-12-01 16:02:58 +01:00
Lock.h Kernel: Add Lock::is_locked() 2019-12-26 11:43:23 +01:00
makeall.sh Build: Fix shellcheck warnings in makeall.sh 2019-12-24 02:19:59 +01:00
Makefile Kernel: Add kernel-level timer queue (heavily based on @juliusf's work) 2019-12-27 02:15:45 +01:00
mkmap.sh Kernel: Allow modules to link against anything in kernel.map :^) 2019-11-28 21:30:20 +01:00
Module.h Kernel: Implement basic module unloading :^) 2019-11-28 21:07:22 +01:00
MousePacket.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
Multiboot.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
PCI.cpp Kernel: Hide PCI logs behind a debug flag like other logs 2019-08-14 06:28:53 +02:00
PCI.h Kernel: Add more PCI configuration reading functions 2019-08-14 06:28:53 +02:00
Process.cpp Kernel: Add a basic thread boosting mechanism 2019-12-30 19:23:13 +01:00
Process.h Kernel: Add a basic thread boosting mechanism 2019-12-30 19:23:13 +01:00
ProcessTracer.cpp AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
ProcessTracer.h Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
Profiling.cpp Kernel: Separate out the symbol offsets in profile output 2019-12-12 21:59:47 +01:00
Profiling.h Kernel: Separate out the symbol offsets in profile output 2019-12-12 21:59:47 +01:00
RTC.cpp Kernel: Fix BIOS date/time on hardware 2019-09-28 13:59:49 +02:00
RTC.h Add clang-format file 2019-05-28 17:31:20 +02:00
run Kernel: Embrace the SerenityOS name 2019-12-29 19:08:02 +01:00
Scheduler.cpp Kernel: Refactor scheduler to use dynamic thread priorities 2019-12-30 18:46:17 +01:00
Scheduler.h Kernel: Get rid of "main thread" concept 2019-12-22 12:37:58 +01:00
SharedBuffer.cpp Kernel: Rename vmo => vmobject everywhere 2019-12-19 19:15:27 +01:00
SharedBuffer.h Kernel+LibC: Make all SharedBuffers purgeable (default: non-volatile) 2019-12-09 20:06:47 +01:00
StdLib.cpp Kernel+LibC: Build with basic -fstack-protector support 2019-12-20 21:03:32 +01:00
StdLib.h Kernel: Add strncmp() 2019-08-11 16:30:43 +02:00
sync.sh Build: Make sure PATH is passed properly (#765) 2019-11-12 10:26:50 +01:00
Syscall.cpp Kernel: Make separate kernel entry points for each PIC IRQ 2019-12-15 12:47:53 +01:00
Syscall.h Kernel: Add a basic thread boosting mechanism 2019-12-30 19:23:13 +01:00
TestModule.cpp Kernel: Have modules export their name in a "module_name" string 2019-11-29 21:31:17 +01:00
Thread.cpp Kernel: Add a basic thread boosting mechanism 2019-12-30 19:23:13 +01:00
Thread.h Kernel: Add a basic thread boosting mechanism 2019-12-30 19:23:13 +01:00
TimerQueue.cpp Kernel: Add kernel-level timer queue (heavily based on @juliusf's work) 2019-12-27 02:15:45 +01:00
TimerQueue.h Kernel: Add kernel-level timer queue (heavily based on @juliusf's work) 2019-12-27 02:15:45 +01:00
UnixTypes.h Kernel: Add a mode flag to sys$purge and allow purging clean inodes 2019-12-29 13:16:53 +01:00
WaitQueue.cpp Kernel: Use IntrusiveList to make WaitQueue allocation-free :^) 2019-12-22 12:38:01 +01:00
WaitQueue.h Kernel: Use IntrusiveList to make WaitQueue allocation-free :^) 2019-12-22 12:38:01 +01:00