anyway, i've basically been living in the computer lab with my group these last few days, trying to get this project done. we were required to build a system to execute arbitrary user code (ie: handle system calls) in a multiprogramming environment (ie: virtual memory handling). long story short, we were passing about half of the tests and we were almost 100% positive that our code to handle the virtual memory (write/read) was correct, but it wasn't passing the tests.
after five hours in the lab, we realize that one of our primary data structures to hold the active user processes was declared as static (big no-no) and that the constructor was re-initializing the LinkedList everytime we created a new process (BIGBIGBIG NO-NO). Anyway, we added one check:
if(pid == 0)
freePages = new LinkedList();
and out tests went from 48% to 100%.
it was really cool that we had figured it out, we had gotten into crunch time (project was due in less that 4 hours), but also kind of disheartening. We could have been done ages ago. chalk it up to experience, i guess.
anyway, it's friday night, i'm gonna go have some reckless fun.
i love you all.
Anyways, I hope that EricOS turns out well, and you totally have to spruce it up with cool stuff like 3D scrollbars and uh... gradients and stuff.
Comments