Anton Lydike
bb13cbeca5
a lot of cleanup, added pmp
3 years ago
Anton Lydike
f75963f7bb
fixed a couple of small bugs
3 years ago
Anton Lydike
8fdff36c65
changed EABORT to ETIMEOUT for marking timeouts
3 years ago
Anton Lydike
8dc72a2d8e
general cleanup in kernel code removing unised defines etc
3 years ago
Anton Lydike
f479e151cb
removed typedef for process control block an renamed struct to match snake case
3 years ago
Anton Lydike
d0dd6595c3
cleaned up ecall code
3 years ago
Anton Lydike
14c2dd95a6
ecall module now kills processes which trigger an exception
3 years ago
Anton Lydike
d1bef0f8a1
improved scheduling code
3 years ago
Anton Lydike
df0a944528
Reuse stacks of dead processes
...
In order to make the stack-space of dead processes usable again, I
addeed a stack data structure which holds unused stack pointers.
When a process is killed, the destructor is called, which will free
the stack associated with the process.
3 years ago
Anton Lydike
4e439f979d
applied uncrustify to sched source
3 years ago
Anton Lydike
7302c9c652
applied uncrustify to malloc source
3 years ago
Anton Lydike
0a4c5a93c0
applied uncrustify to ktypes source
3 years ago
Anton Lydike
7246772787
applied uncrustify to io source
3 years ago
Anton Lydike
5128b0376f
applied uncrustify to csr source
3 years ago
Anton Lydike
c5afa93bb3
applied uncrustify to ecall source
3 years ago
Anton Lydike
426a6508d1
removed trailing whitespaces
3 years ago
Anton Lydike
887056f141
removed unused and unimplemented malloc definitions
3 years ago
Anton Lydike
c71ee1498c
cleaned up comments in ktypes header
3 years ago
Anton Lydike
b5893aacab
cleaned up ecall code, moved debug statements into a debug check, removed trailing spaces
3 years ago
Anton Lydike
f2e83a61ac
added a debugging constant to identify absence of textIO
3 years ago
Anton Lydike
4b31bd9fda
made all ecall handlers return optional_int and correctly handle erorrs
3 years ago
Anton Lydike
828ea0c2e2
made itoa and dbgln empty macros if no textIO is available to remove overhead
3 years ago
Anton Lydike
5dccd2dc80
adding comments to scheduling code
3 years ago
Anton Lydike
737a9a1cf3
cleaning up print statements and unusded variables
3 years ago
Anton Lydike
3b93b864ac
various imrpovements and implementations on the kernel
3 years ago
Anton Lydike
61017db51c
sched.h: create_new_process - correct function to create a new process in an available spot
3 years ago
Anton Lydike
ef854fba54
made error codes positive numbers
3 years ago
Anton Lydike
601b507370
switched boot.S to use csr.h constants for csr addresses
3 years ago
Anton Lydike
a25c28d661
added bundled version of kernel types in ktypes.h
3 years ago
Anton Lydike
c8c19f298a
bundled all types into ktypes.h and added optionals
3 years ago
Anton Lydike
7894808e09
removed current_process_index in scheduling in favour of pointers
3 years ago
Anton Lydike
a0c3a57921
added placeholder malloc_stack as malloc precursor
3 years ago
Anton Lydike
26e70d2f60
added TextIO module for outputting text
3 years ago
Anton Lydike
ab19abe12b
kernel scheduling now working better with ecalls, not resetting the time slice
3 years ago
Anton Lydike
ce9c6e6cfb
started properly implementing syscall structure
3 years ago
Anton Lydike
962b209f30
switched to a real linker script
3 years ago
Anton Lydike
31339216b7
fixed missing semicolon in sched.h
3 years ago
Anton Lydike
1b0ee53e4e
removed unused parts of boot.S and changed ordering in boot process
3 years ago
Anton Lydike
06f8cfd279
removed mutex kernel code
3 years ago
Anton Lydike
d9625b445a
cleaned up scheduling and boot code
3 years ago
Anton Lydike
cfd74e66b4
fixed assembly format of read_time and write_mtimecmp
3 years ago
Anton Lydike
cfc1c5c74b
removing mutex syscalls
3 years ago
Anton Lydike
1cf5458247
added memset for non-rv32m environments
3 years ago
Anton Lydike
b2dab6cb37
added config options to makefile - now able to build various variations
3 years ago
Anton Lydike
37380ee055
added comment for jump to init
3 years ago
Anton Lydike
a8aa7a8f7c
implemented a smart memset routine, use it to clear bss, and halt after returning from init
3 years ago
Anton Lydike
d3f3adbf40
using my own linker now
3 years ago
Anton Lydike
8d0178aff1
initial commit
3 years ago