|
|
ad58693dfb
|
x86_64: panic: fix printk formatting specifiers for cpu registers
|
2023-05-03 19:26:19 +01:00 |
|
|
|
a52571eb19
|
kernel: add panic() function that accepts a cpu_context
|
2023-05-03 19:26:09 +01:00 |
|
|
|
390fe86657
|
x86_64: enable NX protection during AP bootstrap
|
2023-05-03 19:20:07 +01:00 |
|
|
|
2a96aa7be9
|
build: fix arch cflags not being used when compiling C++ files
|
2023-05-03 19:19:21 +01:00 |
|
|
|
4677c881e1
|
x86_64: acpi: bring up other APs in long mode
|
2023-05-01 18:13:44 +01:00 |
|
|
|
223b37a113
|
vm: only align slab headers when offslab is being used
|
2023-05-01 18:12:46 +01:00 |
|
|
|
654e54653c
|
x86_64: pmap: implement pmap_add()
|
2023-05-01 18:12:07 +01:00 |
|
|
|
fbbe339f72
|
sched: schedule() no longer switches threads when preempt_count > 0
|
2023-05-01 08:27:18 +01:00 |
|
|
|
40762ffb95
|
kernel: add function to query the current preempt count
|
2023-05-01 08:26:41 +01:00 |
|
|
|
194efd4b6b
|
sched: fix timeout_expiry() not releasing its reference to this_cpu
|
2023-05-01 08:26:13 +01:00 |
|
|
|
8a0291c9b3
|
sched: add timer tasks and schedule_timeout()
|
2023-04-30 21:09:36 +01:00 |
|
|
|
085c3d2a89
|
sched: add kernel-mode context switching
|
2023-04-30 14:27:57 +01:00 |
|
|
|
2cb2d9100a
|
x86_64: define struct offsets for access from assembly
|
2023-04-30 14:26:37 +01:00 |
|
|
|
c945ee059a
|
build: define source root directory and kernel arch for tool makefiles
|
2023-04-30 14:25:41 +01:00 |
|
|
|
f349e4963c
|
x86_64: charge clock cycles to threads when handling IRQs
Clock cycles that are used to handle the IRQ itself are *not*
charged to the thread.
|
2023-04-28 21:06:59 +01:00 |
|
|
|
e2131b08ac
|
sched: track CPU clock cycles used by threads
|
2023-04-28 21:05:48 +01:00 |
|
|
|
6b1b4a2416
|
kernel: add function to calculate delta between two cycle timestamps
|
2023-04-28 21:05:13 +01:00 |
|
|
|
72d8facd47
|
kernel: add standard clock system
|
2023-04-28 20:51:51 +01:00 |
|
|
|
995e364b21
|
x86_64: acpi: fix bad local APIC register offset
|
2023-04-28 20:49:46 +01:00 |
|
|
|
e7fe5a8f8e
|
kernel: add function to query CPU clock cycle count
|
2023-04-22 21:07:34 +01:00 |
|
|
|
a8a6ff123e
|
kxld: register kernel self pseudo-kext
|
2023-04-15 09:12:47 +01:00 |
|
|
|
b6f8c1ccaa
|
kernel: don't use typedef for enums or non-opaque structs
|
2023-04-13 11:40:52 +01:00 |
|
|
|
0d75e347e9
|
doc: document object layout and definitions
|
2023-04-09 21:26:56 +01:00 |
|
|
|
f7d581d352
|
obj: remove unused ob_parent pointer from object_t
|
2023-04-09 21:26:33 +01:00 |
|
|
|
e38ca58f18
|
kxld: publish kext objects in //kexts
|
2023-04-09 20:40:06 +01:00 |
|
|
|
5d9f193aa2
|
obj: objects can now be published in the namespace root
|
2023-04-09 20:35:17 +01:00 |
|
|
|
b1b16ba19c
|
kernel: reduce log message spam during boot
|
2023-04-09 17:14:19 +01:00 |
|
|
|
eb998860a5
|
kxld: implement internal kext dependency resolution and initialisation
|
2023-04-09 16:43:03 +01:00 |
|
|
|
076a15e47b
|
kernel: add second example kext for dependency test
|
2023-04-09 16:42:16 +01:00 |
|
|
|
c7fdb81ef9
|
kernel: implement string hashing with FNV
|
2023-04-09 16:39:08 +01:00 |
|
|
|
981a5f2a0d
|
kernel: add kern_status_string()
|
2023-04-09 16:38:31 +01:00 |
|
|
|
80f5e0483c
|
sched: initialise kernel_thread parent ptr
|
2023-04-09 16:38:08 +01:00 |
|
|
|
da415c7f6d
|
kernel: implement panic()
|
2023-04-09 16:35:15 +01:00 |
|
|
|
9b75ca8b8c
|
kernel: enumerate internal kexts during boot
|
2023-04-08 09:27:21 +01:00 |
|
|
|
a1f54fd156
|
kexttool: store extensions.yaml in .config instead of build
|
2023-04-08 09:26:06 +01:00 |
|
|
|
e472c83d28
|
tools: kexttool: implement Makefile generation for internal kexts
|
2023-04-06 21:20:20 +01:00 |
|
|
|
3e2164c7c2
|
kernel: rename extensions/ to kexts/
|
2023-04-06 21:18:56 +01:00 |
|
|
|
84e5b848c7
|
tools: sync: update script filename in in_source_tree()
|
2023-04-05 18:55:24 +01:00 |
|
|
|
eb22e72568
|
build: add subcommands to kexttool
|
2023-04-05 18:53:10 +01:00 |
|
|
|
3ec25da693
|
kext: rename extension.info to extension.yaml
|
2023-04-04 11:01:04 +01:00 |
|
|
|
7128bbf72a
|
kernel: add sample kernel extension
|
2023-04-04 10:59:52 +01:00 |
|
|
|
fadab38da7
|
build: add a tool to scan extensions/ for kernel extensions
|
2023-04-04 10:59:42 +01:00 |
|
|
|
06ba21bd9d
|
build: standardise script filenames
|
2023-04-04 09:59:25 +01:00 |
|
|
|
5b53168c5f
|
dev: add functions to create device objects
|
2023-04-03 16:59:14 +01:00 |
|
|
|
7c6f619b96
|
kernel: add device manager definitions
|
2023-04-02 21:03:23 +01:00 |
|
|
|
13c06a827e
|
kernel: disable pre-emption when accessing per-cpu variables
|
2023-03-28 21:41:07 +01:00 |
|
|
|
7d003da960
|
sched: add current_task(), current_thread(), and preempt_disable/enable()
|
2023-03-28 21:40:56 +01:00 |
|
|
|
e0e6f4a9ae
|
acpi: calibrate local APIC timer on BSP
|
2023-03-28 21:38:47 +01:00 |
|
|
|
9828f35d36
|
x86_64: fix optimised var read in pit_wait()
|
2023-03-28 21:37:24 +01:00 |
|
|
|
474878911b
|
kernel: add enable_irq() and disable_irq()
|
2023-03-28 19:44:51 +01:00 |
|