Sunteți pe pagina 1din 8

Mobile Cloud Based Compiler with Security Approach

Mr. Shakir Zaman Mr. Tanzeel Sultan Rana


Department of Computer Science Department of Computer Science
Lahore Garrison University Lahore Garrison University

Mr. Zain Ali Raza Mr. Hamza Awais


Department of Computer Science Department of Computer Science
Lahore Garrison University Lahore Garrison University

Mr. Zeeshan Haider


Department of Computer Science
Lahore Garrison University
Abstract:
Now a days, mobile is momentous necessity of everyone. But mobile phones should be able
to allow access to the network with as minimum management efforts as possible. Internet of things are
one of the main growing phenomenon now-a-days. So due to the enormous need of using the internet
why don’t we create a software online compiler? The solution to this problem is to compile and debug
the program not on the local machine but on a server online. Compilers such as C++ compiler using
Android application which decreases the problem of portability and storage space by making the use of
Android application and centralized C# compiler using mobile application are the best medium to
compile the code online and remove errors. With online service, there is no need to install the compiler
on local machine to execute the source code, as it saves many resources.

Contents
Abstract: ........................................................................................................................................................ 2
Introduction: ................................................................................................................................................. 3
Related Work: ............................................................................................................................................... 3
Research Method: ......................................................................................................................................... 4
Proposed Improvements: ............................................................................................................................. 4
Results: .......................................................................................................................................................... 6
Summary and Conclusions: ........................................................................................................................... 7
References: ................................................................................................................................................... 7
Introduction:
The idea of this project is to introduce a compiling plug-in for mobile based cloud
environment. It can be very helpful for the students to be able to compile and execute their programs
through the mobile so that they can increase their programming skills rather than just spending hours
on getting in a position to know how to operate those new IDE’s running different programming
languages.

Error checking and diagnostics in compilation will also be one of the major focus of this
system. It will show the log information to better understand and detect the errors. When we compile a
java program a time statistic will be produced and stored in a database. This time statistic will be helpful
for the teachers in a school to verify about when their students have compiled a source code. We will
discuss the technologies and JAVA APIs related to the online compilation process and security problems
related to servers and their resolutions. Also about the expected outcomes and future work
opportunities will be discussed as well. Cloud computing is considered as cost-efficient now-a-days. It is
a model computing model. Hence, this system can be referred to as a multi-tenant cloud application.

Related Work:
Sivakumar Kuppusamya [6], a framework for Native Multi-Tenancy Application
Development and Management Multi-tenure innovation is one of the key attributes for system
conveyance administrations to accomplish higher net revenue by utilizing the financial of scale. We will
discuss the necessities and difficulties of the local multi-tenure example that can serve large number of
customers, simultaneously.

R.Biddle, S.Chiasson et al [2], in ordinary content based secret word plans, clients commonly pick
passwords that are difficult to review, display designs and are vulnerable to lexicon assaults. Graphical
passwords are also the victim of lexicon assaults.

Arjun Dattal [5], the cloud model could be implemented in scenario where a large number of users will
need to compile their programs and outlook the output in minimal time. An example of such scenario is
online coding contest where the contestants need to submit their programs to a central server for
estimate. The number of backend compiler servers could be adjusted according to the expected number
of users of the system.

Research Method:
Cloud Computing:
Over the internet, the cloud computing reveals a remarkable potential to provide on-demand
services to consumers with great flexibility in a cost effective manner. While moving towards the
concept of on-demand service, resource pooling, shifting everything on the distributive environment,
security is the major obstacle.

Proposed Improvements:
System Architecture:
In the proposed system architecture there are three modules which are:

 Admin Module
 Cloud Server
 User Module
1. Admin Module:
a) User Management:
I. Manages user related data.
II. Username and password
III. How many users uses which type of compiler
IV. Validate users
b) Report Management:
I. Manages different types of reports.
II. Audit reports.
III. Tracking reports.
IV. Maintains records of which compiler is most used by a particular user.
c) Group Management:
I. Manages group related information.
II. Maintains size of the group.
III. Keeps track of which user exist in which group.
2. Cloud server:

