Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								c383612a7d 
								
							 
						 
						
							
							
								
								Thanks to Wolfgang Keller <nubok@users.noreply.github.com>  
							
							
							
						 
						
							2017-01-30 20:07:42 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								2adb7c21dc 
								
							 
						 
						
							
							
								
								Move retry loop/sleep/wakeup in bio.c into sleeping locks  
							
							
							
						 
						
							2016-09-11 20:17:22 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								6670d3b5e0 
								
							 
						 
						
							
							
								
								Straight replacement of B_BUSY with a sleeping lock.  
							
							
							
						 
						
							2016-09-11 17:24:04 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Peter H. Froehlich 
								
							 
						 
						
							
							
							
							
								
							
							
								2c60b7f31f 
								
							 
						 
						
							
							
								
								Removed useless function and prototypes.  
							
							
							
						 
						
							2016-08-18 11:09:04 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								8320d61be5 
								
							 
						 
						
							
							
								
								Pick up where i left off in april:  
							
							... 
							
							
							
							- move log into metadata part of disk, so that marking
that the log's blocks are in use falls out for free
- superblock describes the whole disk (sizes and offets)
- sizes and offsets are computed in one place (mkfs) and
the rest of the code refers to the superblock for these values,
instead of recomputing them. 
							
						 
						
							2015-06-27 12:39:13 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Cody Cutler 
								
							 
						 
						
							
							
							
							
								
							
							
								aae4e7490f 
								
							 
						 
						
							
							
								
								cmosgetdate() for system-call homework  
							
							... 
							
							
							
							the day of reckoning has come for the debug port "Shutdown" hack.
instead of mucking with ACPI or using a new hack, the student will now write
sys_date() using the cmosgetdate() helper. 
							
						 
						
							2014-09-12 18:09:51 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								71453f72f2 
								
							 
						 
						
							
							
								
								a start at concurrent FS system calls  
							
							
							
						 
						
							2014-08-27 17:15:30 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								432acbaf9e 
								
							 
						 
						
							
							
								
								Merge branch 'master' of git+ssh://amsterdam.csail.mit.edu/home/am0/6.828/xv6  
							
							
							
						 
						
							2012-08-22 20:20:17 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								4ce832ddd2 
								
							 
						 
						
							
							
								
								Remove unused argument to setupkvm (thanks to Peter Froehlich)  
							
							
							
						 
						
							2012-08-22 20:19:37 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								70c555574a 
								
							 
						 
						
							
							
								
								Remove unused argument from lapicinit (thanks to Peter Froehlich)  
							
							
							
						 
						
							2012-08-22 20:13:43 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Austin Clements 
								
							 
						 
						
							
							
							
							
								
							
							
								9d59eb0151 
								
							 
						 
						
							
							
								
								Make fetchint and fetchstr use proc instead of taking a struct proc  
							
							... 
							
							
							
							Previously, these were inconsistent: they used their struct proc
argument for bounds checking, but always copied the argument from the
current address space (and hence the current process).  Drop the
struct proc argument and always use the current proc.
Suggested by Carmi Merimovich. 
							
						 
						
							2012-02-17 23:20:13 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								c092540e39 
								
							 
						 
						
							
							
								
								eliminate enter_alloc -- use kalloc for everything  
							
							
							
						 
						
							2011-09-13 13:14:52 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Austin Clements 
								
							 
						 
						
							
							
							
							
								
							
							
								2eb214c9db 
								
							 
						 
						
							
							
								
								clear_pte_u -> clearpteu  
							
							
							
						 
						
							2011-09-02 14:37:04 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								371ab7fa96 
								
							 
						 
						
							
							
								
								inaccessible page under the user stack page, to help exec deal w/ too-large args  
							
							
							
						 
						
							2011-09-01 13:25:34 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								1ddfbbb194 
								
							 
						 
						
							
							
								
								Revert "Introduce and use sleeplocks instead of BUSY flags"  
							
							... 
							
							
							
							My changes have a race with re-used bufs and the code doesn't seem to get shorter
