Imbus
|
0562c2fe5a
|
Figure out core count in a somewhat sane manner
|
2025-08-27 22:07:56 +02:00 |
|
Imbus
|
97c13200d2
|
NCPU to 4
|
2025-08-27 22:07:38 +02:00 |
|
Imbus
|
265a388c93
|
Inline nops in spinlock spin routine
|
2025-08-27 22:07:30 +02:00 |
|
Imbus
|
ee2ddd7e8c
|
Warn for unused results
|
2025-08-18 11:17:13 +02:00 |
|
Imbus
|
1aed6c0715
|
Add some notes and links on libc implementations
|
2025-08-18 11:16:02 +02:00 |
|
Imbus
|
ddddf903dc
|
Notes in ispinlock
|
2025-08-16 16:12:01 +02:00 |
|
Imbus
|
97e2508516
|
ispinlock make, phony all
|
2025-08-16 15:50:38 +02:00 |
|
Imbus
|
b0fe61094d
|
proc calloc
|
2025-08-16 15:48:08 +02:00 |
|
Imbus
|
39ef34d41e
|
Restructure, use ispinlock
|
2025-08-16 15:01:01 +02:00 |
|
Imbus
|
608968668b
|
Types
|
2025-08-16 15:00:01 +02:00 |
|
Imbus
|
74a39e1822
|
kprint
|
2025-08-16 14:59:27 +02:00 |
|
Imbus
|
dc0487648a
|
ispinlock
|
2025-08-16 14:59:24 +02:00 |
|
Imbus
|
6c3030c896
|
Libkern string
|
2025-08-16 14:57:54 +02:00 |
|
Imbus
|
f45d2a29fc
|
Clang-format update
|
2025-08-16 14:47:10 +02:00 |
|
Imbus
|
b8bf28f597
|
Format
|
2025-08-08 01:51:32 +02:00 |
|
Imbus
|
bccc0b5200
|
Nasty unfixed bug related to spinlock panics
|
2025-06-26 14:45:45 +02:00 |
|
Imbus
|
d9896b4229
|
Purge fancy register macros, use inline assembly instead
|
2025-06-26 13:51:22 +02:00 |
|
Imbus
|
d855404c01
|
Revert to legacy mycpu() and cpuid()
|
2025-06-26 13:51:06 +02:00 |
|
Imbus
|
2aa06778b3
|
riscv.h, start.c: Some changed and some new machine specific routines
|
2025-06-26 13:30:45 +02:00 |
|
Imbus
|
b8474a12fc
|
.clang-format: AlignConsecutiveMacros: true
|
2025-06-26 13:28:43 +02:00 |
|
Imbus
|
00bc2aa300
|
Use new API 'read_tp()' in proc.c mycpu()
|
2025-06-26 13:28:08 +02:00 |
|
Imbus
|
bd7959cc6c
|
kalloc.[ch] from xv6, memory.[ch] containing memory probing algorithm and constants
|
2025-06-26 13:27:35 +02:00 |
|
Imbus
|
58ed873401
|
New type in types.h: size_t (u64)
|
2025-06-26 12:04:40 +02:00 |
|
Imbus
|
f2685ce7df
|
Symbol rename in linker.ld: end -> kernel_end
|
2025-06-26 12:04:11 +02:00 |
|
Imbus
|
e82b75f8f0
|
Header: endian.h with endianness conversion functions
|
2025-06-26 12:03:02 +02:00 |
|
Imbus
|
71ff137192
|
Rename struct: spinlock -> Spinlock
|
2025-06-26 12:02:41 +02:00 |
|
Imbus
|
521217f2b5
|
String.[ch]: memset, memcpy, memmove, memcmph and strlen, strnlen
|
2025-06-26 12:01:53 +02:00 |
|
Imbus
|
be50854251
|
proc.c: Simplify mycpu(), remove cpuid() for now as it is only a front for r_tp()
|
2025-06-26 10:29:40 +02:00 |
|
Imbus
|
697a84b370
|
README: Mention xv6, notes on terminology from xv6 book
|
2025-06-26 10:28:31 +02:00 |
|
Imbus
|
4e73eee53e
|
Formatting: string.c
|
2025-06-26 10:07:31 +02:00 |
|
Imbus
|
952eeebb6d
|
Remove trailing extra line
|
2025-06-26 10:06:51 +02:00 |
|
Imbus
|
5dbcb33726
|
Some vocabulary in readme
|
2025-06-26 06:26:25 +02:00 |
|
Imbus
|
58bface3c9
|
Fix nasty bug related to spinlock panic when lock is already held, because the tread pointer was never set on a per-hart basis.
|
2025-06-26 06:24:01 +02:00 |
|
Imbus
|
93295eaeb8
|
Add uart and panic to kernel dependency list
|
2025-06-26 06:22:59 +02:00 |
|
Imbus
|
74fdd26759
|
Move uart into its own translation unit
|
2025-06-26 06:22:16 +02:00 |
|
Imbus
|
f48e74bebe
|
Cosmetic fixes in spinlock
|
2025-06-26 06:19:58 +02:00 |
|
Imbus
|
f1f480251c
|
Move panic into its own translation unit
|
2025-06-26 06:19:43 +02:00 |
|
Imbus
|
5948d6c8e8
|
Some prettier init code
|
2025-06-26 05:57:35 +02:00 |
|
Imbus
|
a9f7cb8cf7
|
Some machine specific code for reading and writing registers
|
2025-06-26 05:57:05 +02:00 |
|
Imbus
|
cda703873b
|
Move some config options from start into config.h
|
2025-06-26 05:56:41 +02:00 |
|
Imbus
|
ff3ad1e719
|
Spinlocks and initial proc implementation
|
2025-06-26 05:56:15 +02:00 |
|
Imbus
|
eb0800c742
|
Clang format alignment
|
2025-06-26 05:55:59 +02:00 |
|
Imbus
|
28485acc8f
|
Makefile updated to reflect linker script rename
|
2025-06-26 05:27:50 +02:00 |
|
Imbus
|
7ca69e391a
|
Moved: link.ld -> kernel.ld
|
2025-06-26 05:24:09 +02:00 |
|
Imbus
|
ca71791440
|
Removing debug prints from entry routine. After stacks are set up correctly, this is better handled in C.
|
2025-06-26 04:25:37 +02:00 |
|
Imbus
|
bdf4228a18
|
Kernel now links string
|
2025-06-26 04:23:45 +02:00 |
|
Imbus
|
4512a93249
|
First draft of a kernel side library, string.h & string.c implementing itoa
|
2025-06-26 04:23:31 +02:00 |
|
Imbus
|
50a3c8d1d9
|
riscv.h architecture specific routines, startcode now branches hartid=0 for initialziation and hangs the other cores
|
2025-06-26 04:21:51 +02:00 |
|
Imbus
|
567e79a4e8
|
Some shorthand typedef used around the kernel
|
2025-06-26 04:19:49 +02:00 |
|
Imbus
|
e2a8bf287f
|
UART_BASE is now volatile, preventing unexpected optimizations
|
2025-06-26 04:05:03 +02:00 |
|