SWE3004S17.Projects History
Hide minor edits - Show changes to markup
Changed lines 54-58 from:
- Implement thread-support on xv6
to:
- Implement thread-support on xv6
Project #6 (Deadline: 6/11 11:59PM)
- Support mutex and condition variable on xv6
Changed lines 50-54 from:
- Implement copy-on-write on xv6
to:
Changed lines 46-50 from:
- Since a page-size bitmap has up to 2^15 entries, we modifies the maximum number of allocated pages per each slab from 100 to 64 (in case of 8bytes slab).
to:
- Since a page-size bitmap has up to 2^15 entries, we modifies the maximum number of allocated pages per each slab from 100 to 64 (in case of 8bytes slab).
Project #4 (Deadline: 5/14 11:59PM)
- Implement copy-on-write on xv6
Changed line 46 from:
- Since a page-size bitmap has up to 2^15 entries, we modifies the maximum number of allocated pages per each slab from 100 to 64(in case of 8bytes slab).
to:
- Since a page-size bitmap has up to 2^15 entries, we modifies the maximum number of allocated pages per each slab from 100 to 64 (in case of 8bytes slab).
Changed lines 45-46 from:
- Implement a byte-level allocator on xv6
to:
- Implement a byte-level allocator on xv6
- Since a page-size bitmap has up to 2^15 entries, we modifies the maximum number of allocated pages per each slab from 100 to 64(in case of 8bytes slab).
Changed line 16 from:
- When: 19:00 - 21:00 (Tuesday)
to:
- When: 19:30 - 21:00 (Tuesday)
Changed line 45 from:
- Implement the byte-level allocator on xv6
to:
- Implement a byte-level allocator on xv6
Changed lines 41-45 from:
- Since we use nice value in range of [0, 40], you must change NICE_TO_TICKS macro from (20-nice) to (40-nice).
to:
- Since we use nice value in range of [0, 40], you must change NICE_TO_TICKS macro from (20-nice) to (40-nice).
Project #3 (Deadline: 4/30 11:59PM)
- Implement the byte-level allocator on xv6
Changed lines 41-42 from:
- Since we use nice value in range of [0, 40], you must change NICE_TO_TICKS macro from (20-nice) to (40-nice).
- Because of the ambiguity of test program caused by timer interrupt in xv6, PA#2-2 will be tested manually.
to:
- Since we use nice value in range of [0, 40], you must change NICE_TO_TICKS macro from (20-nice) to (40-nice).
Changed lines 41-42 from:
- Since we use nice value in range of [0, 40], you must change NICE_TO_TICKS macro from (20-nice) to (40-nice).
to:
- Since we use nice value in range of [0, 40], you must change NICE_TO_TICKS macro from (20-nice) to (40-nice).
- Because of the ambiguity of test program caused by timer interrupt in xv6, PA#2-2 will be tested manually.
Changed line 41 from:
- Since we use nice value in range of [0, 40], you must change NICE_TO_TICKS macro from (20-nice) to (40-nice)
to:
- Since we use nice value in range of [0, 40], you must change NICE_TO_TICKS macro from (20-nice) to (40-nice).
Changed line 41 from:
- Since we use nice value in range of [0, 40], you must change NICE_TO_TICKS macro from 20-nice to 40-nice
to:
- Since we use nice value in range of [0, 40], you must change NICE_TO_TICKS macro from (20-nice) to (40-nice)
Changed line 41 from:
- CSince we use nice value in range of [0, 40], you must change NICE_TO_TICKS macro from 20-nice to 40-nice
to:
- Since we use nice value in range of [0, 40], you must change NICE_TO_TICKS macro from 20-nice to 40-nice
Changed line 41 from:
- Change TICK_SCALE macro from 20-nice to 40-nice
to:
- CSince we use nice value in range of [0, 40], you must change NICE_TO_TICKS macro from 20-nice to 40-nice
Changed lines 40-41 from:
- gdb on xv6
to:
- gdb on xv6
- Change TICK_SCALE macro from 20-nice to 40-nice
Changed lines 38-39 from:
to:
Changed lines 37-38 from:
- Implement Linux 2.4 scheduler on xv6
to:
- Implement Linux 2.4 scheduler on xv6
- Linux 2.4 scheduler
Changed lines 33-37 from:
- Implement priority-based scheduler on xv6
to:
- Implement priority-based scheduler on xv6
Project #2-2 (Deadline: 4/9 11:59PM)
- Implement Linux 2.4 scheduler on xv6
Changed lines 29-33 from:
- When a process calls fork() system call, the nice value of child process is same as its parent process.
to:
- When a process calls fork() system call, the nice value of child process is same as its parent process.
Project #2 (Deadline: 4/2 11:59PM)
- Implement priority-based scheduler on xv6
Changed line 29 from:
- When a process call fork() system call, the nice value of child process is same as its parent process.
to:
- When a process calls fork() system call, the nice value of child process is same as its parent process.
Changed line 29 from:
- When a process call fork() system call, the nice value of child process is same as its parent process.
to:
- When a process call fork() system call, the nice value of child process is same as its parent process.
Changed lines 28-29 from:
- Implement getnice, setnice, and ps system calls in xv6
to:
- Implement getnice, setnice, and ps system calls in xv6
- When a process call fork() system call, the nice value of child process is same as its parent process.
Changed lines 24-28 from:
- Submit your screenshot to the TA.
to:
- Submit your screenshot to the TA.
Project #1 (Deadline: 3/26 11:59PM)
- Implement getnice, setnice, and ps system calls in xv6
Changed lines 19-21 from:
Project #0 (Deadline: 3/13 11:59PM)
- Install Ubuntu 14.04 -- This is an official Linux distribution we will use.
to:
Project #0 (Deadline: 3/19 11:59PM)
- Install Ubuntu 16.04 -- This is an official Linux distribution we will use.
Changed lines 17-24 from:
- Where: #26312
to:
- Where: #26312
Project #0 (Deadline: 3/13 11:59PM)
- Install Ubuntu 14.04 -- This is an official Linux distribution we will use.
- Install xv6 & qemu
- Print your student ID and name in the xv6 boot message. Your name and student ID should be printed before the shell is running. This means that you have to insert a code (yeah, just a single line) into one of the xv6 kernel code.
- Submit your screenshot to the TA.
Changed lines 16-22 from:
to:
- When: 19:00 - 21:00 (Tuesday)
- Where: #26312
Changed lines 12-22 from:
- Ability to read a large, complex program
to:
Added lines 1-12:
SWE3004: Operating Systems (Spring 2017)
[Projects]
- You will have several projects based on the xv6 instructional operating system. To successfully complete these projects, you must have excellent C programming skill and be familiar with the Linux platform.
- Required skills
- Fluent C programming (must!)
- Basic knowledge on Intel x86 architecture
- Intel x86 assembly programming
- Basic knowledge on Unix/Linux systems
- Ability to read a large, complex program