Nov 11, 2016
Lopata Hall, Room 101
"Suggesting Methods to Novice Programmers"
Advisor: Caitlin Kelleher
APIs allow programmers to reuse methods without building from scratch and therefore, APIs are important to know. However, there are obstacles in learning APIs and it is hard especially for novice programmers. We built a system called the Example Guru in the Looking Glass environment that will help novice programmers become aware of other methods by suggesting them through code analysis and provide contrasting examples to learn the method’s usage. We also conducted a study to evaluate the effectiveness of the Example Guru in learning methods in APIs by comparing with traditional documentation. From the study, we found out that novices accessed suggestions more than documentation, and therefore, suggestions exposed programmers to more methods in the environment. This, in turn, improves the method usage of novices with the Example Guru compared to those using the documentation.
"RT-Xen-Multi-Mode: Dynamic Virtualization for Real-Time Systems"
Advisor: Chenyang Lu
Real-time virtualization is gaining adoption as software platforms for embedded systems integration and latency-critical cloud applications. While earlier real-time virtualization platforms require offline configuration of the scheduling parameters of virtual machines (VMs) based on their worst-case workloads, this static approach results in pessimistic resource allocation when the workloads in each VM change dynamically. We developed RT-Xen-Multi-Mode (RT-Xen-M2), a real-time virtualization platform for dynamic real-time systems where VMs may operate in different modes with different task sets at run time. RT-Xen-M2 has three salient capabilities: (1) dynamic reallocation of CPU resources among VMs in response to their mode changes; (2) overload avoidance at both the VM and host levels during mode transition; (3) fast mode transition where multiple VMs may be reconfigured concurrently in a greedy fashion. RT-Xen-M2 has been implemented on Xen 4.7 based on its RTDS real-time scheduler. Experimental results demonstrated that RT-Xen-M2 maintains real-time performance and avoids overloading despite mode changes, while significantly reducing mode switching latency when compared to standard approaches.