serenity/Kernel
Liav A f86be46c98 Kernel: Abstract IRQ controller handling from Interrupt handlers
Now we don't send raw numbers, but we let the IRQController object to
figure out the correct IRQ number.
This helps in a situation when we have 2 or more IOAPICs, so if IOAPIC
1 is assigned for IRQs 0-23 and IOAPIC 2 is assigned for IRQs 24-47,
if an IRQHandler of IRQ 25 invokes disable() for example, it will call
his responsible IRQController (IOAPIC 2), and the IRQController will
subtract the IRQ number with his assigned offset, and the result is that
the second redirection entry in IOAPIC 2 will be masked.
2020-03-24 16:15:33 +01:00
..
ACPI AK: Reduce header dependency graph of String.h 2020-03-23 13:48:44 +01:00
Arch/i386 CPU: Move EOI call to the end of handle_interrupt() 2020-03-24 16:15:33 +01:00
Devices AK: Reduce header dependency graph of String.h 2020-03-23 13:48:44 +01:00
FileSystem AK: Reduce header dependency graph of String.h 2020-03-23 13:48:44 +01:00
Heap Kernel: Add missing #includes now that <AK/StdLibExtras.h> is smaller 2020-03-08 13:06:51 +01:00
Interrupts Kernel: Abstract IRQ controller handling from Interrupt handlers 2020-03-24 16:15:33 +01:00
Net Kernel: Enable IRQs before sending commands to the E1000 adapter 2020-03-24 16:15:33 +01:00
PCI AK: Reduce header dependency graph of String.h 2020-03-23 13:48:44 +01:00
Time AK: Reduce header dependency graph of String.h 2020-03-23 13:48:44 +01:00
TTY SlavePTY: Use dbg() instead of dbgprintf() 2020-02-27 13:05:12 +01:00
VM AK: Reduce header dependency graph of String.h 2020-03-23 13:48:44 +01:00
.bochsrc
.gitignore
Assertions.h Kernel: Remove more <LibBareMetal/Output/kstdio.h> includes 2020-02-10 12:07:48 +01:00
build-image-grub.sh Partition Table: Change Script files 2020-02-02 00:20:41 +01:00
build-image-qemu.sh Build: Add FreeBSD support (#1492) 2020-03-21 09:46:30 +01:00
build-root-filesystem.sh Build: Add FreeBSD support (#1492) 2020-03-21 09:46:30 +01:00
CMOS.cpp Kernel: Apply changes to use LibBareMetal definitions 2020-02-09 19:38:17 +01:00
CMOS.h Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
debug-kernel Debugging: Add kernel debugging support 2020-01-13 11:06:42 +01:00
DoubleBuffer.cpp AK: Reduce header dependency graph of String.h 2020-03-23 13:48:44 +01:00
DoubleBuffer.h Kernel: Move all code into the Kernel namespace 2020-02-16 01:27:42 +01:00
FB.h Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
Forward.h Kernel: Rename InodeVMObject => SharedInodeVMObject 2020-02-28 20:07:51 +01:00
grub-ebr.cfg Kernel: Change noacpi GRUB entry to use the right boot argument 2020-03-24 16:15:33 +01:00
grub-gpt.cfg Kernel: Change noacpi GRUB entry to use the right boot argument 2020-03-24 16:15:33 +01:00
grub-mbr.cfg Kernel: Change noacpi GRUB entry to use the right boot argument 2020-03-24 16:15:33 +01:00
init.cpp Kernel: Introduce the new Time management subsystem 2020-03-19 15:48:00 +01:00
KBuffer.h AK: Reduce header dependency graph of String.h 2020-03-23 13:48:44 +01:00
KBufferBuilder.cpp Kernel: Move all code into the Kernel namespace 2020-02-16 01:27:42 +01:00
KBufferBuilder.h Kernel: Move all code into the Kernel namespace 2020-02-16 01:27:42 +01:00
KernelInfoPage.h Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
KeyCode.h Kernel: Add key_code_count 2020-01-31 13:13:04 +01:00
KParams.cpp Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
KParams.h Kernel: Run clang-format on files 2020-03-22 01:22:32 +01:00
KResult.h Kernel: Move all code into the Kernel namespace 2020-02-16 01:27:42 +01:00
KSyms.cpp Kernel: Use klog() instead of kprintf() 2020-03-02 22:23:39 +01:00
KSyms.h Kernel: Move all code into the Kernel namespace 2020-02-16 01:27:42 +01:00
linker.ld Kernel: Move kernel above the 3GB virtual address mark 2020-01-17 22:34:26 +01:00
Lock.cpp Kernel: Use klog() instead of kprintf() 2020-03-02 22:23:39 +01:00
Lock.h Kernel: Allow process with multiple threads to call exec and exit 2020-02-26 13:06:40 +01:00
makeall.sh Build: Add FreeBSD support (#1492) 2020-03-21 09:46:30 +01:00
Makefile Toolchain/Ports: Update gcc to 9.3.0 2020-03-23 08:22:41 +01:00
mkmap.sh Meta: Fix shellcheck warnings in various scripts 2020-02-10 10:46:25 +01:00
Module.h Kernel: Move all code into the Kernel namespace 2020-02-16 01:27:42 +01:00
MousePacket.h Kernel: Add support for vmmouse 2020-02-04 19:11:52 +01:00
Multiboot.h Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
PerformanceEventBuffer.cpp Kernel: Run clang-format on files 2020-03-22 01:22:32 +01:00
PerformanceEventBuffer.h AK: Add global FlatPtr typedef. It's u32 or u64, based on sizeof(void*) 2020-03-08 13:06:51 +01:00
Process.cpp Kernel: Simplify process assertion checking if region is in range 2020-03-22 08:51:40 +01:00
Process.h Kernel: Add new syscall to allow changing the system date 2020-03-19 15:48:00 +01:00
ProcessTracer.cpp Kernel: Add missing #includes now that <AK/StdLibExtras.h> is smaller 2020-03-08 13:06:51 +01:00
ProcessTracer.h Kernel: Move all code into the Kernel namespace 2020-02-16 01:27:42 +01:00
Profiling.cpp Kernel: Don't blindly dereference Process::executable() 2020-02-27 10:41:32 +01:00
Profiling.h Kernel: Reset profiling state on exec() (but keep it going) 2020-02-22 10:54:50 +01:00
Random.cpp Kernel: Move all code into the Kernel namespace 2020-02-16 01:27:42 +01:00
Random.h Kernel: Move all code into the Kernel namespace 2020-02-16 01:27:42 +01:00
RTC.cpp Kernel: Use klog() instead of kprintf() 2020-03-02 22:23:39 +01:00
RTC.h Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
run Kernel: Run QEMU machine with two virtual processors 2020-03-24 16:15:33 +01:00
Scheduler.cpp Scheduler: Use monotonic time for blocking threads 2020-03-19 15:48:00 +01:00
Scheduler.h Scheduler: Use monotonic time for blocking threads 2020-03-19 15:48:00 +01:00
SharedBuffer.cpp Kernel: Use klog() instead of kprintf() 2020-03-02 22:23:39 +01:00
SharedBuffer.h Kernel+LibC: Rename shared buffer syscalls to use a prefix 2020-02-28 12:55:58 +01:00
sync.sh Meta: Fix shellcheck warnings in various scripts 2020-02-10 10:46:25 +01:00
Syscall.cpp Kernel: Run clang-format on files 2020-03-22 01:22:32 +01:00
Syscall.h Kernel: Run clang-format on files 2020-03-22 01:22:32 +01:00
TestModule.cpp Kernel: Use klog() instead of kprintf() 2020-03-02 22:23:39 +01:00
Thread.cpp AK: Add global FlatPtr typedef. It's u32 or u64, based on sizeof(void*) 2020-03-08 13:06:51 +01:00
Thread.h AK: Reduce header dependency graph of String.h 2020-03-23 13:48:44 +01:00
TimerQueue.cpp Kernel: Move all code into the Kernel namespace 2020-02-16 01:27:42 +01:00
TimerQueue.h Kernel: Introduce the new Time management subsystem 2020-03-19 15:48:00 +01:00
UnixTypes.h Kernel & LibC: Add CLOCK_REALTIME constant 2020-03-19 15:48:00 +01:00
WaitQueue.cpp Kernel: Allow process with multiple threads to call exec and exit 2020-02-26 13:06:40 +01:00
WaitQueue.h Kernel: Allow process with multiple threads to call exec and exit 2020-02-26 13:06:40 +01:00