User:JForden
From REU@MU
Contents
Week 1: June 1st, 2022
Tuesday (5/31/22)
- Attended introduction meeting on an introduction to data science.
Wednesday (6/1/22)
- Attended meeting about research outcomes.
- Met with the research team and decided on summer projects.
Thursday (6/2/22)
- 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.
Friday (6/3/22)
- 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
Monday (6/6/22)
- Out of office
Tuesday (6/7/22)
- Started reading and commenting Xinu source code.
- continued to read RiskV documentation.
Wednesday (6/8/22)
- 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
Thursday (6/9/22)
- Worked on writing aspects of Xinu in RiskV instead of Arm architecture.
- Able to get "Hello World" to print over the serial driver/port.
Friday (6/10/22)
- Continued development work
- attended team lunch
- attended team meeting to discuss weekly progress with the group.
Week 3: June 13th, 2022
Monday (6/13/22)
- 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
Tuesday (6/14/22)
- 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
Wednesday (6/15/22)
- Added definitions for exceptions and interrupts
- Removed a magic number from dispatch.c
- Attended REU talk
Thursday (6/16/22)
- When Xinu boots, it now switches from machine mode to supervisor mode to handle exceptions
- Spinlocks are now implemented.
Friday (6/17/22)
- Attended team meeting
- Attended team lunch
- Worked with Virgil team on Xinu questions
Week 4: June 20th, 2022
Monday (6/20/22)
- Added Round Robin Scheduling to Xinu
Tuesday (6/21/22)
- 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.
Wednesday (6/22/22)
- Started work on translating pthreads
- Attended REU weekly meeting, talked about survey response.
- Attended REU lunch.
Thursday (6/23/22)
- 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.
Friday (6/24/22)
- Made documentation roadmap
- attended team meeting
- Identified roadmap for next week
Week 5: June 27th, 2022
Monday (6/27/2022)
- attended 10am meeting about poster presentation
Tuesday (6/28/2022)
- 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
Wednesday (6/29/2022)
- Continued development work on hardware
Thursday (6/30/2022)
- Identified method to set Mac address and connect the board to dhcp server.
- Continued development
Friday (7/1/2022)
- Attended team lunch meeting
- Downloaded VM and started process of downloading and compiling a newer version of Tina linux.
Week 6: July 4th, 2022
Monday (7/4/2022)
- Not in the office
Tuesday (7/5/2022)
- Started download of Tina linux from a virtual machine.
- Compiled and packed source code