160 likes | 290 Views
Project 3 Discovering things about Linux Kernel. CS-502, Operating Systems Fall 2007 Due, Monday, December 3, 2007. Three Options – Choose only One. Port VMware Host-Guest File System (HGFS) into your Linux kernel source tree and make it work automatically.
E N D
Project 3Discovering things about Linux Kernel CS-502, Operating SystemsFall 2007 Due, Monday, December 3, 2007 Project 4 -- Discovery
Three Options – Choose only One • Port VMware Host-Guest File System (HGFS) into your Linux kernel source tree and make it work automatically. • Figure out how to use KDB, the Kernel Debugger, and write set of instructions • Determine whether Eclipse can be used as an integrated development environment of Linux kernel, and if so how to use it. Project 4 -- Discovery
Discovery Project • There are no right answers • In some cases, no answers at all! • There is no guarantee that you will be able to complete the project within reasonable time available • Project grade depends upon how much you learn, how you learn & report • Not necessarily on what you complete Project 4 -- Discovery
A. Host-Guest File System (HGFS) • Basis for shared folders between virtual machine and host machine • Part of VMware Tools • Previously installed on your virtual machines • “Plugs into” the Linux Virtual File System • See /mnt/hgfs/… • Very useful Project 4 -- Discovery
HGFS – Problem • When a new kernel is installed and booted, HGFS stops working • Along with other VMware Tools • When old kernel is rebooted, HGFS does not start working again • Reason:– VMware Tools are installed and configured after kernel is built • /usr/bin/vmware-config-tools.pl • Check at boot time for correct kernel header files • Tools disabled if incorrect Project 4 -- Discovery
Project of Previous Term • Summer 2007 students investigated why this happens • Project assignment is here:– (.doc, html). • Project reports at link written on board Project 4 -- Discovery
This Project • Port HGFS into your Linux kernel source tree • Open source code at • http://www.vmware.com/resources/opensource/projects.html • http://open-vm-tools.sourceforge.net/ • Make it compile automatically • Preferably under control of kernel config step • Make it start automatically • /etc/mnttab or equivalent Project 4 -- Discovery
If successful • Submit a patch file with appropriate source code and changes to kernel tree • Write-up explaining your solution Project 4 -- Discovery
If unable to complete • Do as much as you can • Learn as much as you can • Report on what you learned • Create a brief project plan for the next student who undertakes this project Project 4 -- Discovery
KDB, the Kernel Debugger • Supposedly an improvement over printk() • See Linux Kernel Development, 2nd ed., Chapter 18 • Figure out how to use kdb for debugging the Linux kernel • Either one VM or two (your choice) • Write a set of instructions for other students Project 4 -- Discovery
If unable to complete • Do as much as you can • Learn as much as you can • Report on what you learned • Create a brief project plan for the next student who undertakes this project • Must build upon your work Project 4 -- Discovery
Eclipse for Linux kernel source • Eclipse, a popular Integrated Development Environment • Already installed on your VM desktop • Includes C/C++ Development package • Useful for automating build steps, finding files, code, definitions, declarations, etc. Project 4 -- Discovery
This Project • Goal – to put Linux kernel source tree under Eclipse management. • Figure out whether this is possible • If so, what has to be done • If not, explain why • Report • If so, instructions on how to do it (possibly including a patch file) • If not, in-depth report of difficulties & incompatibilities Project 4 -- Discovery
Collaboration • You may collaborate with each other in • Research on-line • Experimenting with kernel • Studying kernel code • Etc. • You may consult with anyone you wish on this project • Identify such people from outside of class in your report • You must write your own report in your own words • 3-5 pages plus any data output from experiments Project 4 -- Discovery
Project Submission • Due date – Monday, December 3, 2007 • I.e., three weeks from today • Submit report and data output via web-based Turnin system http://turnin.cs.wpi.edu:8088/servlets/turnin.ss • This is Project 4 Project 4 -- Discovery
Questions? Project 4 -- Discovery