Java Remote Control for Laboratory Monitoring

Published on February 2017 | Categories: Documents | Downloads: 43 | Comments: 0 | Views: 295
of 7
Download PDF   Embed   Report

Comments

Content


International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 5, Issue 9, September (2014), pp. 98-104 © IAEME
98











JAVA REMOTE CONTROL FOR LABORATORY MONITORING


Akshay Shinde
1
, Akash Malbari
2
, Manali Killedar
3

1, 2
(Technical Analyst, Nomura Services India Pvt. Ltd.,)
3
(Department of Information Technology, Ramrao Adik Institute of Technology)



ABSTRACT

The proposed system of ‘Java Remote Control for Laboratory Monitoring’ is an optimized
and automated software model that is used as a remote control for PC's connected as a Local Area
Network. This software is used to control varied resources and processes running on the remote
computer. The test implications of this technology suggest that a technology supporting remote
control for computers connected over Local Area Network can add value for all its end users
primarily serving the computer laboratory assistants and teachers.

Keywords: Java Remote Control, RMI, Skeleton.

1. INTRODUCTION

We have seen many places where we have local area network and lots of people using them
as per their own need. In such scenarios we need to closely monitor the computers. Many a times we
need to lock the resources such as computer drivers, folder or files from these computers to restrict
the users from making use of them. Sometimes we need to stop the users from using the internet or
from the changing the settings or accessing the registry editor so as to secure the system from any
crash due to the misuse of it. These are the common tasks that we need to do in our day to day life
but for this we do not have any utility software, with this system we can serve us to achieve all these
needs.

2. EXISTING SYSTEM

Studies show that the lab assistants had to follow the method of locking the machine
manually as well as individually, so as to prevent the users from accessing the authorized
information. Go on the individual machine and lock the resources as there was no particular remote
INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING &
TECHNOLOGY (IJCET)



ISSN 0976 – 6367(Print)
ISSN 0976 – 6375(Online)
Volume 5, Issue 9, September (2014), pp. 98-104
© IAEME: www.iaeme.com/IJCET.asp
Journal Impact Factor (2014): 8.5328 (Calculated by GISI)
www.jifactor.com

IJCET
© I A E M E
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 5, Issue 9, September (2014), pp. 98-104 © IAEME
99

server. Also concepts like windows group management system called as RDP (remote desktop
connection), Teamviewer were used.

2.1. Working
Systems designed previously using this concept like RDP(remote desktop connection) that
gives the ability to remotely connect to a computer/PC in network. After successful connection we
can control the PC as if it’s our PC and we are controlling it with our keyboard and Mouse.
Another example is software called Teamviewer.Teamviewer needs to have the software
running on both the controlling machine and the machine being controlled, making it less convenient
to operate and inefficient.

2.2. Drawbacks of Existing System

1. RDP needs the client and server systems to be connected in order to control the resources and
to lock/unlock them. This approach is inefficient in terms of power consumption as it requires
more processing power to be spent on both client and server machines.

2. The major disadvantage of the using Teamviewer is that this approach needs the software to
be running on both the machines all the time.

Thus this application aims to design such a system that even a layman will be able to access
and control the resources on remote pc and be more efficient in resource consumption at the same
time.

3. PROPOSED SYSTEM

This paper implements a Java Runtime Environment (JRE) which features two virtual
machines one called client and the other server. The client version is tuned for quick loading, it
makes use of interpretations. The server version loads more slowly, putting more efforts into
producing highly optimized Just-In-Time (JIT) compilations that yields higher performance.

3.1. Working
Java is used a programming language since it's a simple programming language, Object
oriented throughout - no coding outside of the class definitions including the main(), An extensive
class library available in the core language packages, A program runs inside the virtual machine
sandbox, security manager- determines what resources a class can access such as reading and writing
to a local disk, Lightweight processes, called threads can easily be spun off to perform
multiprocessing, Java program can be moved from one computer system to another, anywhere,
anytime. Once connected in LAN one can make such a provision in Java that the user screen that is
designed using java swings could appear on the server machine or appear from where it is getting
connected to so that the server could get to know which resources are accessed by the user. The
entire structure of the project is based on RMI (remote method invocation) architecture.

3.1.1. Architecture using Java
RMI applications often comprise two separate programs, a server and a client. A typical
server program creates some remote objects, makes references to these objects accessible, and waits
for clients to invoke methods on these objects. A typical client program obtains a remote reference to
one or more remote objects on a server and then invokes methods on them. RMI provides the
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 5, Issue 9, September (2014), pp. 98-104 © IAEME
100

mechanism by which the server and the client communicate and pass information back and forth.
Such an application is sometimes referred to as a distributed object application.
Distributed object applications need to do the following:

1. Locate remote objects. Applications can use various mechanisms to obtain references to
remote objects. For example, an application can register its remote objects with RMI's simple
naming facility, the RMI registry. Alternatively, an application can pass and return remote
object references as part of other remote invocations.

2. Communicate with remote objects. Details of communication between remote objects are
handled by RMI. To the programmer, remote communication looks similar to regular Java
method invocations.

As the application is divided into different modules where all the modules are basically RMI
functions or methods which provides various functionalities as locking and unlocking the USB,
managing the files on remote pc etc as discussed in the basic aim of the project. For this purpose
studying the sample and basic programs on RMI was necessary. Various small programs like the
‘Hello World’ programs were studies just to understand how RMI works. Mapping of modules were
done to the RMI code and how RMI is going to be implemented was studied.

• Defining the remote interfaces. A remote interface specifies the methods that can be invoked
remotely by a client. Clients program to remote interfaces, not to the implementation classes
of those interfaces. The design of such interfaces includes the determination of the types of
objects that will be used as the parameters and return values for these methods. If any of these
interfaces or classes does not yet exist, you need to define them as well.

