Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2024-02-13 | Merge branch 'cow' into net | Mole Shang | 1 | -0/+14 | |
Conflicts: .gitignore Makefile conf/lab.mk kernel/defs.h kernel/syscall.c kernel/vm.c user/pingpong.c user/user.h user/usys.pl | |||||
2024-02-11 | lab cow: finishcow | Mole Shang | 1 | -0/+5 | |
2024-02-11 | lab traps: finishtraps | Mole Shang | 1 | -0/+1 | |
2024-02-10 | lab pgtbl: finishpgtbl | Mole Shang | 1 | -0/+2 | |
2024-02-05 | lab syscall: finish | Mole Shang | 1 | -0/+6 | |
Conflicts: kernel/syscall.c kernel/syscall.h user/user.h user/usys.pl | |||||
2023-10-25 | release lab net | Sanjit Bhat | 1 | -0/+49 | |
2022-08-23 | x | Frans Kaashoek | 1 | -1/+1 | |
2022-08-23 | Merge branch 'riscv' into uvm-perm | Frans Kaashoek | 1 | -2/+4 | |
2022-08-23 | Merge branch 'riscv-killed' into riscv | Frans Kaashoek | 1 | -0/+2 | |
2022-08-22 | Make argint() and argaddr() of type void (thanks Harry Porter) | Frans Kaashoek | 1 | -2/+2 | |
2022-08-12 | Experiment with being more precise setting permissions for user pages. | Frans Kaashoek | 1 | -1/+1 | |
Growing adds R|W pages (without X). Exec() marks the stack only R|W. Probably could setup permissions for text and data better if we call ld with --no-omagic instead of -N. | |||||
2022-08-11 | Use p->lock to read p->killed | Frans Kaashoek | 1 | -0/+1 | |
2022-08-11 | Clean up using killed() | Frans Kaashoek | 1 | -0/+1 | |
2022-08-10 | put walk() in defs.h so it's clear students can call it | Robert Morris | 1 | -0/+1 | |
2022-08-09 | nothing much | Robert Morris | 1 | -1/+1 | |
2021-08-31 | Remove setproc prototype | OptimisticSide | 1 | -1/+0 | |
2020-10-14 | kvmmake() makes a complete kernel page table, matching Figure 3.3 | Frans Kaashoek | 1 | -1/+2 | |
2020-10-05 | eliminate virtio DMA into kernel stacks. | Robert Morris | 1 | -1/+0 | |
2020-08-21 | Adjust a few prototypes to be explicit that they don't take arguments | Frans Kaashoek | 1 | -4/+4 | |
2020-08-10 | fix printf() in interrupts | Robert Morris | 1 | -1/+2 | |
2020-08-10 | interrupt-driven uart output, hopefully a nice example for teaching. | Robert Morris | 1 | -1/+1 | |
2020-08-10 | make "echo hello > x" truncate file x. | Robert Morris | 1 | -0/+1 | |
2019-10-03 | updated alarmtest | Robert Morris | 1 | -1/+0 | |
2019-09-10 | Support exit status for exit/wait | Frans Kaashoek | 1 | -2/+2 | |
One test case for returning a exit status Passes usertests, but haven't used it to simplify tests | |||||
2019-08-18 | Cosmetic cleanup: fsinit reads sb and calls loginit. initialize icache | Frans Kaashoek | 1 | -3/+3 | |
in main.c and don't make it disk specific; the icache is shared. This doesn't matter since we have only one disk, but conceptually cleaner and maybe helpful to students for mount lab. | |||||
2019-07-30 | Make pin/unpin explicit | Frans Kaashoek | 1 | -0/+2 | |
2019-07-29 | Remove B_DIRTY | Frans Kaashoek | 1 | -1/+1 | |
Use refcnt to pin blocks into the cache Replace flags/B_VALID with a boolean field valid Use info[id].status to signal completion of disk interrupt Pass a read/write flag to virtio_disk_rw | |||||
2019-07-28 | argptr no longer needed, since copyin checks | Robert Morris | 1 | -1/+0 | |
2019-07-27 | split printf into a separate file, to make console.c more like a driver | Robert Morris | 1 | -2/+6 | |
2019-07-26 | fetchint isn't used any more | Robert Morris | 1 | -1/+0 | |
2019-07-25 | purge x86 stuff from defs.h | Robert Morris | 1 | -30/+0 | |
2019-07-24 | rationalize some vm function names | Robert Morris | 1 | -5/+5 | |
2019-07-24 | no more PAGEBREAK | Robert Morris | 1 | -1/+0 | |
2019-07-23 | simplify kernel mapping calls | Robert Morris | 1 | -1/+1 | |
2019-07-22 | fix mapkstack | Frans Kaashoek | 1 | -1/+1 | |
2019-07-22 | Clear U bit for second stack page so that it functions as a guard page | Frans Kaashoek | 1 | -1/+2 | |
2019-07-19 | One way of supporting a guard page below kstack: allocate kstacks in | Frans Kaashoek | 1 | -0/+2 | |
procinit() and map them high up (below TRAMPOLNE) with an empty mapping below each stack. Never free a kernel stack. Another way would be to allocate and map them dynamically, but then we need to reload page table when switching processes in scheduler() and/or have a kernel pagetable per proc (if we want k->stack to be the same virtual address in each process). One gotcha: kernel addresses are not equal to physical addresses for stack addresses. A stack address must be translated if we need its physical address (e.g., virtio passes a stack address to the disk). | |||||
2019-07-02 | try to continue from walk() failing to allocate a page-table page | Robert Morris | 1 | -2/+2 | |
2019-07-01 | have fork() fail, not panic, if not enough phys mem | Robert Morris | 1 | -1/+1 | |
2019-06-13 | virtio disk driver | Robert Morris | 1 | -0/+5 | |
2019-06-11 | separate source into kernel/ user/ mkfs/ | Robert Morris | 1 | -0/+205 | |