diff --git a/src/kernel/vm2/TODO b/src/kernel/vm2/TODO index 6fd9fd2bfb..9f262119b7 100644 --- a/src/kernel/vm2/TODO +++ b/src/kernel/vm2/TODO @@ -1,10 +1,6 @@ -1) Need to make the paging daemon load the pages in, using semaphores. - -- Looks like we *don't* have to do this, based on what is done in NewOS. Need to consult... -2) Make the caching and the VM (mmap) work together so that an mmap'ed file and a cached file will not race. - -- Maybe a vnodeManager or a lookup in a hash table or something so that we can tell if someone is already caching this vnode. - This could get a little tricky wrt permissions and all... -3) Change the architecture so that instead of multiple threads of tests, we have multiple apps of tests... -4) Tests are not done. +1) Must lock original area when clone()ing. Sigh. Also must add ability to clone other process' areas. The issue here is that areaManager is finding the areas. Need to keep a global list of areas for this. An area might well work. +2) Add statistics counting for copy in/out +3) Tests are not done. Test: getNextAreaInfo cloneArea @@ -13,9 +9,10 @@ mmap / munmap paging disk caching +4) Change the architecture so that instead of multiple threads of tests, we have multiple apps of tests... +5) Need to make the paging daemon load the pages in, using semaphores. + -- Looks like we *don't* have to do this, based on what is done in NewOS. Need to consult... 6) See how unresolvable page faults and permissions errors are handled - need to properly handle - This may have to come at HW integration time, since they will be app signals, etc... 7) There is no arch-level integration. This is to be tested (to death) in user land first. * == can not be done in user land. -8) Add statistics counting for copy in/out -9) Must lock original area when clone()ing. Sigh.