585da48917
Move sleep_lock and sleep_mutex functionality as methods of Spinlock and SpinMutex
2023-10-29 14:45:47 -06:00
9f23b68c00
Refactor sleeplock to remove raw pointers
2023-10-29 14:12:17 -06:00
36d7724fb8
Rewrite spinlock to remove raw pointers
2023-10-29 13:57:23 -06:00
41b7bc7555
Add guards for log operations and inode locking
2023-10-28 22:31:29 -06:00
9b7eb552d0
Rewrite file.c into fs::file
2023-10-28 22:16:35 -06:00
dd9cf556cb
Rewrite vm.c in mem::virtual_memory.
2023-10-28 20:28:37 -06:00
a1f88ff034
Move push_off()/pop_off() into trap.rs and rename to push_intr_off() and pop_intr_off()
2023-10-28 16:17:14 -06:00
c593250549
upgrade panic info
2023-10-22 15:21:07 -06:00
2d51463c56
restructure makefile into multiple files
2023-10-22 13:44:37 -06:00
16924f75fd
Add shutdown syscall and program
2023-10-22 11:18:07 -06:00
9f10ec36b3
move things around
2023-10-21 23:24:33 -06:00
d06d271c9e
rename sleep to sleep_lock
2023-10-21 22:44:06 -06:00
38e44e020b
implement guards for spinlock and sleeplock
2023-10-21 22:13:46 -06:00
f468ba9e48
restructure sleeplock.rs
2023-10-21 21:56:23 -06:00
548be7daea
rename spinlock.lock() to spinlock.lock_unguarded()
2023-10-21 21:42:02 -06:00
de4815dd5e
rewrite virtio_disk.h
2023-10-21 21:32:37 -06:00
572545cb8f
rewrite trap.c
2023-10-20 17:45:34 -06:00
96cfda564c
make a spinmutex (and other things)
2023-10-20 16:29:26 -06:00
29878e42e6
changes
2023-10-16 17:28:59 -06:00
9c3dc94bd7
Implement all asm instructions in riscv.h
2023-10-15 13:16:35 -06:00
709ec3a50f
Rewrite spinlock.c
2023-10-15 12:51:16 -06:00
b30ea849d1
Move Rust into Cargo project
2023-10-14 16:49:24 -06:00
79ecd97c76
Restructure and include basic Rust
2023-10-14 16:21:21 -06:00
Frans Kaashoek
f5b93ef12f
Update acks
...
61810
2022-08-25 14:20:52 -04:00
Frans Kaashoek
3d6ce9b308
Separate tests in slow and quick. The slow tests run xv6 out of
...
memory, out of disk space, or test big directories.
Support -q option to run only the quick tests, which saves about
7mins.
Clean up driver by removing duplicated code.
2022-08-25 09:45:35 -04:00
Robert Morris
ed101befee
comment the sfences
2022-08-24 13:47:47 -04:00
Robert Morris
581bc4cbd1
sfence before enabling paging
2022-08-24 13:42:59 -04:00
Robert Morris
29ce3161f8
Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv
2022-08-24 13:24:37 -04:00
Robert Morris
9c1b8a4eb0
sfence before writing satp, as well as after
2022-08-24 13:24:24 -04:00
Frans Kaashoek
cc486ddee0
Help students read this C syntax
2022-08-24 08:57:56 -04:00
Robert Morris
96047832c6
Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv
2022-08-23 12:26:39 -04:00
Robert Morris
7c1810e1ae
tolerate running out of inodes
2022-08-23 12:26:26 -04:00
Frans Kaashoek
ac8c0bb177
x
2022-08-23 11:56:29 -04:00
Frans Kaashoek
948cfbdb1f
Rename test to textwrite
2022-08-23 11:21:26 -04:00
Frans Kaashoek
858fc68bdf
Linker script makes binaries bigger; use larger disk so that usertests
...
can run.
Must assumed_free in badwrite() be adjusted?
2022-08-23 11:19:33 -04:00
Frans Kaashoek
ccb7bd14c7
Merge branch 'riscv' into uvm-perm
2022-08-23 11:01:06 -04:00
Frans Kaashoek
4cd4d194b8
Use simple linker script to force data segment to be page aligned
2022-08-23 10:54:40 -04:00
Robert Morris
8621be8f3d
tolerate out of disk when creating . and .. in mkdir()
2022-08-23 08:52:15 -04:00
Robert Morris
dc405cdb7b
don't panic if out of disk space when extending a directory.
2022-08-23 08:23:12 -04:00
Frans Kaashoek
cd6207a972
Merge branch 'riscv-killed' into riscv
2022-08-23 07:31:08 -04:00
Frans Kaashoek
bc48c2be47
Add ref to this nice page about Chapter 9's regexp matcher
2022-08-22 20:44:02 -04:00
Frans Kaashoek
2f0b4d698b
Use pp instead of np to be more consistent
2022-08-22 19:58:33 -04:00
Frans Kaashoek
2a391ebc8b
Make argint() and argaddr() of type void (thanks Harry Porter)
2022-08-22 19:53:09 -04:00
Frans Kaashoek
7086197c27
Simplify uartputc slightly (thanks Harry Porter)
2022-08-22 19:36:11 -04:00
Robert Morris
63ef3b8c9f
slightly better comments
2022-08-22 13:49:15 -04:00
Frans Kaashoek
f2ee8690ad
x
2022-08-17 20:38:11 -04:00
Frans Kaashoek
1d4c437ea1
Use uint64 (thanks carlclone and Harry Porter)
2022-08-17 20:37:22 -04:00
Frans Kaashoek
cef1b57d4a
Compile user binary to map text without W and data without X
...
Use the flags in elf header to set vm permissions
Modify pgbug() so that usertests text segment is without W
Add test to check app cannot write text segment
2022-08-15 19:02:19 -04:00
Frans Kaashoek
2175c6b0b6
Run tests in the order in which they appear in the file
2022-08-15 19:01:34 -04:00
Frans Kaashoek
7a6d57235c
Costmestic change (thanks Harry Porter)
2022-08-12 14:59:30 -04:00