Currently I am a in-between graduate student working at Marquette University. I have completed my thesis (Using Software Transactional Memory in Interrupt-Driven Systems), but it was about one week late — so my graduation was pushed back to August 2009. At the end of the summer I will move to St. Louis and begin working on a Ph.D. in Computer Science at Washington University.
However, until then I am a research assistant for Dr. Dennis Brylow. At present I am continuing my research with software transactional memory and operating systems. In my spare geek time, I plan on fleshing out or starting up various parts of the Embedded Xinu O/S, as well as doing various administrative lab tasks.
If you want more detailed information about me and my academic career you can visit the website of Michael J. Schultz!
Weekly Log (Summer 2009)
Week of May 11
- Completed marriage transaction!
- Generated user accounts for new Team Xinu members.
- Reviewed a few papers, notably:
- Liedtke, J. 1995. On <math>\mu</math>-kernel construction. SIGOPS Operating Systems Review 29, 5 (Dec. 1995), 237-250. DOI=http://doi.acm.org/10.1145/224057.224075
- Wentzlaff, D. and Agarwal, A. 2009. Factored operating systems (fos): the case for a scalable operating system for multicores. SIGOPS Operating Systems Review 43, 2 (Apr. 2009), 76-85. DOI=http://doi.acm.org/10.1145/1531793.1531805
- Miller, F. W. Simple Memory Protection for Embedded Operating System Kernels. 2002 FREENIX Track Technical Program. URL=http://www.usenix.org/events/usenix02/tech/freenix/miller.html
- Created Research Experiences for Undergraduates wiki for MSCS REU students (and installed necessary extensions).
- Updated all wikis to user MediaWiki 1.14.0 (Adam's Wiki, BadSciFi Wiki, MSCS REU Wiki, Student ACM Wiki, Embedded Xinu Wiki)
- Updated the all important fortune-sys-lab package to 1.0.1-1 to include quotes through Spring 2009.
- Began tinkering with KVM on Fedora 10 using HowtoForge (TODO: peruse Techotopia manuals, Fedora-Getting started with virtualization)
Week of May 18
- Discussed REU Wiki with REU students.
- Wrote Flash memory and memory protection pages to the trac wiki with deadlines and some information.
- Worked on KVM a bit more (no success yet) -- it seems to fail to create the graphics properly which halts the installation process.
- Created SVN account and branch for wireless driver developer.
- Began some preliminary work on memory protection (moving to region based memory)
Week of May 25
- Enjoyed some relaxation time in Galena.
Week of June 1
- Moved some essentials of life back to Milwaukee.
- Updated/rebooted mawdryn (arg).
- Discussed network stack with members of Team Xinu.
- Reread and reviewed -- Wentzlaff, D. and Agarwal, A. 2009. Factored operating systems (fos): the case for a scalable operating system for multicores. SIGOPS Operating Systems Review 43, 2 (Apr. 2009), 76-85. DOI=http://doi.acm.org/10.1145/1531793.1531805.
- Updated and submitted my thesis.
- Looking for potential conference/journal matches to submit a paper to (USENIX, IEEE, ACM Journals, and ACM Conferences).
- Format: Full Conference Name (Abbr., deadline, page limit) -- est. impact
- Workshop on Programming Languages and Operating Systems (PLOS, 2009 Jun 19, 5 pages) -- unknown.
- Workshop on Hot Topics in Operating Systems (HotOS, 2010 Jan, 5 pages) -- 34.
- European Conference on Computer Systems (EuroSys, 2009 Oct 19, 12 pages) -- unknown.
- USENIX Annual Technical Conference (USENIX, 2010 Jan, 14 pages long form, 6 pages short form) -- 7.
- Tools and Algorithms for the Construction and Analysis of Systems (TACAS, 2009 October, 15 pages) -- ~175.
- Object-Oriented Programming Systems, Languages and Applications (OOPSLA, 2010 Mar, 18 pages) -- 28.
Languages, Compilers, and Tools for Embedded Systems (LCTES, 2010 Feb, 10 pages) -- 404. International Conference on Embedded Software (EMSOFT, 2010 May, 10 pages) -- 390. Operating Systems Design and Implementation (OSDI, 2010 May, 14 pages) -- 1. Transactions on Computer Systems (TOCS, rolling?, $100/page?) -- 8. IEEE Transactions on Computers (TC, look for special issue, 14 regular/8 brief pages) -- 361. IEEE Transactions on Software Engineering (TSE, look for special issue, 14 regular/8 short pages) -- unknown. Software: Practice and Experience (SP&E, rolling?, 40 pages) -- 558.
- Updated and assigned tasks on the Flash page, now has Samsung specification and instructions for storing a Flash image to morbius.
Week of June 8
- Got rejected.
- Reduced conferences to look at for paper submissions.
- Finished work on region based memory allocator. (source)
- Xinu now (inefficiently) allocates page sized memory when requests are made.
- Read paper
- Stitt, G., Chaudhari, G., and Coole, J. 2008. Traversal caches: a first step towards FPGA acceleration of pointer-based data structures. In Proceedings of the 6th IEEE/ACM/IFIP international Conference on Hardware/Software Codesign and System Synthesis (Atlanta, GA, USA, October 19 - 24, 2008). CODES/ISSS '08. ACM, New York, NY, 61-66. DOI=http://doi.acm.org/10.1145/1450135.1450150
- Built page mapping/unmapping functionality into Xinu for virtual memory
- TODOs now include:
- Hacking together TLB initialization and modification code.
- Correctly use TLB during context switch.
- Build system call interface and associated system call functions.
- Make distinction between user-/kernel-level threads and/or processes.
- TODOs now include:
Week of June 15
- Reviewed papers
- Ryzhyk, L., Chubb, P., Kuz, I., and Heiser, G. 2009. Dingo: taming device drivers. In Proceedings of the Fourth ACM European Conference on Computer Systems (Nuremberg, Germany, April 01 - 03, 2009). EuroSys '09. DOI=http://doi.acm.org/10.1145/1519065.1519095.
- Fuad Tabba, Mark Moir, James R. Goodman, Andrew W. Hay, and Cong Wang. NZTM: Nonblocking Zero-indirection Transactional Memory. In Proceedings of the 2009 Symposium on Parallelism in Algorithms and Architectures (Calgary, Alberta, Canada, August 11 - 13, 2009). SPAA '09. URI=http://www.virtutech.com/files/academics/spaa091-tabba.pdf.
- System Administration
- Upgraded to MediaWiki 1.15.0 on Adam's Wiki, BadSciFi Wiki, MSCS REU Wiki, Student ACM Wiki, and Embedded Xinu Wiki.
- Then proceeded to upgrade all the wikis to use a "continuous integration" process like Wikipedia does, so now all the wikis should use the latest trunk version of MediaWiki.
- Modified some settings for the SMI repository.
Began writing aCompleted a draft document discussing what administration tasks there are with mulug (available in
- Memory Protection
- Began looking into system call interface. I've decided Xinu was never meant to have user mode -> kernel mode syscalls (see 20.5 of Operating System Design). Implying that the ancient SYSCALL type is a bit of a misnomer. Though the interface is possible (and fairly easy), it would require special wrapper functions around every call deemed to be a system call.
Week of June 22
- Reviewed Paper
- Maeda, S., Asano, S., Shimada, T., Awazu, K., and Tago, H. 2005. A Real-Time Software Platform for the Cell Processor. IEEE Micro 25, 5 (Sep. 2005), 20-29. DOI=http://dx.doi.org/10.1109/MM.2005.79
- Memory Protection
- Filling out TLB EntryHi and EntryLo[0,1] fields with data from processes page table. Doesn't work. Getting Bus error exception with both fast (assembly) and slow (C) handlers.
- Building a version of OpenWRT to (hopefully) dump and look at values in TLB.