Computer Systems Project Proposal Sean Colyer Period 1 9/29/05 I. Creation of software and grid in a multiple operating systems distributed computing environment. II. Problem Statement. There are many computers that use nowhere near their full potential, they could be networked to create a powerful grid and take use of many computers fading out of date. III. Purpose. This project has a number of reasons and goals. I would be working to develop and study network and processor management that would work in a number of environments. I will explore current grid computing techniques and explore ways to tie them together so that they would work in different operating systems. This project could help small networks with older computers work towards using machines as one common machine without seriously changing their operating systems and style of network. A grid computer in the Computer Systems Lab would allow for the creation of a mild supercomputer for students to study and use for higher level computer science and math projects. If created effectively, a grid computing network of this nature could run on an environment with a wide range of computers without forcing large changes and done through only running a small program that while not in use would use minimal cpu power. IV. Scope of Study. To create an inter operating system compatibile grid application, the only practical solution is to write it using Java. Using Java, I will be able to tweak the program for the different operating systems while keeping it contained within the same project files. Ideally, I would write the program so that I do minimal algorithm writing and instead write end use applications that will allow computers to plug into a variety of grid networks (Apple's Xgrid, and OpenMOSIX for Linux). V. Background and review of current literature/research in this area. Distributed and grid computing is currently a very popular topic. Virginia Tech's cluster of 1100 dual processor Mac G5's went to show how effective grid computing could be. Apple releases Xgrid with its new OS X, 10.4. Xgrid can run on any mac running 10.4.x and allow it to easily bring nodes in and out of a grid computing, creating a virtual on the fly grid computer, the problem is that it is limited to Mac computers. Apple's recent announcement of their transition to the x86 architecture it is viable that Xgrid could be ported to other operating systems. OpenMOSIX is a popular kernel extension for Linux that creates excellent load balancing and easily creates a grid computer for those who are willing to use the rather limited conditions it allows. There has been virtually no creation of a grid computing network for Windows and for use in multiple operating systems. An effective product that could be used in a variety of environments could transform workplaces with large numbers of desktop using a fraction of their potential. VI. Procedure and Methodology. The first part of my project is to work on creating an Xgrid server in Java, there is a project already that has created an Xgrid client in Java which can be used in a range of operating systems. I'm going to try to create a program that uses the network interface from Xgrid and then use slightly modified load balancing from other grid computing projects. The more computers that I can get for a testing environment, the better, any range of ex-workstations could be incorporated into the grid. My testing will be based primarily starting with 2 nodes and a central node, I will try examining the way OpenMOSIX works on this cluster and then try creating and implementing software for Windows. VII. Expected Results & Value to Others This project could help create a viable solution to turn many desktops into nodes in a cluster to create grid computers with lots of processor power without drastically changing the work environment. Eventually I hope to be able to showcase the project by using a variety of computers in a cluster, using grapsh and charts of processor use and task management. I think the project to be done effectively will probably take all year, but is a good project because I can spend more time, the research will not really be complete but can create a product. I will track progress in a daily log.