summaryrefslogtreecommitdiff
path: root/vm.c
AgeCommit message (Collapse)AuthorFilesLines
2011-09-01Fix layout issues for printed versionFrans Kaashoek1-16/+19
2011-08-29Style nits; indentation and tabsAustin Clements1-1/+1
2011-08-24Eliminate USERTOP; no use for it.Frans Kaashoek1-3/+3
2011-08-16Switch back to #define for PHYSTOP. Using the E820 to retrieve the memory ↵Frans Kaashoek1-11/+5
map is too complicated (must be done in 16-bit real-mode, probably enlarged bootblock beyond 512 bytes, and a #define requires less explanation).
2011-08-16Clean up memlayout.hFrans Kaashoek1-9/+17
Get rid of last instances of linear address and "la" Get ready for detecting physical memory dynamically
2011-08-15Make Austin happierFrans Kaashoek1-12/+12
2011
2011-08-15Avoid "boot" in xv6Frans Kaashoek1-2/+2
2011-08-11Make AP processors boot using bootpgdirFrans Kaashoek1-26/+4
Remove device mapping from bootpgdir Remove unnecessary vmenable Set CPUS back to 2 in Makefile Passes all usertests
2011-08-09Tiny bit of cleanupFrans Kaashoek1-7/+7
2011-08-09xFrans Kaashoek1-4/+4
2011-08-09Use static page table for boot, mapping first 4Mbyte; no more segment trickFrans Kaashoek1-76/+18
Allocate proper kernel page table immediately in main using boot allocator Remove pginit Simplify address space layout a tiny bit More to come (e.g., superpages to simplify static table)
2011-08-07Adjust sbrk test for large user address spacesFrans Kaashoek1-1/+1
All tests pass
2011-07-31Don't map IO space in the user part of the address spaceFrans Kaashoek1-8/+10
Passes all tests now (but need to update usertests to allow for more than 640k)
2011-07-29Map kernel highFrans Kaashoek1-28/+99
Very important to give qemu memory through PHYSTOP :(
2011-02-19xv6: formatting, cleanup, rev5 (take 2)Russ Cox1-61/+54
2011-01-11more trivial cleanupRuss Cox1-12/+9
2011-01-11make new code like old codeRuss Cox1-59/+84
Variable declarations at top of function, separate from initialization. Use == 0 instead of ! for checking pointers. Consistent spacing around {, *, casts. Declare 0-parameter functions as (void) not (). Integer valued functions return -1 on failure, 0 on success.
2010-09-27copyout() copies data to a va in a pagetable, for exec() &cRobert Morris1-4/+28
usertest that passes too many arguments, break exec
2010-09-20map kernel instructions r/oRobert Morris1-2/+7
2010-09-13change some comments, maybe more informativeRobert Morris1-1/+1
delete most comments from bootother.S (since copy of bootasm.S) ksegment() -> seginit() move more stuff from main() to mainc()
2010-09-02Simplify allocuvm/deallocuvm to operate in a contiguous memory model. This ↵Austin Clements1-31/+27
makes their interface match up better with proc->sz and also simplifies the callers (it even gets the main body of exec on one page).
2010-09-02Comment inituvm and loaduvmAustin Clements1-0/+4
2010-09-02Fix comment capitalizationAustin Clements1-14/+14
2010-09-02Rearrange vm.c so it's in logical order and prints nicely. Shorten a few ↵Austin Clements1-135/+129
functions in uninteresting ways to make them fit.
2010-09-02Simplify inituvm and userinit by assuming initcode fits on a pageAustin Clements1-13/+7
2010-09-02Simplify freevm using deallocuvmAustin Clements1-19/+6
2010-09-01Slight simplification of copyuvm. We could simplify other things now that ↵Austin Clements1-8/+8
processes are contiguous, but we'd have to think harder about the error paths.
2010-09-01Space policeAustin Clements1-28/+28
2010-09-01Tab policeAustin Clements1-7/+7
2010-09-01Fix similar leak in copyuvmAustin Clements1-2/+6
2010-08-31Cleanup if allocuvm fails to alloc. Add a test.Austin Clements1-1/+2
2010-08-31no more pminit, or ELF header at 0x10000Robert Morris1-41/+4
kinit() knows about end and PHYSTOP map all of kernel read/write (rather than r/o instructions) thanks, austin
2010-08-31kalloc/kfree now only a page at a timeRobert Morris1-9/+8
do not keep sorted contiguous free list
2010-08-30xxRobert Morris1-2/+2
2010-08-30we don't need CR0_WPRobert Morris1-3/+1
2010-08-30set only PG and WP in vminit; the rest don't seem to be needed and are confusingRobert Morris1-2/+3
2010-08-11uptime() sys call for benchmarkingRobert Morris1-1/+3
increase PHYSTOP
2010-08-10allow sbrk(-x) to de-allocate user memoryRobert Morris1-1/+25
2010-08-06fix corner cases in exec of ELFRobert Morris1-23/+43
put an invalid page below the stack have fork() handle invalid pages
2010-08-05add some commentsRobert Morris1-3/+6
find out the hard way why user and kernel must have separate segment descriptors
2010-08-05remove some unused vm #definesRobert Morris1-37/+23
fix corner cases with alignment when mapping kernel ELF file
2010-08-05move jkstack to main.cRobert Morris1-11/+0
replace jstack with asm()s
2010-08-05fix allocuvm() to handle sbrk() with non-page-granularity argumentRobert Morris1-10/+26
(maybe this never worked, but it works now)
2010-07-28kill TLB shoot down codeFrans Kaashoek1-5/+0
2010-07-26more cleanupFrans Kaashoek1-32/+12
2010-07-25some cleanupFrans Kaashoek1-20/+34
2010-07-23oops, vm.cFrans Kaashoek1-0/+353