A Simplified Process for Grid Job Migration Abdullah Azfar, Md. Sarwar Morshed , Md. Zahidul Islam , Abu Saleh Shah Muhammad Barkat Ullah , Al-Mukaddim Khan Pathan Department of Computer Science and Engineering, Prime University, Dhaka, Bangladesh. Department of Computer Science and Engineering, Asian University of Bangladesh, Dhaka, Bangladesh. Department of Computer Science and Information Technology, Islamic University of Technology, Board Bazar, Gazipur 1704, Bangladesh. abdullah_azfar@yahoo.com, morshed_ndc_iut@yahoo.com, zahidul_islam82@yahoo.com, barkat@iut-dhaka.edu, mukaddim@iut-dhaka.edu Abstract Ubiquitous computing puts computing in the periphery of our lives, as a tool, not a focus, out of the way so that we can get on with the true tasks we wish to accomplish. The term 'ubiquitous' is used because computers and computation will be everywhere, embedded in the fabric of our lives. With the advent of time, information technology has changed our meaning of life. Along with the rapid progress of IT, our daily life has been deteriorated by a wide variety of computing devices like PCs, Mobile phones, Personal Digital Assistants and so on. However, their functionality and performance are closed completely within individual computing resources. Users must carry on everything independently in different devices to meet their needs although all of them are containing similar type of computing resources. To take the advantage of computing power and functionality configured over the Internet and to make it pervasive in the society, we are in need of a new computing infrastructure that can provide users with necessary computing resources in an on-demand basis. This issue gives rise of the Ubiquitous Computational Grid. The recent improvement of the computer and network is impressive. Supercomputer and clusters of workstations/PCs become connected with high-speed networks and spread over multiple subnets or geographically distributed places (Computational Grid). This paper describes a parallel program checkpointing mechanism and its potential application in Grid systems in order to migrate applications among Grid sites. The checkpointing mechanism can support generic PVM programs. The developed checkpointing mechanism is enough to be used by any grid job manager. Keywords: Checkpoint, grid, process migration, server process, ubiquitous computing. I. INTRODUCTION For the past few years, parallel processing has gained an ever-increasing acceptance and adoption for both high performance scientific computing and for more “general purpose” applications. The acceptance has been facilitated by two major developments massively parallel processors (MPPs) and the widespread use of distributed computing, in essence with ubiquitous, grid and cluster computing [1]. According to our proposed system all the devices will just contain I/O functionalities and little processing capability for holding a local manager which will communicate with a device specific virtual machine residing in the computing grid. Device/User specific local manager will pass the inputs and other user specific parameters to the relevant Virtual Machine and will receive the result returned by the grid. The computing grid would allocate resources to the user devices based upon their type. The Processing Element will be handled separately and new Processing Elements can be added dynamically. But sometimes the selected resource could be overloaded by newly submitted higher priority jobs and in the worse case, it can go down partially or completely due to some hardware or software failures and these situations should be resolved by the Grid middleware by process migration. In order to provide this capability special techniques are necessary to save the total memory image of the target process and to reconstruct it. This technique is called checkpointing. During checkpointing a tool suspends the execution of the process, collects all those internal status information necessary for resumption and halts the process. Later it resumes the process and all the collected information is restored for the process to continue its execution without any modification. And this whole procedure is followed to balance the overall load of a particular resource. In the next few sections we discuss the following topics: II. The Idea Behind the proposal, III.Basic Architecture, working principle and algorithms and IV. Conclusion. II. THE IDEA BEHIND An important aspect of executing a parallel program in the Grid is job migration. The Grid is an inherently dynamic and error prone execution environment. The optimal selection of a Grid resource for a particular job does not mean that the selected resource remains optimal for the whole execution of the job. The selected resource could be overloaded by newly submitted