HackerTrans
TopNewTrendsCommentsPastAskShowJobs

traxys

no profile record

Submissions

Making an RISC-V OS (Part 3): Managing free memory

traxys.me
77 points·by traxys·2 years ago·12 comments

comments

traxys
·last year·discuss
Could be that the new 100% and 0% are something like the old 80% and 20%
traxys
·2 years ago·discuss
"nightly" versions also allow to use unstable features, and unstable features may remain so for a very long time (potentially forever) without breaking, so an old nightly could maybe work
traxys
·2 years ago·discuss
I read parts of the Linux kernel source code pretty often, and getting the definition of a function is often pretty involved:

- I don't always know the return code type, as the calling code assigned a field whose definition I don't know to find either

- I don't know if it's a C function or a preprocessor macro

This often results in me searching for the exact function name, and combing through the uses in the drivers. You then need to re-start all that recursively to understand the function you just read.

I could use clangd for that, but I don't have the ressources on my laptop to compile a kernel
traxys
·2 years ago·discuss
I have not really thought too far ahead, I know quite a bit about Linux internals, so when in doubt I tend to follow what was done there. I have not though very far in how to handle most of syscalls, traps, drivers, ...

Thank you for the static site generator! The code highlighting should be very similar to the tokyonight nvim colorscheme, as it uses mostly the same colors & tree-sitter queries as it!
traxys
·2 years ago·discuss
Well yes, but I the main idea of this series is to use no dependencies in order to have a deeper under standing of the entire stack, from boot to GUIs (that is a long term goal!)
traxys
·2 years ago·discuss
Well this part did not have much RISC-V in it, as it builds upon the abstractions of part 2, which had lots of assembly!
traxys
·3 years ago·discuss
I think they meant if you cast a pointer to an integer, do some math on that and then store that. Then you will a stored result that will likely differ from run to run