Tuesday 17 December 2013

Implementing SAAS: Cloud Computing and Android Based Application Framework for C Programming

Implementing SAAS: Cloud Computing and Android Based Application Framework for C Programming

Abstract : Under The National Mission on Education through Information and Communication Technology (NMEICT) a lot of e-learning material, applications and other useful information have been made available on its web portal. MHRD has also taken initiatives for the dissemination of this knowledge by distributing Aakash Tablets to the students at free of cost. While all these developments have enabled students to access the contents and use some applications available on the NMEICT Sakshat web portal, there is still a dearth for real computing applications/ facilities i.e. those which can enable them to run C/ Java/Matlab programs on their mobile devices or Notebooks. So, the desideratum of thispaperis to scrutinize and develop the cloud based application for C program creation, compilation and execution on lean mobile computing devices. This application accredit various users to access the various education material on the web and also assist them to performcomputation on computing machines. Setup a server and deploy the application on the cloud to test it across the range of different devices. So,with the help of this android application user can do their work anytime and anywhere. In this paper implementation of SAAS is done by using java as an front end. Keywords: SAAS, Cloud Computing, Android, Java, C Compiler.
1.Introduction 
Cloud Computing is a general term used to describe a new class of ntwork based computing that takes place over the Internet, basically a step on form utility. By using the internet and central remote services cloud computing maintains the data, applications etc which offers much more efficient computing by centralizing storage, memory, processing bandwidth and so on. It can also concentrate on all computational resources and manage automatically through the software without intervenes. Under the National Mission on Education through Information and Communication Technology (NMEICT), a lot of e learning material and commodious information is attainable through its web portal, but still a dearth for real computing facilities or application i.e which can enable them to run C/Java/ Matlab programs on their mobile devices. Bringing in light the other term „Android‟ has been an instant hit and enticing for bountiful users. A multiform applications have been developed but very slender cater the need of the students. During, the course of this project, a review has been done on the concept of mobile and cloud computing, working environment and architecture of cloud computing and android application development. In this paper , I implemented the concept of SAAS by creating, compiling and executing C program on the cloud using devices like smart phones, ipads and notebooks.
2.Cloud Computing
In contemporary years Cloud Computing has been assiduously analyzed by the government i. Japan strategy[3], the clique of the Ministry of Internal affairs and Communications[4]. In addition to this, different prominent companies are using cloud services, like Windows Azure[5], Google Apps[6], Amazon[7]. People over the globe came up with numerous definition of cloud computing. Different companies have different perspective, for example companies like IBM considers that cloud computing is a cutting edge of IT resources whereas on the other hand Google affirm that cloud computing is service based, paramount, commodious data depository application. So, above all the definitions of cloud computing, the crucial working principle is that it is a parallel and distributed processing model, which convey IT as a service. The core structure of Cloud computing comprises of several computer servers which are named as “clouds”. All the assests are collected together in order to form a centric data storage and data processing center. As various resources are gathered diverse configuration tools are needed to stanchion the “cloud ” side of software management. As the client acknowledge the data request to the server, the request is being processed and finally search resultys return. But, it is exigent to actualize the measurement and monitoring, to accomplish the quality of service and burgeoning of efficient resource allocation and efficiency of resource.
3.SAAS(Software As A Service) Model
Saas (Software as a service) is a cloud software distribution model, which is basically designed for web applications in which user can unfold and avenue internet hosting. The providers of SAAS are required to build information for operating system platform, hardware infrastructure and software. SAAS is also authoritative to implement services like post maintanence and some other services. SAAS not only pauperize the cost of software licsense also impoverish the demand of network security devices, software maintanence and software upgrade. The user only need to have a Internet connection and personal computer to use the reqquired service and software[8]. Some of the examples are CRM finanacial planning, human resources, word processing, commercial services, email cloud etc. CRM is an example of SAAS provider.

4.Android Operating System
Android is a software stack for mobile devices that includes an operating system, middleware and key applications. The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language. Application framework defined the common structure of programs in the specific domain. Essentially, a framework is a component that can be reused, it set the architecture of applications and incorporated as a set of abstract classes and the cooperation of their instances. Android is an open source operating system based on Linux kernel and launched by Google. Unlike PC operating system, mobile phone operating systems are constrained by their hardware, storage space, power dissipation and mobility conditions. Compared with the development of applications on PC, there are some different features of applications on mobile phone operating systems[12][13].
Implementing SAAS: Cloud Computing And Android Based Application Frameworkfor C
Android is a comprehensive operating environment that based on Linux® V2.6 kernel, it is also a layered system.
The Android Application includes:
  •  A prosperous and protracible set of views that can be used to develop an application with alluring user blend inclusive of gridd, buttons, lists, boxes, embedded web browsers and buttons.
  •  A set of content providers that endow application to fetch data from other application or allowing them to segment their own data.
  •  A resource manager that accommodate admittance to non code materials like layput files, graphics and localized strings.
  • A notification manager tha enables all applications to display custom alerts in the status bar.
  •  Library layer consist of set of C/C++ libraries used by various components of Android to support the application framework
  •  Android Runtime compromises of set of core libraries and Java Virtual Machine.[11]
  •  Linux Kernel act as an intermediate between the hardware and software part. It is responsible for services likenetwork stack, security, process management, driver model and memory management.
5.Cloud C Compiler
The complier for C programming language is known as the C complier, whereas Cloud C compiler compiles the program which are run with the help of Cloud computing. The primary function of complier is to reform one code into the other like translator.Compiler work by taking the c program code and compile it into assembler, which is then assembled into bitcode which is the only language that the CPU understands.Developmentof C Compiler for mobile devices or notebooks is a very complex task. So I developed a Cloud C Compiler through which the C programs can be created, compiled and executed using the internet. It is recommended that the GCC/C Libraries are installed on the server.I used the JSP and Servlets for Server side programming and used Android SDK for developing an android application which communicate with the server and then create , compile & execute the C program.
6.Tools Used
  • Android SDK
  •  JDK & Java Runtime environment 6
  •  Xml Editor
  • Eclipse
  •  ADT plugin
  •  Apache Tomcat server
  •  GCC Compiler

7.Working Of Cloud C Complier
8.Result on Local Host

On Android Emulator:

9.Conclusion
Cloud computing is an emerging field which provides computation, software, data access, and storage services that do not require end-user knowledge of the physical location and configuration of the system that
delivers the services. Cloud Computing is a general term used to describe a new class of network based computing that takes place over the Internet, basically a step on from utility. Currently, students only have facilities to access the contents and use some applications available on the NMEICT Sakshat web portal, but there is still a dearth for real computing applications/ facilities i.e. those which can enable them to run C/ Java/ Matlab programs on the cloud using their lean mobile devices. On the other hand Android has been an instant hit and is attracting lot of users. Though a numbers of applications are being developed very few cater to the needs of the student community. The objectives of this major project were to address the above issues. During course of the project I learnt the concepts of mobile and cloud computing, working environment and architecture of Cloud Computing, and android application development. Designed and developed a Cloud Computing Application for Java program creation, compilation and execution on the cloud using lean mobile computing systems like smart phones, ipads and netbooks. Through the project work I believe that, an application model can be created based on cloud computing by means of cloud computing‟s mass data storage, high-speed computing capabilities, as well as its ideal allocation and the sharing mode of resources.


0 comments:

Post a Comment