0% found this document useful (0 votes)
9 views12 pages

Cloud Computing Report

The lab report details three experiments related to cloud computing and virtualization. It covers the study of cloud architecture, the installation of VirtualBox/VMware for running multiple operating systems, and a Java program demonstrating multithreading. Each section includes aims, theoretical background, procedures, and conclusions highlighting the importance of these technologies in modern computing.

Uploaded by

jayanta.n426
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views12 pages

Cloud Computing Report

The lab report details three experiments related to cloud computing and virtualization. It covers the study of cloud architecture, the installation of VirtualBox/VMware for running multiple operating systems, and a Java program demonstrating multithreading. Each section includes aims, theoretical background, procedures, and conclusions highlighting the importance of these technologies in modern computing.

Uploaded by

jayanta.n426
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Tribhuvan University

Institute of Science & Technology


Prithivi Narayan Campus, Pokhara

Lab Report
On
Introduction to Cloud Computing (CSC467)

Submitted To:
Tara Bahadur Thapa
BSc. CSIT Program

Submitted By;
Bimal Pariyar
(30027/078)
BSc. CSIT Program
Index

S.N Experiment Name Submitted Signature


On

Lab.1 Study of Cloud Computing & Architecture

Lab.2 Install Virtualbox/VMware Workstation with


different flavours of linux or windows OS on
top of windows
Lab.3 WAP in java that implements multi threading.
Lab 1: Study of Cloud Computing & Architecture
Aim:
To study cloud architecture and cloud computing model.
Theory:
Cloud computing is a technology that provides computing services such as servers,
storage, databases, networking, software, and analytics over the internet (cloud). It
allows users to access and use computing resources on demand without owning or
maintaining physical infrastructure. Cloud computing offers scalability, flexibility,
cost-efficiency, and high availability.
The five essential characteristics of cloud computing are:
1. On-demand self-service - a consumer can unilaterally provision computing
capabilities as needed without requiring human interaction with service
providers
2. Broad network access - capabilities are available over the network and
accessed through standard mechanisms
3. Resource pooling - the provider’s computing resources are pooled to serve
multiple consumers using a multi-tenant model
4. Rapid elasticity - capabilities can be elastically provisioned and released to
scale rapidly outward and inward
5. Measured service - cloud systems automatically control and optimize resource
use by leveraging a metering capability

The cloud computing model is generally categorized into three service models:
Infrastructure as a Service (IaaS):
Provides virtualized computing resources such as virtual machines, storage, and
networks. Examples include Amazon EC2 and Microsoft Azure Virtual Machines.
Platform as a Service (PaaS):
Provides a platform allowing developers to build, test, and deploy applications
without worrying about underlying hardware and software. Examples include Google
App Engine and Heroku.
Software as a Service (SaaS):
Delivers software applications over the internet on a subscription basis. Examples
include Gmail, Google Docs, and Microsoft Office 365.
Cloud architecture refers to the structure of cloud components, including front-end
platforms (client devices, browsers, and applications) and back-end platforms (servers,
storage, virtual machines, and databases). These components communicate over the
internet using standard protocols. Cloud architecture ensures scalability, reliability,
security, and efficient resource management.

Conclusion:
In this experiment, we studied cloud computing concepts, service models, and cloud
architecture. We understood how cloud computing enables on-demand access to
computing resources and how cloud architecture supports scalability, reliability, and
cost efficiency. This study provides a strong foundation for understanding modern
distributed computing systems.
Lab 2: Install Virtualbox/VMware Workstation with
different flavours of linux or windows OS on top of windows
Aim:
To Install Virtualbox / VMware Workstation with different flavours of linux or
windows OS on top of windows7 or 8.
Theory:
Virtualization is the process of creating a software-based (virtual) version of
something, including virtual computer hardware platforms, storage devices, and
computer network resources. A hypervisor (also known as a Virtual Machine Monitor
or VMM) is software that creates and runs virtual machines (VMs). It allows one host
computer to support multiple guest VMs by virtually sharing its hardware resources
such as memory and processing.

There are two types of hypervisors:


