During the summer I spent some time better acquainting myself with grid computing. Had our first meeting. Dr. Pulimood discussed the nature of the RISC architecture @ research meeting. Assigned to read about code optimization, see printouts for more information. Read about 5 articles retrieved from ACM digital library core, including Dr. Pulimood's paper.
Talked about CREU required web site, started development in front page until can get a better handle on manual web page development. Read some more about code optimization and began looking at existing source code on school account. Started by looking at grammar and rules for language but realized early that this was the wrong way to go, started instead to analyze the execution of the virtual machine. Will attempt to map out the system in the coming week and make the web page decent.
Worked on website, mapped out allHdrs.h to better understand structure of RVM. Website now includes some graphics and minimal information. Also, changed background to grid image. Analyzed more of execVM, about half way through file
Finished initial analysis of execVM.c. Corrected some false assumptions made during first iteration analysis. Updated website to include more information on home page about individual research projects. Updated members page to include a blurb about myself.
Read and took notes on article from ACM about a virtual machine called TERRA. Started analysis of interpreter.c.
Looked over hierarchy structure of system again, finished first stage of analysis of interpreter.c. All notes stored in Microsoft OneNote program.
Started to analyze parseFns.c. Looked back over notes from ACM papers
Put all notes previously handwritten into OneNote. Re-read parts of TERRA paper and took notes on Mark McKenney's thesis concerning Dr. Pulimood's mobile computation system.
Read article on SafeTSA. Began writing paper, worked mainly on introduction. posted first attempt at bibliography on web page, need to go back and edit this.
Began looking for research material regarding data structures. Searched ACM digital library core, saved articles in their own folder in CSC 498-07 to separate from those already read/examined. Re-started paper, original attempt too broad, needed to begin again with a better handle on the focus of the paper and research
Worked more on paper, worked mainly on state of the art section. Need to find more information regarding data structures and whether or not linked stacks are the most efficient. Worked on power point presentation for practicum presentations on the 30th.
Worked more on practicum slides and performed some more code analysis on interpreter.c and execVM.c. Need to finalize optimization plans for next semester
Performed research into data structures, paid special attention to stacks, dynamic arrays, and linked lists. Dynamic arrays discarded as a possible improvement due to overhead incurred during array resize actions. Decided to try indexed linked lists instead. Found that linked stacks cannot be improved too much on, decided to leave them as they are. November 30th: Presented research to students and faculty.
Finished research paper for fall semester. Updated website: posted all sources in alphabetical order to website, posted slides from practicum presentation to website.
Finalized research plan for Spring semester, with due dates for both project milestones and final paper milestones. Completed analysis on TypeChecker.c, moved on to other important files under RVM code generation.
Attempted to set up testing environments on several different machines including a Macintosh running OS 10, a Windows XP box with a Pentium 4 processor, and a Solaris machine.
Began implementation of indexed linked lists. Encountered a problem with the method of implementation and spent the week doing more research into data structure implementation in C.
Implemented some more details regarding the indexed linked list implementation, encountered some problems with where certain items belonged.
Re-analyzed structure of RVM due to some confusion regarding the virtual machine's mechanics.
Completed known implementation tasks for indexed linked lists as determined through discussions and investigation into methods of implementing data structures in C.
Began debugging code modified for indexed linked list implementation.
Completed debugging code modified for indexed linked list implementation. Encountered some problems with yacc files in the process.
Revamped and redeployed indexed linked list implementation to include all node types (originally just attempted arNode) and modified so that use of global constants no longer necessary. Method backfired, need to debug or change the logic behind the implementation.
Attempted to debug newer linked list implementation, came to conclusion that this would not work the way it was intended to. Reverted some files to original arNode list implementation and decided to restructure the system to include list structs for all nodes utilizing a linked list in order to facilitate the monitoring of head, tail, count, and dynamic arrays. Performed proof of concept to ensure that method would compile/run on 4/1/06. Will continue with this methodology with other linked structures. Also, found a way to change some structures utilizing a C-String to hold a value of unknown type so that this was no longer necessary. Decided to utilize C "union" construct to facilitate this.
Almost finished implementation of new indexed linked lists, need to perform some more testing to ensure functionality is correct and that all links are being handled correctly. Will move on to implementing the union for values - will require a lot of editing.
Worked on implementations of indexed lists and union for values. Modified the design for the lists again, worked it out as a proof of concept.
Worked on debugging modifications, had some major problems from the modifications. Having issues with type consistency.
Modifications to the RVM are now type consistent, got the system to run once but found that the logic used in the linking functions was incorrect. Once this was edited, the compilation command gave me an internal compiler error involving the lex file, will try to work this out but may not be able to get this to work before the end of the semester.
Worked on the final paper for the term. Unfortunately the system doesn't yet work, still unable to resolve the issue with the lex file. More work needs to be done before the system will work correctly, but will have to be done after the semester is over.