Anton Lydike
43bb013fb5
updated build process to work with newer versions of riscv-unknown-gcc
2022-03-28 23:22:31 +02:00
Anton Lydike
a3cc3cccbd
fixed typo in readme
2021-10-10 19:50:53 +02:00
Anton Lydike
999d09359b
better programs readme
2021-10-10 19:49:24 +02:00
Anton Lydike
bb13cbeca5
a lot of cleanup, added pmp
2021-09-30 21:55:28 +02:00
Anton Lydike
e69cfa8a5a
added threads.h header file for example program
2021-09-30 20:53:01 +02:00
Anton Lydike
a720f34482
removed optimization flags as they broke scheduling
2021-09-30 14:37:51 +02:00
Anton Lydike
f75963f7bb
fixed a couple of small bugs
2021-09-30 14:37:26 +02:00
Anton Lydike
9008aa4d78
added example prorgam which creates and joins threads
2021-09-30 14:36:13 +02:00
Anton Lydike
8fdff36c65
changed EABORT to ETIMEOUT for marking timeouts
2021-09-11 09:54:58 +02:00
Anton Lydike
b429c460a1
small changes in formatting for spawn.c example program
2021-08-31 11:47:47 +02:00
Anton Lydike
8dc72a2d8e
general cleanup in kernel code removing unised defines etc
2021-08-31 11:46:53 +02:00
Anton Lydike
f479e151cb
removed typedef for process control block an renamed struct to match snake case
2021-08-31 11:46:29 +02:00
Anton Lydike
a3712570b0
fixed whitespace in Makefile
2021-08-31 10:26:56 +02:00
Anton Lydike
d0dd6595c3
cleaned up ecall code
2021-08-31 10:26:31 +02:00
Anton Lydike
a7941ce5ae
big improvements to spawn.c example program
2021-08-30 20:12:23 +02:00
Anton Lydike
ac329ac147
cleaned up comments in Makefile
2021-08-30 20:11:59 +02:00
Anton Lydike
d97b7b559b
more comments and better structure
2021-08-30 20:11:28 +02:00
Anton Lydike
14c2dd95a6
ecall module now kills processes which trigger an exception
2021-08-30 20:11:07 +02:00
Anton Lydike
b08198d166
added .gitignore to example programs
2021-08-26 10:40:05 +02:00
Anton Lydike
5ee37143af
made example spawn program exit after child
2021-08-26 10:40:05 +02:00
Anton Lydike
d1bef0f8a1
improved scheduling code
2021-08-26 10:35:56 +02:00
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.
2021-08-23 09:38:28 +02:00
Anton Lydike
1a6abb5e1b
added cleanup.sh file that cleans up all source code
2021-08-22 19:55:13 +02:00
Anton Lydike
8560bf6d5b
uncrustified example programs
2021-08-22 19:54:58 +02:00
Anton Lydike
31e2b25059
uncrustified kernel
2021-08-22 19:54:25 +02:00
Anton Lydike
4e439f979d
applied uncrustify to sched source
2021-08-22 19:53:59 +02:00
Anton Lydike
7302c9c652
applied uncrustify to malloc source
2021-08-22 19:53:59 +02:00
Anton Lydike
0a4c5a93c0
applied uncrustify to ktypes source
2021-08-22 19:53:59 +02:00
Anton Lydike
7246772787
applied uncrustify to io source
2021-08-22 19:53:59 +02:00
Anton Lydike
5128b0376f
applied uncrustify to csr source
2021-08-22 19:53:59 +02:00
Anton Lydike
c5afa93bb3
applied uncrustify to ecall source
2021-08-22 19:53:59 +02:00
Anton Lydike
74d22fb542
added uncrustify config for formatting
2021-08-22 19:47:31 +02:00
Anton Lydike
1424776f92
removed trailing whitespaces from package.py
2021-08-22 19:05:50 +02:00
Anton Lydike
f32a8a2b87
added -O3 flag to compilation
2021-08-22 19:05:31 +02:00
Anton Lydike
b5b6b3c57e
removed trailing whitespaces in example programs
2021-08-22 19:05:00 +02:00
Anton Lydike
426a6508d1
removed trailing whitespaces
2021-08-22 19:04:15 +02:00
Anton Lydike
c2484838c1
kernel.(c|h) moved debugging code into if (DEBUGGING) section and cleaned up whitespace
2021-08-22 19:03:16 +02:00
Anton Lydike
887056f141
removed unused and unimplemented malloc definitions
2021-08-22 18:37:52 +02:00
Anton Lydike
c71ee1498c
cleaned up comments in ktypes header
2021-08-22 18:35:19 +02:00
Anton Lydike
b5893aacab
cleaned up ecall code, moved debug statements into a debug check, removed trailing spaces
2021-08-22 18:33:52 +02:00
Anton Lydike
f2e83a61ac
added a debugging constant to identify absence of textIO
2021-08-22 13:19:49 +02:00
Anton Lydike
4b31bd9fda
made all ecall handlers return optional_int and correctly handle erorrs
2021-08-22 12:55:40 +02:00
Anton Lydike
828ea0c2e2
made itoa and dbgln empty macros if no textIO is available to remove overhead
2021-08-22 12:22:41 +02:00
Anton Lydike
5dccd2dc80
adding comments to scheduling code
2021-08-22 12:02:11 +02:00
Anton Lydike
737a9a1cf3
cleaning up print statements and unusded variables
2021-08-22 11:12:34 +02:00
Anton Lydike
cef79a92aa
added end of config comment to package.py
2021-08-21 21:27:27 +02:00
Anton Lydike
4e7a6a20f9
updated readme
2021-08-21 21:27:11 +02:00
Anton Lydike
314da51aaf
added various (bad) example programs
2021-08-21 21:24:21 +02:00
Anton Lydike
3b93b864ac
various imrpovements and implementations on the kernel
2021-08-21 21:18:03 +02:00
Anton Lydike
61017db51c
sched.h: create_new_process - correct function to create a new process in an available spot
2021-08-21 15:29:41 +02:00