Type 1 (bare-metal) which runs directly on the host’s hardware, and Type 2 (hosted)
which runs on a conventional operating system. VirtualBox and VMware Workstation
are examples of Type 2 hypervisors.
Oracle VirtualBox is a free and open-source hosted hypervisor for x86 virtualization,
developed by Oracle Corporation. It supports a variety of guest operating systems
including Linux distributions (Ubuntu, Fedora, CentOS), Windows (XP, 7, 8, 10), and
others. VMware Workstation is a commercial hosted hypervisor that also allows users
to run multiple operating systems simultaneously. Both tools are commonly used in
cloud computing environments for testing, development, and learning purposes. In
this lab, VirtualBox is used to demonstrate the installation of a virtual machine on a
Windows host operating system.

PROCEDURE:
Steps to install Virtual Box:
1. Download the Virtual box exe and click the exe file and select next button.
2. Click the next button.

3. Click the next button


4. Click the YES button.

5. Click the install button.


6. Then installation was completed..the show virtual box icon on desktop screen.

Conclusion:
In this experiment, VirtualBox/VMware Workstation was successfully installed on the
Windows operating system. Different flavors of Linux and Windows operating
systems were installed and executed as virtual machines. This helped in understanding
the concept of virtualization and how multiple operating systems can run
simultaneously on a single physical machine. The experiment provided practical
knowledge of creating, configuring, and managing virtual machines, which is
essential for cloud computing, software testing, and system administration.
Lab 3: WAP in java that implements multi threading.
Aim:
To write a Java program to implement multithreading using Thread class and
Runnable interface.

Theory:
Multithreading in Java is a process of executing multiple threads simultaneously. A
thread is a lightweight sub-process that represents a separate path of execution within
a program. Java supports multithreading through its [Link] class and the
[Link] interface. Multithreading allows a program to perform multiple
operations concurrently, making optimal use of CPU resources and improving
application performance.
In Java, a thread can be created in two ways:
• By extending the Thread class
In this method, a new class extends the Thread class and overrides the run()
method.

• By implementing the Runnable interface


In this method, a class implements the Runnable interface and defines the run()
method. A Thread object is created using this Runnable instance.

The Thread class provides constructors and methods to create and perform operations
on a thread.
The life cycle of a thread includes five states: New, Runnable, Running,
Blocked/Waiting, and Terminated.
Key methods include start(), run(), sleep(), wait(), notify(), and join().

Advantages of multithreading:
It allows parallel execution of program parts, improves performance on multi-core
processors, enables responsive user interfaces, and facilitates efficient resource
utilization. Synchronization is an important concept in multithreading that controls
access to shared resources to prevent thread interference and memory consistency
errors.
Program:
Java Program to implement Multithreading
// Method 1: Extending Thread class
class MyThread extends Thread {
private String threadName;

MyThread(String name) {
[Link] = name;
}

public void run() {


for (int i = 1; i <= 5; i++) {
[Link](threadName + " - Count: " + i);
try {
[Link](500);
} catch (InterruptedException e) {
[Link]();
}
}
[Link](threadName + " finished execution.");
}
}

// Method 2: Implementing Runnable interface


class RunnableThread implements Runnable {
private String name;

RunnableThread(String name) {
[Link] = name;
}

public void run() {


for (int i = 1; i <= 5; i++) {
[Link](name + " - Iteration: " + i);
try {
[Link](300);
} catch (InterruptedException e) {
[Link]();
}
}
}
}

public class MultiThreadDemo {


public static void main(String[] args) {

// Creating threads using Thread class


MyThread t1 = new MyThread("Thread-1");
MyThread t2 = new MyThread("Thread-2");

// Creating thread using Runnable interface


Thread t3 = new Thread(new RunnableThread("Thread-3"));

[Link]("Starting all threads...");

[Link]();
[Link]();
[Link]();

[Link]("Main thread ends.");


}
}
Output:

Conclusion:
Thus, we have successfully written and executed a Java program that implements
multithreading using both the Thread class and the Runnable interface. The program
demonstrates that multiple threads can run concurrently, each performing its task
independently. Multithreading in Java allows efficient CPU utilization, faster
execution of programs, and the ability to perform multiple tasks simultaneously,
which is especially important in cloud-based and distributed computing applications.

You might also like