• Implementing the remote objects. Remote objects must implement one or more remote
interfaces. The remote object class may include implementations of other interfaces and
methods that are available only locally. If any local classes are to be used for parameters or
return values of any of these methods, they must be implemented as well.

• Implementing the clients. Clients that use remote objects can be implemented at any time
after the remote interfaces are defined, including after the remote objects have been deployed.

Compiling of RMI programs required a research as the client server architecture is a naïve
architecture and required logins on the same machine. The sample programs were compiled and
tested (Not the actual methods) in order to check the working of client and server. The concept of
how the client actually looks up the registry to check the validity of modules. This falls under the
domain of Skeleton How the modules are mapped to the registry so that all methods stay in it without
the use of any database and the client then looks up the registry. The major focus has been the back
end as the RMI coding is complicated and requires a lot of learning and understanding. The UI is to
be designed using Java swings in Netbeans which is nothing but creating the front end to basically
ease the functionality of our Client server architecture.

3.1.2. Functional Overview
The functional working of the system is depicted in the Fig.3.1.2.1. given below :
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 5, Issue 9, September (2014), pp. 98-104 © IAEME
101

Fig. 3.1.2.1. Flow diagram


3.2. System Requirements
• Software Requirement (Development):
Language: JDK2 Version 1.4
IDE: Eclipse/JCreator
GUI: SWING
OS: Windows

• Software Requirement (Users):
Environment: JRE 1.4

As JRE features two virtual machines, one called Client and the other Server. The Client
version is tuned for quick loading. It makes use of interpretation. The Server version loads more
slowly, putting more effort into producing highly optimized JIT compilations that yield higher
performance. Both VMs compile only often-run methods, using a configurable invocation-count-
threshold to decide which methods to compile (M.A Hamilton 1996, C. Schmid 1999).

• Hardware Requirement (For Development and users):
CPU (Pentium III onwards) Recommended P4 Platform PCs.
VDU (Monitor)
Standard Keyboard and Mouse
RAM 128 MB Minimum Recommended 512 MB


Admin
Authentication
client machine
File
Registration /
Login
Receive configuration
Successful client process
Kill/Lock.etc.
Store
IP address
Client machine
details/
IP address
Client
Perform operation
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 5, Issue 9, September (2014), pp. 98-104 © IAEME
102

3.3. Advantages
This system is preferable to the existing systems because of clear advantages stated below:

• Using the proposed system you do not have to connect to the machine but still can control its
resources to lock or unlock them. This way it saves the processing power of both the server
and the client computers, thus speeding up the processes.

• Major distinguishing point between this system and the existing ones is that, this software
need not be running on both the systems. Only the computer that will be controlling the
remote computer needs to have this running unlike Teamviewer where both the
counterparties need to have the software running, Thus this application aims to design such a
system that even a layman will be able to access and control the resources on remote pc.

4. EXPERIMENTAL RESULTS

The automated software system that is used as a remote control for PC's was used to conduct
a trial in a particular college at the university of Mumbai where the lab assistant was assigned a
central location and the students were given systems distributed across the computer laboratory. The
application was installed on the lab assistant’s system and all the systems belonging to the students
were connected in LAN with the lab assistants PC. The application had the IP addressed of all the
systems registered with it. Everyone were asked to carry out their day to day work on the system. In
some time one of the systems in the LAN was found to be in hung state due to some heavy processes
running on it. The Lab assistant connected to that system using the application and managed to kill
the heavy process which was causing the blocking.
In case II there was an ad-hoc task of installing a particular application across all the systems
of the laboratory. The only requirement here was to have the setup file of that application on the
Computer of the lab assistant and he could setup the application on all the systems of the laboratory
using the remote control application.
In the last test performed as it was the exam time in the college there was a task for the lab
assistant to lock all the input drives and block all the networks on each and every system of the
laboratory but using the remote control application he could block all the driver processes on the
remote systems located in the laboratory and hence furnish his task.


Fig. 4.1 Login Form

International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 5, Issue 9, September (2014), pp. 98-104 © IAEME
103



Fig. 4.2: Execution of UI




Fig 4.3: Connecting to Remote Client


International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 5, Issue 9, September (2014), pp. 98-104 © IAEME
104



Fig. 4.4: Sample Operation (Killing Process from Remote Client)


5. CONCLUSION

This system is user friendly and provides great efficiency in parallel with manpower. This
will provide direct or indirect benefits to the organization. It is of immense help to grab the modem
pace of automation and this software will provide easy mean for it. The software can be used on
internet system. Drives/Folders/Files and Applications can be locked over internet systems.To
conclude with the application build is extremely easy to operate where the lab assistant need not have
any technical knowledge to run it. The simple GUI and architecture assists the lab assistant to carry
out his day to day task in a timely and efficient manner.

6. REFERENCES

[1] Kim Topley, “core swing”, 5
th
ed., McGraw-Hill, New York, 2004.
[2] M.A Hamilton, “Java and the shift to net-centric computing,” IEEE computer, vol. 29, no. 8,
pp. 31-39, 1996.
[3] C. Schmid “A remote laboratory using virtual reality on the web”, simulation, vol. 73, no. 1,
pp. 13-21, 1999.
[4] www.javaworld.com
[5] www.sun.com/books/java_series.html
[6] www.java.sun.com/javase/technologies/core/basic/rmi/index.jsp
[7] www.java.sun.com/j2se/1.5.0/docs/guide/jni/
[8] www.ibm.com/developerworks/edu/j-dw-javajni-i.html
[9] www.disordered.org/Java-At-One.html

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close