Keep the changes that fixed ip->off race
This reverts commit 3a5fa7ed90 
							
						 
						
							2011-08-29 17:18:40 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Austin Clements 
								
							 
						 
						
							
							
							
							
								
							
							
								a7061b4f97 
								
							 
						 
						
							
							
								
								Style nits; indentation and tabs  
							
							
							
						 
						
							2011-08-29 16:12:01 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								3a5fa7ed90 
								
							 
						 
						
							
							
								
								Introduce and use sleeplocks instead of BUSY flags  
							
							... 
							
							
							
							Remove I_BUSY, B_BUSY, and intrans defs and usages
One spinlock per buf to avoid ugly loop in bget
fix race in filewrite (don't update f->off after releasing lock) 
							
						 
						
							2011-08-26 10:08:29 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								c3dcf47966 
								
							 
						 
						
							
							
								
								Clean up memlayout.h  
							
							... 
							
							
							
							Get rid of last instances of linear address and "la"
Get ready for detecting physical memory dynamically 
							
						 
						
							2011-08-16 15:47:22 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								a4b213cf49 
								
							 
						 
						
							
							
								
								Avoid "boot" in xv6  
							
							
							
						 
						
							2011-08-15 20:11:13 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								66ba8079c7 
								
							 
						 
						
							
							
								
								Use static page table for boot, mapping first 4Mbyte; no more segment trick  
							
							... 
							
							
							
							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-09 21:37:35 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								9aa0337dc1 
								
							 
						 
						
							
							
								
								Map kernel high  
							
							... 
							
							
							
							Very important to give qemu memory through PHYSTOP :( 
							
						 
						
							2011-07-29 07:31:27 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								13a96baefc 
								
							 
						 
						
							
							
								
								Dirt simple logging  
							
							... 
							
							
							
							Passes usertests and stressfs
Seems to recover correctly in a number of simple cases 
							
						 
						
							2011-07-27 20:35:46 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Russ Cox 
								
							 
						 
						
							
							
							
							
								
							
							
								417c37115e 
								
							 
						 
						
							
							
								
								more trivial cleanup  
							
							
							
						 
						
							2011-01-11 13:51:40 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Russ Cox 
								
							 
						 
						
							
							
							
							
								
							
							
								1a81e38b17 
								
							 
						 
						
							
							
								
								make new code like old code  
							
							... 
							
							
							
							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. 
							
						 
						
							2011-01-11 13:01:13 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								4655d42e3b 
								
							 
						 
						
							
							
								
								copyout() copies data to a va in a pagetable, for exec() &c  
							
							... 
							
							
							
							usertest that passes too many arguments, break exec 
							
						 
						
							2010-09-27 16:14:33 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								faad047ab2 
								
							 
						 
						
							
							
								
								change some comments, maybe more informative  
							
							... 
							
							
							
							delete most comments from bootother.S (since copy of bootasm.S)
ksegment() -> seginit()
move more stuff from main() to mainc() 
							
						 
						
							2010-09-13 15:34:44 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Austin Clements 
								
							 
						 
						
							
							
							
							
								
							
							
								588644f472 
								
							 
						 
						
							
							
								
								Consistent style in defs.h  
							
							
							
						 
						
							2010-09-02 19:01:25 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Austin Clements 
								
							 
						 
						
							
							
							
							
								
							
							
								79cd8b3eed 
								
							 
						 
						
							
							
								
								Simplify allocuvm/deallocuvm to operate in a contiguous memory model.  This 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-02 18:28:36 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Austin Clements 
								
							 
						 
						
							
							
							
							
								
							
							
								f53e6110be 
								
							 
						 
						
							
							
								
								Simplify inituvm and userinit by assuming initcode fits on a page  
							
							
							
						 
						
							2010-09-02 15:42:25 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Austin Clements 
								
							 
						 
						
							
							
							
							
								
							
							
								c7c21467c3 
								
							 
						 
						
							
							
								
								Oops.  Broke the build when I rearranged proc.c  
							
							
							
						 
						
							2010-09-02 14:30:06 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								8d774afb2d 
								
							 
						 
						
							
							
								
								no more pminit, or ELF header at 0x10000  
							
							... 
							
							
							
							kinit() knows about end and PHYSTOP
map all of kernel read/write (rather than r/o instructions)
thanks, austin 
							
						 
						
							2010-08-31 15:39:25 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								7d7dc9331b 
								
							 
						 
						
							
							
								
								kalloc/kfree now only a page at a time  
							
							... 
							
							
							
							do not keep sorted contiguous free list 
							
						 
						
							2010-08-31 12:54:47 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								ac090078c6 
								
							 
						 
						
							
							
								
								xx  
							
							
							
						 
						
							2010-08-30 10:13:49 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								789b508d53 
								
							 
						 
						
							
							
								
								uptime() sys call for benchmarking  
							
							... 
							
							
							
							increase PHYSTOP 
							
						 
						
							2010-08-11 14:34:45 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								83d2db91f7 
								
							 
						 
						
							
							
								
								allow sbrk(-x) to de-allocate user memory  
							
							
							
						 
						
							2010-08-10 17:08:41 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								c4cc10da7e 
								
							 
						 
						
							
							
								
								fix corner cases in exec of ELF  
							
							... 
							
							
							
							put an invalid page below the stack
have fork() handle invalid pages 
							
						 
						
							2010-08-06 11:12:18 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								c99599784e 
								
							 
						 
						
							
							
								
								remove some unused vm #defines  
							
							... 
							
							
							
							fix corner cases with alignment when mapping kernel ELF file 
							
						 
						
							2010-08-05 16:00:59 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								2cf6b32d4d 
								
							 
						 
						
							
							
								
								move jkstack to main.c  
							
							... 
							
							
							
							replace jstack with asm()s 
							
						 
						
							2010-08-05 14:15:03 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								eb18645f17 
								
							 
						 
						
							
							
								
								fix allocuvm() to handle sbrk() with non-page-granularity argument  
							
							... 
							
							
							
							(maybe this never worked, but it works now) 
							
						 
						
							2010-08-05 12:10:54 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								b738a4f1a2 
								
							 
						 
						
							
							
								
								kill TLB shoot down code  
							
							
							
						 
						
							2010-07-28 14:38:05 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								30f5bf0548 
								
							 
						 
						
							
							
								
								some cleanup  
							
							
							
						 
						
							2010-07-25 20:30:21 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								4714c20521 
								
							 
						 
						
							
							
								
								Checkpoint page-table version for SMP  
							
							... 
							
							
							
							Includes code for TLB shootdown (which actually seems unnecessary for xv6) 
							
						 
						
							2010-07-23 07:41:13 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								74c82bc158 
								
							 
						 
						
							
							
								
								nits  
							
							
							
						 
						
							2010-07-02 17:45:37 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								40889627ba 
								
							 
						 
						
							
							
								
								Initial version of single-cpu xv6 with page tables  
							
							
							
						 
						
							2010-07-02 14:51:53 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Austin Clements 
								
							 
						 
						
							
							
							
							
								
							
							
								2c536bff67 
								
							 
						 
						
							
							
								
								Remove memcpy prototypes at Russ' request to prevent code from calling  
							
							... 
							
							
							
							memcpy directly. 
							
						 
						
							2009-10-07 13:06:55 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Austin Clements 
								
							 
						 
						
							
							
							
							
								
							
							
								6639ce56d9 
								
							 
						 
						
							
							
								
								Provide memcpy for compatibility with older versions of gcc  
							
							
							
						 
						
							2009-10-07 12:05:56 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Russ Cox 
								
							 
						 
						
							
							
							
							
								
							
							
								48755214c9 
								
							 
						 
						
							
							
								
								assorted fixes:  
							
							... 
							
							
							
							* rename c/cp to cpu/proc
 * rename cpu.context to cpu.scheduler
 * fix some comments
 * formatting for printout 
							
						 
						
							2009-08-30 23:02:08 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Russ Cox 
								
							 
						 
						
							
							
							
							
								
							
							
								0aef891495 
								
							 
						 
						
							
							
								
								shuffle and tweak for formatting.  
							
							... 
							
							
							
							pdf has very good page breaks now.
would be a good copy for fall 2009. 
							
						 
						
							2009-08-08 01:07:30 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Russ Cox 
								
							 
						 
						
							
							
							
							
								
							
							
								2c5f7aba38 
								
							 
						 
						
							
							
								
								initproc, usegment, swtch tweaks  
							
							
							
						 
						
							2009-07-11 19:28:29 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									rsc 
								
							 
						 
						
							
							
							
							
								
							
							
								215738336a 
								
							 
						 
						
							
							
								
								move fork into proc.c  
							
							
							
						 
						
							2009-05-31 00:38:51 +00:00