Giter Site home page Giter Site logo

distributedsystems-p1's Introduction

Browser - Distributed Systems First Project

About

This project was written in C++ and was used Linux socket libraries including the core lirary linux/ip.h.

How to compile

In order to get easier to compile a MAkefile was added, so to compile, just run make

After that a file named browser will be generated. Just run it

user:~/DistributesSystems-P1$ make
user:~/DistributesSystems-P1$ ls
browser Browser.hpp main.cpp Protocol.cpp Protocol.o Tab.cpp Tab.o Browser.cpp Browser.o Makefile Protocol.hpp README.md Tab.hpp
user:~/DistributesSystems-P1$ sudo ./browser

Idea Behind this implementation

For this application, we managed to create our own protocol for security purposes, simulating a real life event (if a personal protocol is implemented, not following standards, is more difficult to get and forge a packet). Security was not the main focus of this project, since it was to learn better thread functionality in the language used.

The main Browser waits for commands and send orders to Tabs, using our own Packet definition. Tabs makes whatever is written inside the package, including manage time they have to execute an instruction.

The main browser can limit the memory usage, forbiding new tabs to open but not closing existing tabs.

The user is the most important part of this application, so he has it in his hands, that's why setting a memory lower than the existing doesn't make a memory reduce, some tabs might be processing sensitive data, and the user might not want to kill those.

How to use

This application has a help command to get easier for user to interact with it

distributedsystems-p1's People

Contributors

dalmirante avatar

Watchers

James Cloos 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.