- 1 Week 1: June 1st, 2022
- 2 Week 2: June 6th, 2022
- 3 Week 3: June 13th, 2022
- 4 Week 4: June 20th, 2022
- 5 Week 5: June 27th, 2022
- 6 Week 6: July 4th, 2022
- 7 Week 7: July 11th, 2022
Week 1: June 1st, 2022
- Attended introduction meeting on an introduction to data science.
- Attended meeting about research outcomes.
- Met with the research team and decided on summer projects.
- Attended team meeting and discussed goals and ideas for the summer projects.
- Identified utilities needed to compile and run operating systems on a local env.
- Continued downloading and installing programs.
- Installed RiskV tool chain
- Installed QEMU
- Was able to make and compile xV6 in RiskV on the virtual machine.
Week 2: June 6th, 2022
- Out of office
- Started reading and commenting Xinu source code.
- continued to read RiskV documentation.
- attended group talk for REU
- talked with Dr. Brylow about roadmap and information for the summer project.
- Project has the ability to build across semesters
- Worked on writing aspects of Xinu in RiskV instead of Arm architecture.
- Able to get "Hello World" to print over the serial driver/port.
- Continued development work
- attended team lunch
- attended team meeting to discuss weekly progress with the group.
Week 3: June 13th, 2022
- Due to getting a new laptop, all tools needed to be installed again
- changed two Xinu Arm atomic operations, CompareAndSwapStrong and CompareAndSwapWeak, to RiskV
- Was able to get qemu to compile Xinu, hello world printed using RiskV architecture
- Continued to document aspects of the Xinu system in work notebook
- Continued to read up on trap handlers
- Worked on implementing exception handling in Xinu
- Worked on implementing interrupt handling in Xinu
- Pushed working(hopefully) Xinu RiskV trap handler
- Added definitions for exceptions and interrupts
- Removed a magic number from dispatch.c
- Attended REU talk
- When Xinu boots, it now switches from machine mode to supervisor mode to handle exceptions
- Spinlocks are now implemented.
- Attended team meeting
- Attended team lunch
- Worked with Virgil team on Xinu questions
Week 4: June 20th, 2022
- Added Round Robin Scheduling to Xinu
- Reviewed Xinu Wiki and created a list of issues.
- talked about next steps
- Team meeting to discuss pthreads, internal clock, or memory management as the next TODO.
- Started work on translating pthreads
- Attended REU weekly meeting, talked about survey response.
- Attended REU lunch.
- Discussed next steps and goals
- Looked into existing documentation and copied files over to the riscV github.
- Using "read the docs" we now auto generate documentation based on changes to the github.
- Live pdf version of documentation is now live: https://riscv-xinu.readthedocs.io/_/downloads/en/latest/pdf/
- Website version of documentation is also live: https://riscv-xinu.readthedocs.io/en/latest/index.html
- Most of the pages are legacy and will need to be edited or replaced.
- Made documentation roadmap
- attended team meeting
- Identified roadmap for next week
Week 5: June 27th, 2022
- attended 10am meeting about poster presentation
- Worked on implementing embedded riscV zinu on Nezah board
- was able to contact Nezah board via serial port, display port drivers are out of date.
- found a better debian image online, download speed was exceptional, will try to reformat drive tomorrow
- Continued development work on hardware
- Identified method to set Mac address and connect the board to dhcp server.
- Continued development
- Attended team lunch meeting
- Downloaded VM and started process of downloading and compiling a newer version of Tina linux.
Week 6: July 4th, 2022
- Not in the office
- Started download of Tina linux from a virtual machine.
- Compiled and packed source code
- Was able to finish downloading Tina source code and compiling
- Attempted to transfer boot file to ssd for the nezha to boot
- Hooked the Nezha up to the backend pool
- Attended team meeting where we discussed the roadmap for the rest of the semester
- Gave Nezha a MAC address and IP when it boots using a script that sets these prams on boot
Week 7: July 11th, 2022
- Started looking into page tables and enabling memory memory management for the Nezha/Qemu
- Started the development of paging in qemu's virtual environment.
- finished writing functions for identifying the maximum amount of available pages, and for acquiring these pages.
- Attended weekly meeting with REU team, talked about progress and roadmaps.