Giter Site home page Giter Site logo

self-projects's Introduction

Assignment 2: Building a VM Autoscaler.

Dependencies

  • libgtkmm3.0
  • libgtk3
  • libcairo2
  • libcairomm
  • libpango
  • libpangocairo
  • libglibmm-2.4
  • libvirt

Directory Structure

The src directory cntains the source code for the client, server and vm manager in their respective folders.

The build-release folder contains the executables and build files for the corresponding client, server and vm manager in thier respective folders.

The testcases folder contains a script to generate input that can be fed to the Client.

193059004
├── Readme.md
├── src
│   ├── client
│   │   ├── Client.cpp
│   │   ├── CMakeLists.txt
│   │   └── KVClientLibrary.cpp
│   ├── server
│   │   ├── Server.cpp
│   │   ├── KVStore.cpp
│   │   ├── KVCache.cpp
│   │   └── ThreadPool.cpp
│   │   ├── KVClientHandler.cpp
│   │   ├── KVServerLibrary.cpp
│   │   ├── CMakeLists.txt
│   └── VMManager
│       ├── main.cpp
│       ├── VM.h
│       ├── VM.cpp
│       ├── Graph.h
│       ├── Graph.cpp
│       ├── Manager.h
│       ├── Manager.cpp
│       └── VmManager.h
│       ├── VmManager.cpp
│       ├── CMakeLists.txt
├── testcases
│   ├── input0.csv
│   └── testcase_generator.py
└── build-release
    ├── client
    │   └── ...
    ├── manager
    │   └── ...
    └── server
        └── ...

Compilation Instructions

This project has been build using cmake build system, which can be installed on Ubuntu using,

	sudo apt-get install cmake

In order to build the project, cd into the server , client or manager directory under build-release directory,correspondingly whichever needs to be built.

Empty the build directory if compiling on a new machine for the first time. For example, if manager needs to be built, the build directory for manager which is 193059004/build-release/manager, first remove the contents of this directory using, rm -rf 193059004/build-release/manager/.

Once the build folder is cleaned up cd into it and type,

	cmake <path to source directory>

This will create all the necessary make files, required to build the executable from the source files. The, just run make to build the executable.

For example,

cd 193059004/build-release/manager
rm -rf .
cmake ../../src/VMManager
make

This will build the executable for Manager.

Alternatively, the executable for the corresponding source, the executable will already be present in the corresponding build directory.

self-projects's People

Contributors

prantosky avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.