Compilers are hosted on to the cloud server to provide cross platform compilation of
source code written in java, C# or C++ etc. Database that is connected with the cloud server is only
used to maintain the record of each attempt made by the client to compile the code.

3. User module:

Users are the clients which can be operating on any mobile operating system such as
android, IOS or Symbian. A client can upload his source code in any programming language to the
cloud server which is then later compiled and processed to execute the source code into the final
and output on any mobile phone.

Working of System:

The interface of this system would be very much user-friendly. First of all, a user or a
client will select any programming language from a list of all the available programming languages
like, C#, python, Visual Basic or JAVA etc. and will write the source code on the editor or simply
can copy or paste from the available source which they want to examine. There will be a compile
button at the bottom of the editor which if fired will wrap the program file into JSON object. After
this, the program will be sent in JSON string format to the server program request the device.
After that, this program will be saved on the cloud server and provides the program ID on user
mobile. A java application is stored onto the server which will recognize the program file in JSON
format, then it will retrieve the required data and make two files one for program code and other
for its particular input file. Then the program file with its respective input file is compile on minGW
compiler and the output is store in a file. If the program contains errors then these errors are
wrapped in JSON layout and conveyed back to the device in JSON string format. If it does not
contain any error then a message called “Compiled Successfully” is called. After that the user will
click on the execute button and the source code is executed on the cloud server and the result
again is wrapped into JSON string format and the respective result is displayed on the mobile
phone.

Results:

The main advantage of this mobile cloud based compiler is that we do not need to
download the SDK of any compiler. There are no issues for graphical interface inefficiencies,
elegant and simple GUI for better code understanding. The main issue is the requirement of an
internet connection which is a drawback in some sense.

Summary and Conclusions:

The proposed system is Native, which means that it will support any programming
language of your choice but those languages which are most recently used now-a-days in an
advanced programming environment. To compile any source code, we don’t need to install
different compilers for different languages. It consumes more time and more resources as well. It
is efficient and saves one time more being spent on computers and installing compilers. This
system or application is helpful for teachers, students, programmers or developers.

References:

[1] Bin B. Zhu, Jeff Yan, Guanbo Bao, Maowei Yang, and Ning Xu_, “Captcha as
Graphical Passwords—A New Security Primitive Based on Hard AI Problems”
IEEE Transactions on Information Forensics and Security, VOL. 9, NO. 6, IEEE JUNE 2014

[2] R. Biddle, S. Chiasson, and P. C. van Oorschot, “Graphical passwords: Learning from the
first twelve years,” ACM Comput. Surveys, vol. 44, no. 4, 2012

[3] Sivakumar Kuppusamya, Vivekanandan Kaniappanb and Devi Thirupathic,” Design and
Development of Multi-Tenant Web Framework”.

[4] Mahendra Mehra, Kailas.k.Devadkar, Dhananjay Kalbande “Mobile-Cloud-based-Compiler-A-


Novel-Framework-For-Academia”Paper 2013”

[5] Arjun Dattal, Amab Kumar Paue, “Online Compiler as a Cloud Service”.

[6] Online Java Compiler Using Cloud Computing - International Journal of Innovative Technology and
Exploring Engineering (IJITEE) ISSN: 2278-3075,
Volume-2, Issue-2, January, 2013 116

[7] “Cloud Compiler Based on Android” Vijay R. Sonawane1, Guruprasad S. Iyer2, Dilip K.
Jaiswal
Appendix/Index terms:

 Multi-tenant Cloud Application


Multi-tenancy is an architecture in which a single instance of a software application servers
multiple customers. Each customer is called tenant. While the application based on this
architecture is called Multi-tenant Cloud Application.

 Lexicon
In general, a lexicon is a group of words that make up a language.

 JSON
JSON (JavaScript Object Notation) is a text-based, human-readable data interchange format
used to representing simple data structures and objects in web-browser-based code.

S-ar putea să vă placă și